Skip to main content
Glama
larksuite

Feishu/Lark OpenAPI MCP

Official
by larksuite

フェイシュウ/ラーク OpenAPI MCP

npmバージョン npmダウンロード Node.js バージョン

英語 |中文

開発者向けドキュメント取得 MCP |公式ドキュメント

⚠️ ベータ版のお知らせ:このツールは現在ベータ版です。機能やAPIは変更される可能性がありますので、バージョンリリースの最新情報をご確認ください。

これは、Feishu/Lark公式OpenAPI MCP(Model Context Protocol)ツールです。ユーザーがFeishu/Larkプラットフォームに迅速に接続し、AIエージェントとFeishu/Lark間の効率的な連携を実現できるように設計されています。このツールは、Feishu/Lark Open Platform APIインターフェースをMCPツールとしてカプセル化しており、AIアシスタントがこれらのインターフェースを直接呼び出して、ドキュメント処理、会話管理、カレンダースケジュール設定などのさまざまな自動化シナリオを実装できます。

特徴

  • **完全な Feishu/Lark API ツールキット:**メッセージ管理、グループ管理、ドキュメント操作、カレンダー イベント、Bitable、その他のコア機能領域を含む、ほぼすべての Feishu/Lark API インターフェイスをカプセル化します。

  • 二重認証サポート:

    • アプリアクセストークン認証をサポート

    • ユーザーアクセストークン認証をサポート

  • 柔軟な通信プロトコル:

    • 標準入出力ストリーム(stdio)モードをサポートし、Trae/Cursor/ClaudeなどのAIツールとの統合に適しています。

    • Server-Sent Events (SSE) モードをサポートし、HTTP ベースのインターフェースを提供します。

  • さまざまな使用シナリオに適応する複数の構成方法をサポートします

Related MCP server: Feishu/Lark OpenAPI MCP

ツールリスト

サポートされているすべての Feishu/Lark ツールの完全なリストはtools.mdにあります。ツールはプロジェクトとバージョン別に分類され、説明が付いています。

準備

Feishu/Lark アプリケーションの作成

lark-mcp ツールを使用する前に、Feishu/Lark アプリケーションを作成する必要があります。

  1. Feishu Open PlatformまたはLark Open Platformにアクセスしてログインしてください

  2. 「コンソール」をクリックして新しいアプリケーションを作成します

  3. API認証に使用するApp IDとApp Secretを取得します。

  4. 使用シナリオに基づいてアプリケーションに必要な権限を追加します

  5. ユーザーとしてAPIを呼び出す必要がある場合は、OAuth 2.0リダイレクトURLを設定し、ユーザーアクセストークンを取得します。

アプリケーションの作成と構成に関する詳細なガイドラインについては、 Feishu Open Platform ドキュメントの「アプリケーションの作成」またはLark Open Platform ドキュメントを参照してください。

Node.jsのインストール

lark-mcp ツールを使用する前に、Node.js 環境をインストールする必要があります。

macOSにNode.jsをインストールする

  1. Homebrew の使用 (推奨) :

    brew install node
  2. 公式インストーラーの使用:

    • Node.jsのウェブサイトをご覧ください

    • LTSバージョンをダウンロードしてインストールする

    • インストール後、ターミナルで確認します。

      node -v
      npm -v

WindowsにNode.jsをインストールする

  1. 公式インストーラーの使用:

    • Node.jsのウェブサイトをご覧ください

    • Windowsインストーラー(.msiファイル)をダウンロードして実行します

    • インストールウィザードに従ってインストールを完了します

    • インストール後、コマンドプロンプトで確認します。

      node -v
      npm -v
  2. nvm-windows の使用:

    • nvm-windowsをダウンロード

    • nvm-windowsをインストールする

    • nvm を使用して Node.js をインストールします。

      nvm install latest
      nvm use <version_number>

インストール

lark-mcp ツールをグローバルにインストールします。

npm install -g @larksuiteoapi/lark-mcp

使用ガイド

Trae/Cursor/Claude と併用

Feishu/Lark 機能を Trae、Cursor、Claude などの AI ツールに統合するには、構成ファイルに以下を追加します。

{
  "mcpServers": {
    "lark-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@larksuiteoapi/lark-mcp",
        "mcp",
        "-a",
        "<your_app_id>",
        "-s",
        "<your_app_secret>"
      ]
    }
  }
}

ユーザー ID を使用して API にアクセスするには、ユーザー アクセス トークンを追加します。

{
  "mcpServers": {
    "lark-mcp": {
     "command": "npx",
      "args": [
        "-y",
        "@larksuiteoapi/lark-mcp",
        "mcp",
        "-a",
        "<your_app_id>",
        "-s",
        "<your_app_secret>",
        "-u",
        "<your_user_token>"
      ]
    }
  }
}

カスタムAPI構成

MCPサービスはデフォルトで共通APIを有効にします。他のツールや特定のAPI、プリセットのみを有効にするには、 -tパラメータ(カンマ区切り)を使用して指定します。

lark-mcp mcp -a <your_app_id> -s <your_app_secret> -t im.v1.message.create,im.v1.message.list,im.v1.chat.create,preset.calendar.default

プリセットツールコレクションの詳細

次の表は、各 API ツールと、それがさまざまなプリセット コレクションに含まれているかどうかの詳細を示しており、ニーズに適したプリセットを選択するのに役立ちます。

ツール名

機能説明

preset.default (デフォルト)

プリセット.im.デフォルト

preset.base.default

preset.base.batch

プリセット.doc.デフォルト

プリセットタスクのデフォルト

プリセットカレンダーのデフォルト

im.v1.チャット.作成

グループチャットを作成する

✓

✓

im.v1.チャットリスト

グループチャットリストを取得する

✓

✓

im.v1.chatMembers.get

グループメンバーを取得する

✓

✓

im.v1.メッセージ作成

メッセージを送信する

✓

✓

im.v1.メッセージリスト

メッセージリストを取得

✓

✓

bitable.v1.app.create

ベースを作成

✓

✓

✓

bitable.v1.appTable.create

基本データテーブルを作成する

✓

✓

✓

bitable.v1.appTable.list

基本データテーブルリストを取得する

✓

✓

✓

bitable.v1.appTableField.list

基本データテーブルフィールドリストを取得する

✓

✓

✓

bitable.v1.appTableRecord.search

検索ベースデータテーブルレコード

✓

✓

✓

bitable.v1.appTableRecord.create

基本データテーブルレコードを作成する

✓

✓

bitable.v1.appTableRecord.batchCreate

基本データテーブルレコードのバッチ作成

✓

bitable.v1.appTableRecord.更新

基本データテーブルレコードを更新する

✓

✓

bitable.v1.appTableRecord.batchUpdate

基本データテーブルレコードの一括更新

✓

docx.v1.document.rawContent

ドキュメントコンテンツを取得する

✓

✓

docx.組み込みインポート

ドキュメントのインポート

✓

✓

docx.組み込み検索

ドキュメントを検索

✓

✓

ドライブ.v1.権限メンバー.作成

共同編集者の権限を追加する

✓

✓

wiki.v2.space.getNode

Wikiノードを取得

✓

✓

wiki.v1.node.search

Wikiノードを検索

✓

✓

contact.v3.user.batchGetId

ユーザーIDを一括取得

✓

タスク.v2.タスク作成

タスクを作成

✓

タスク.v2.タスク.パッチ

タスクの変更

✓

タスク.v2.タスク.メンバーの追加

タスクメンバーを追加する

✓

task.v2.task.addReminders

タスクのリマインダーを追加する

✓

カレンダー.v4.カレンダーイベント.作成

カレンダーイベントを作成

✓

カレンダー.v4.calendarEvent.パッチ

カレンダーイベントの変更

✓

カレンダー.v4.カレンダーイベント.get

カレンダーイベントを取得

✓

カレンダー.v4.空き時間リスト

空き時間情報を照会する

✓

カレンダー.v4.カレンダー.プライマリ

メインカレンダーを取得する

✓

注: 表中の「✓」は、そのツールがそのプリセットに含まれていることを示します。 -t preset.xxxを使用すると、対応する列に「✓」マークが付いているツールのみが有効になります。

詳細設定

コマンドラインパラメータ

lark-mcp mcpツールは、柔軟な MCP サービス構成のためのさまざまなコマンドライン パラメータを提供します。

パラメータ

短い

説明

例

--app-id

-a

Feishu/LarkアプリケーションのアプリID

-a cli_xxxx

--app-secret

-s

Feishu/Lark アプリケーション App Secret

-s xxxx

--domain

-d

Feishu/Lark API ドメイン、デフォルトはhttps://open.feishu.cnです

-d https://open.larksuite.com

--tools

-t

有効にする API ツールのリスト(カンマ区切り)

-t im.v1.message.create,im.v1.chat.create

--tool-name-case

-c

ツール名の形式。オプションは、snake、camel、dot、kebab で、デフォルトは snake です。

-c camel

--language

-l

ツールの言語、オプションは zh または en、デフォルトは en

-l zh

--user-access-token

-u

ユーザーとして API を呼び出すためのユーザー アクセス トークン

-u u-xxxx

--token-mode

API トークンの種類。オプションは auto、tenant_access_token、user_access_token で、デフォルトは auto です。

--token-mode user_access_token

--mode

-m

トランスポートモード、オプションはstdioまたはsse、デフォルトはstdio

-m sse

--host

SSEモードのリスニングホスト、デフォルトはlocalhost

--host 0.0.0.0

--port

-p

SSEモードのリスニングポート、デフォルトは3000

-p 3000

--config

設定ファイルのパス、JSON 形式をサポート

--config ./config.json

--version

-V

バージョン番号を表示する

-V

--help

-h

ヘルプ情報を表示する

-h

パラメータの使用例

  1. 基本的な使用方法(アプリケーション ID を使用):

    lark-mcp mcp -a cli_xxxx -s yyyyy
  2. ユーザーIDの使用:

    lark-mcp mcp -a cli_xxxx -s yyyyy -u u-zzzz

    注:ユーザーアクセストークンは、Feishu Open Platformの認証プロセスまたはLark Open Platformの認証プロセスを通じて取得できます。また、APIデバッグコンソールを使用して取得することもできます。ユーザーアクセストークンを使用すると、API呼び出しはそのユーザーのIDを使用して実行されます。

  3. 特定のトークンモードの設定:

    lark-mcp mcp -a cli_xxxx -s yyyyy --token-mode user_access_token

    注: このオプションを使用すると、API呼び出し時に使用するトークンタイプを明示的に指定できます。 autoモード(デフォルト)は、API呼び出し時にLLMによって決定されます。

  4. LarkまたはKAドメインの指定:

    # Lark international version
    lark-mcp mcp -a <your_app_id> -s <your_app_secret> -d https://open.larksuite.com
    
    # Custom domain (KA domain)
    lark-mcp mcp -a <your_app_id> -s <your_app_secret> -d https://open.your-ka-domain.com
  5. 特定の API ツールのみを有効にするか、他の API ツールを有効にするか:

    lark-mcp mcp -a cli_xxxx -s yyyyy -t im.v1.chat.create,im.v1.message.create

    注: -tパラメータは、次のプリセット ツール コレクションをサポートします。

    • preset.default - すべてのプリセットツールを含むデフォルトのツールセット

    • preset.im.default - グループ管理、メッセージ送信などのインスタント メッセージング関連のツール。

    • preset.bitable.default - テーブル作成、レコード管理などの Bitable 関連ツール。

    • preset.bitable.batch - バッチ作成およびレコード更新機能を含む Bitable バッチ操作ツール

    • preset.doc.default - ドキュメント コンテンツの読み取り、権限管理などのドキュメント関連ツール。

    • preset.task.default - タスクの作成、メンバーの管理などのタスク管理関連のツール。

    • preset.calendar.default - カレンダー イベントの作成、空き時間情報の照会などのカレンダー イベント管理ツール。

  6. 特定のポートとホストでSSEモードを使用する:

    lark-mcp mcp -a cli_xxxx -s yyyyy -m sse --host 0.0.0.0 -p 3000
  7. ツールの言語を中国語に設定する:

    lark-mcp mcp -a cli_xxxx -s yyyyy -l zh

    注:言語を中国語( -l zh )に設定すると、トークンの消費量が増える可能性があります。大規模な言語モデルとの統合時にトークン制限の問題が発生する場合は、デフォルトの英語設定( -l en )の使用を検討してください。

  8. ツール名の形式をキャメルケースに設定する:

    lark-mcp mcp -a cli_xxxx -s yyyyy -c camel

    注: ツール名の形式を設定することで、MCP におけるツール名の表示形式を変更できます。例えば、 im.v1.message.createは以下のように表示されます。

    • スネークフォーマット(デフォルト): im_v1_message_create

    • キャメル形式: imV1MessageCreate

    • ケバブ形式: im-v1-message-create

    • ドット形式: im.v1.message.create

  9. コマンドラインパラメータの代わりに環境変数を使用する:

    # Set environment variables
    export APP_ID=cli_xxxx
    export APP_SECRET=yyyyy
    
    # Start the service (no need to specify -a and -s parameters)
    lark-mcp mcp
  10. 設定ファイルの使用:

コマンドラインパラメータに加えて、JSON 形式の構成ファイルを使用してパラメータを設定することもできます。

lark-mcp mcp --config ./config.json

設定ファイルの例 (config.json):

{
  "appId": "cli_xxxx",
  "appSecret": "xxxx",
  "domain": "https://open.feishu.cn",
  "tools": ["im.v1.message.create","im.v1.chat.create"],
  "toolNameCase": "snake",
  "language": "zh",
  "userAccessToken": "",
  "tokenMode": "auto",
  "mode": "stdio",
  "host": "localhost",
  "port": "3000"
}

注:コマンドラインパラメータは設定ファイルよりも優先されます。コマンドラインパラメータと設定ファイルの両方を使用する場合、コマンドラインパラメータが設定ファイルの対応する設定を上書きします。

  1. 輸送モード:

lark-mcp は 2 つのトランスポート モードをサポートしています。

  1. stdio モード (デフォルト/推奨) : 標準入出力ストリームを介して通信する、Trae/Cursor や Claude などの AI ツールとの統合に適しています。

lark-mcp mcp -a <your_app_id> -s <your_app_secret> -m stdio
  1. SSE モード: ローカル実行が不可能なシナリオに適した、Server-Sent Events に基づく HTTP インターフェイスを提供します。

# Default listens only on localhost
lark-mcp mcp -a <your_app_id> -s <your_app_secret> -m sse -p 3000

# Listen on all network interfaces (allowing remote access)
lark-mcp mcp -a <your_app_id> -s <your_app_secret> -m sse --host 0.0.0.0 -p 3000

起動後、SSE エンドポイントはhttp://<host>:<port>/sseでアクセスできるようになります。

よくある質問

  • 問題:Feishu/Lark APIに接続できません解決策:ネットワーク接続を確認し、APP_IDとAPP_SECRETが正しいことを確認してください。Feishu/Lark Open Platform APIにアクセスできることを確認してください。プロキシの設定が必要になる場合があります。

  • 問題: user_access_token の使用時にエラーが発生します。解決策: トークンの有効期限が切れていないか確認してください。user_access_token の有効期間は通常 2 時間で、定期的に更新する必要があります。自動トークン更新メカニズムを実装することもできます。

  • 問題:MCPサービス開始後、権限不足エラーが発生し、特定のAPIを呼び出せません。解決策:アプリケーションが適切なAPI権限を取得しているかどうかを確認してください。一部のAPIでは、開発者コンソールまたはLark開発者コンソールで設定できる追加の高レベルの権限が必要です。権限が承認されていることを確認してください。

  • 問題: 画像またはファイルのアップロード/ダウンロード関連のAPI呼び出しが失敗する解決策: 現在のバージョンでは、ファイルおよび画像のアップロード/ダウンロード機能はサポートされていません。これらのAPIは将来のバージョンでサポートされる予定です。

  • 問題:Windows環境でコマンドラインが文字化けする解決策:コマンドプロンプトでchcp 65001を実行し、コマンドラインのエンコーディングをUTF-8に変更してください。PowerShellを使用している場合は、ターミナルのフォントまたはPowerShellの設定を変更する必要がある可能性があります。

  • 問題:インストール中の権限エラー解決策:macOS/Linux では、 sudo npm install -g @larksuiteoapi/lark-mcpを使用してインストールするか、npm のグローバルインストールパスの権限を変更してください。Windows では、コマンドプロンプトを管理者として実行してみてください。

  • 問題: MCP サービスの開始後にトークン制限を超えました。解決策: -tを使用して有効な API の数を減らすか、より大きなトークンをサポートするモデル (claude3.7 など) を使用してください。

  • 問題: SSEモードで接続またはメッセージを受信できません。解決策: ポートが既に使用されていないか確認し、別のポートに変更してみてください。クライアントがSSEエンドポイントに正しく接続され、イベントストリームを処理していることを確認してください。

関連リンク

フィードバック

このツールの改善に役立つ問題を歓迎します。ご質問やご提案がございましたら、GitHubリポジトリにご投稿ください。

Related MCP Connectors

Related MCP Servers