feishu.com
feishu.com logo

FeiShu

Integrates with the FeiShu (Lark) API to enable document, bot, and chat services through a modular TypeScript architectu...

Created byApr 22, 2025

MCP

  • API
  • ** **
  • ** **
  • ** **
  • ** ** - **STDIO ** / CLI - **HTTP ** REST API SSE Web
  • ** **
  • ** ** TypeScript
  • ** ** API

1.

  • ** Client **
  • ** Service **
  • ** Tools **

2.

3.

  • FeiShuApiError API
  1. MCP STDIO HTTP
  1. API
  1. MCP
  • Node.js 23.0
  • pnpm
  1. .env

STDIO

[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]

API

`get_feishu_doc_raw`

  • docId - ID URL ( feishu.cn/docx/<documentId>)

`get_feishu_doc_info`

  • docId - ID
  • JSON

`send_feishu_text_message`

  • chatId - ID
  • text -
  • ID

`send_feishu_card`

  • chatId - ID
  • cardContent - JSON
  • ID

`get_feishu_chat_info`

  • chatId - ID
  • JSON

`get_feishu_sheet_meta`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • JSON ID

`get_feishu_sheet_tables`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • pageSize - 20 100
  • pageToken -
  • JSON ID

`get_feishu_sheet_views`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • tableId - ID
  • pageSize - 20 100
  • pageToken -
  • JSON ID

`get_feishu_sheet_view`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • tableId - ID
  • viewId - ID
  • JSON ID

`get_feishu_sheet_records`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • tableId - ID
  • viewId - ID
  • fieldIds - ID
  • filter - FQL
  • sort - JSON
  • pageSize - 20 100
  • pageToken -
  • JSON ID

`get_feishu_sheet_record`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • tableId - ID
  • recordId - ID
  • fieldIds - ID
  • JSON ID
  • TypeScript
  • `any`
  • Record<string, unknown> object
  • feat(bot):
  • fix(documents):
  • feat:
  • fix: Bug
  • docs:
  • style:
  • refactor:
  • perf:
  • test:
  • chore:
  1. ** ** - `src/client/<feature>/` - `ApiClient` - API ```typescript // src/client/feature/feature-client.ts export class FeatureClient extends ApiClient { async getFeatureData(id: string): Promise<FeatureData> { return this.request<FeatureResponse>('/feature/get', { id }); } } ```
  1. ** ** - `src/services/<feature>/` - - ```typescript // src/services/feature/feature-service.ts export class FeatureService { private client: FeatureClient; constructor(config: ApiClientConfig) { this.client = new FeatureClient(config); } async getFeature(id: string): Promise<Feature> { try { const data = await this.client.getFeatureData(id); return this.transformData(data); } catch (error) { handleError(error); } } } ```
  1. ** ** - `src/services/index.ts` - `FeiShuServices`
  1. ** MCP **
  1. ** ** - `src/server/tools/index.ts`
** ** API

  • ID


MIT
  1. Fork
  1. `git checkout -b feature/amazing-feature`
  1. `git commit -m 'feat: add some amazing feature'`
  1. `git push origin feature/amazing-feature`
  1. Pull Request

PR

MCP

  • API
  • ** **
  • ** **
  • ** **
  • ** ** - **STDIO ** / CLI - **HTTP ** REST API SSE Web
  • ** **
  • ** ** TypeScript
  • ** ** API

1.

  • ** Client **
  • ** Service **
  • ** Tools **

2.

3.

  • FeiShuApiError API
  1. MCP STDIO HTTP
  1. API
  1. MCP
  • Node.js 23.0
  • pnpm
  1. .env

STDIO

[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]
[object Object]

API

`get_feishu_doc_raw`

  • docId - ID URL ( feishu.cn/docx/<documentId>)

`get_feishu_doc_info`

  • docId - ID
  • JSON

`send_feishu_text_message`

  • chatId - ID
  • text -
  • ID

`send_feishu_card`

  • chatId - ID
  • cardContent - JSON
  • ID

`get_feishu_chat_info`

  • chatId - ID
  • JSON

`get_feishu_sheet_meta`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • JSON ID

`get_feishu_sheet_tables`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • pageSize - 20 100
  • pageToken -
  • JSON ID

`get_feishu_sheet_views`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • tableId - ID
  • pageSize - 20 100
  • pageToken -
  • JSON ID

`get_feishu_sheet_view`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • tableId - ID
  • viewId - ID
  • JSON ID

`get_feishu_sheet_records`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • tableId - ID
  • viewId - ID
  • fieldIds - ID
  • filter - FQL
  • sort - JSON
  • pageSize - 20 100
  • pageToken -
  • JSON ID

`get_feishu_sheet_record`

  • appToken - ID URL ( feishu.cn/base/<appToken> feishu.cn/app/<appToken>)
  • tableId - ID
  • recordId - ID
  • fieldIds - ID
  • JSON ID
  • TypeScript
  • `any`
  • Record<string, unknown> object
  • feat(bot):
  • fix(documents):
  • feat:
  • fix: Bug
  • docs:
  • style:
  • refactor:
  • perf:
  • test:
  • chore:
  1. ** ** - `src/client/<feature>/` - `ApiClient` - API ```typescript // src/client/feature/feature-client.ts export class FeatureClient extends ApiClient { async getFeatureData(id: string): Promise<FeatureData> { return this.request<FeatureResponse>('/feature/get', { id }); } } ```
  1. ** ** - `src/services/<feature>/` - - ```typescript // src/services/feature/feature-service.ts export class FeatureService { private client: FeatureClient; constructor(config: ApiClientConfig) { this.client = new FeatureClient(config); } async getFeature(id: string): Promise<Feature> { try { const data = await this.client.getFeatureData(id); return this.transformData(data); } catch (error) { handleError(error); } } } ```
  1. ** ** - `src/services/index.ts` - `FeiShuServices`
  1. ** MCP **
  1. ** ** - `src/server/tools/index.ts`
** ** API

  • ID


MIT
  1. Fork
  1. `git checkout -b feature/amazing-feature`
  1. `git commit -m 'feat: add some amazing feature'`
  1. `git push origin feature/amazing-feature`
  1. Pull Request

PR