Skip to content

Latest commit

 

History

History
131 lines (103 loc) · 5.76 KB

README.ja.md

File metadata and controls

131 lines (103 loc) · 5.76 KB

LINE Bot MCP Server

LINE公式アカウントとAI Agentを接続するために、LINE Messaging APIを統合するModel Context Protocol (MCP) Server

Note

このリポジトリはプレビュー版として提供されています。実験的な目的で提供されており、完全な機能や包括的なサポートが含まれていないことにご注意ください。

Tools

  1. push_text_message
    • LINEでユーザーにシンプルなテキストメッセージを送信する。
    • 入力:
      • user_id (string?): メッセージ受信者のユーザーID。デフォルトはDESTINATION_USER_ID。
      • message.text (string): ユーザーに送信するテキスト。
  2. push_flex_message
    • LINEでユーザーに高度にカスタマイズ可能なフレックスメッセージを送信する。
    • 入力:
      • user_id (string?): メッセージ受信者のユーザーID。デフォルトはDESTINATION_USER_ID。
      • message.altText (string): フレックスメッセージが表示できない場合に表示される代替テキスト。
      • message.content (any): フレックスメッセージの内容。メッセージのレイアウトとコンポーネントを定義するJSONオブジェクト。
      • message.contents.type (enum): コンテナのタイプ。'bubble'は単一コンテナ、'carousel'は複数のスワイプ可能なバブルを示す。
  3. broadcast_text_message
    • LINE公式アカウントと友だちになっているすべてのユーザーに、LINEでシンプルなテキストメッセージを送信する。
    • 入力:
      • message.text (string): ユーザーに送信するテキスト。
  4. broadcast_flex_message
    • LINE公式アカウントと友だちになっているすべてのユーザーに、LINEで高度にカスタマイズ可能なフレックスメッセージを送信する。
    • 入力:
      • message.altText (string): フレックスメッセージが表示できない場合に表示される代替テキスト。
      • message.content (any): フレックスメッセージの内容。メッセージのレイアウトとコンポーネントを定義するJSONオブジェクト。
      • message.contents.type (enum): コンテナのタイプ。'bubble'は単一コンテナ、'carousel'は複数のスワイプ可能なバブルを示す。
  5. get_profile
    • LINEユーザーの詳細なプロフィール情報を取得する。表示名、プロフィール画像URL、ステータスメッセージ、言語を取得できる。
    • Inputs:
      • user_id (string?): プロフィールを取得したいユーザーのユーザーID。デフォルトはDESTINATION_USER_ID。

インストール

Step 1: line-bot-mcp-serverをインストール

要件:

  • Node.js v20 以上

このリポジトリをクローンします:

git clone git@github.com:line/line-bot-mcp-server.git

Node.jsを利用する場合は、必要な依存関係をインストールし、line-bot-mcp-serverをビルドします。Dockerを利用する場合は不要です。:

cd line-bot-mcp-server && npm install && npm run build

Step 2: LINE公式アカウントを作成

このMCP ServerはLINE公式アカウントを利用しています。公式アカウントをお持ちでない場合は、こちらの手順に従って作成してください。

LINE公式アカウントをお持ちであれば、こちらの手順に従ってMessaging APIを有効にしてください。

Step 3: AI Agentを設定

Claude DesktopやClaudeなどのAI Agentに次の設定を追加してください。

環境変数や引数は次のように設定してください:

  • mcpServers.args: (必須) line-bot-mcp-serverへのパス。
  • CHANNEL_ACCESS_TOKEN: (必須) チャネルアクセストークン。これを取得するには、こちらの手順に従ってください。
  • DESTINATION_USER_ID: (オプション) デフォルトのメッセージ受信者のユーザーID。これを確認するには、こちらの手順に従ってください。

Step 3: AI Agentを設定

Claude DesktopやClaudeなどのAI Agentに次の設定を追加してください。 CHANNEL_ACCESS_TOKENDESTINATION_USER_IDには、先ほど取得したチャネルアクセストークンとユーザーIDをそれぞれ挿入してください。 加えて、mcpServers.argsにあるline-bot-mcp-serverへのパスを更新してください。

Option 1: Node.jsを利用する場合

{
  "mcpServers": {
    "line-bot": {
      "command": "node",
      "args": [
        "PATH/TO/line-bot-mcp-server/dist/index.js"
      ],
      "env": {
        "CHANNEL_ACCESS_TOKEN" : "FILL_HERE",
        "DESTINATION_USER_ID" : "FILL_HERE"
      }
    }
  }
}

Option 2: Dockerを利用する場合

まずDockerイメージをビルドします:

docker build -t line/line-bot-mcp-server .

次のように設定します:

{
  "mcpServers": {
    "line-bot": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "CHANNEL_ACCESS_TOKEN",
        "-e",
        "DESTINATION_USER_ID",
        "line/line-bot-mcp-server"
      ],
      "env": {
        "CHANNEL_ACCESS_TOKEN" : "FILL_HERE",
        "DESTINATION_USER_ID" : "FILL_HERE"
      }
    }
  }
}