LINE Official Account
公式LINE Messaging APIを統合し、AIエージェントをLINE Official Accountに接続します。
LINE Official Account MCPで何ができますか?
- テキストメッセージを送信 —
push_text_messageで特定のユーザーにプレーンテキストメッセージを送信するか、broadcast_text_messageで全フォロワーに一斉送信します。 - リッチフレックスメッセージを送信 — 高度にカスタマイズ可能なバブルまたはキャラセルメッセージを、
push_flex_messageまたはbroadcast_flex_messageを使用して個別のユーザーに送信するか、一斉送信します。 - リッチメニューを管理 — ポストバック、URI、カメラなどのアクションを持つリッチメニューを、
create_rich_menu、get_rich_menu_listおよび関連ツールを使用して作成、一覧表示、デフォルト設定、デフォルト解除、削除します。 - ユーザーおよびグループ情報を取得 —
get_profileでユーザーのプロフィール詳細(名前、写真、ステータスメッセージ)を取得するか、get_group_summaryでIDやアイコンを含むグループチャットの概要を取得します。 - メッセージ枠を監視 —
get_message_quotaを使用して、LINE公式アカウントの月間メッセージ上限と現在の使用量を確認します。 - フォロワーIDを取得 —
get_follower_idsを使用して、アカウントを友だち追加したユーザーIDのページネーション付きリストを取得します。オプションで継続トークンと制限数を指定できます。
ドキュメント
LINE Bot MCP Server
Model Context Protocol (MCP) サーバー実装です。LINE Messaging API を統合し、AI エージェントを LINE 公式アカウントに接続します。

[!NOTE] このリポジトリはプレビュー版として提供されています。実験的な目的で提供していますが、完全な機能や包括的なサポートが含まれていない場合があることにご注意ください。
ツール
-
push_text_message
- LINE を介してユーザーにシンプルなテキストメッセージをプッシュ送信します。
- 入力:
userId(string?): メッセージを受信するユーザー ID。デフォルトは DESTINATION_USER_ID。userIdまたはDESTINATION_USER_IDのいずれかを設定する必要があります。message.text(string): ユーザーに送信するプレーンテキストの内容。
-
push_flex_message
- LINE を介してユーザーに高度にカスタマイズ可能なフレックスメッセージをプッシュ送信します。
- 入力:
userId(string?): メッセージを受信するユーザー ID。デフォルトは DESTINATION_USER_ID。userIdまたはDESTINATION_USER_IDのいずれかを設定する必要があります。message.altText(string): フレックスメッセージを表示できない場合に表示される代替テキスト。message.contents(any): フレックスメッセージの内容。メッセージのレイアウトとコンポーネントを定義する JSON オブジェクトです。message.contents.type(enum): コンテナのタイプ。単一コンテナの場合は 'bubble'、複数のスワイプ可能なバブルの場合は 'carousel'。
-
broadcast_text_message
- LINE を介して、LINE 公式アカウントをフォローしているすべてのユーザーにシンプルなテキストメッセージを一斉送信します。
- 入力:
message.text(string): ユーザーに送信するプレーンテキストの内容。
-
broadcast_flex_message
- LINE を介して、LINE 公式アカウントを友だち追加したすべてのユーザーに高度にカスタマイズ可能なフレックスメッセージを一斉送信します。
- 入力:
message.altText(string): フレックスメッセージを表示できない場合に表示される代替テキスト。message.contents(any): フレックスメッセージの内容。メッセージのレイアウトとコンポーネントを定義する JSON オブジェクトです。message.contents.type(enum): コンテナのタイプ。単一コンテナの場合は 'bubble'、複数のスワイプ可能なバブルの場合は 'carousel'。
-
get_profile
- 表示名、プロフィール画像 URL、ステータスメッセージ、言語など、LINE ユーザーの詳細なプロフィール情報を取得します。
- 入力:
userId(string?): プロフィールを取得するユーザーの ID。デフォルトは DESTINATION_USER_ID。
-
get_message_quota
- LINE 公式アカウントのメッセージ枠と消費量を取得します。月間メッセージ上限と現在の使用量が表示されます。
- 入力:
- なし
-
get_rich_menu_list
- LINE 公式アカウントに関連付けられたリッチメニューのリストを取得します。
- 入力:
- なし
-
delete_rich_menu
- LINE 公式アカウントからリッチメニューを削除します。
- 入力:
richMenuId(string): 削除するリッチメニューの ID。
-
set_rich_menu_default
- リッチメニューをデフォルトのリッチメニューとして設定します。
- 入力:
richMenuId(string): デフォルトとして設定するリッチメニューの ID。
-
cancel_rich_menu_default
- デフォルトのリッチメニューをキャンセルします。
- 入力:
- なし
-
create_rich_menu
- 指定されたアクションに基づいてリッチメニューを作成します。画像を生成してアップロードし、デフォルトとして設定します。
- 入力:
chatBarText(string): チャットバーに表示されるテキスト。リッチメニュー名としても使用されます。actions(array): リッチメニューのアクション。最小 1 個から最大 6 個まで指定できます。各アクションは次のタイプのいずれかになります:postback: ポストバックアクションを送信する場合message: テキストメッセージを送信する場合uri: URL を開く場合datetimepicker: 日付/時刻ピッカーを開く場合camera: カメラを開く場合cameraRoll: カメラロールを開く場合location: 現在地を送信する場合richmenuswitch: 別のリッチメニューに切り替える場合clipboard: テキストをクリップボードにコピーする場合
-
get_follower_ids
- LINE 公式アカウントを友だち追加したユーザーのユーザー ID のリストを取得します。これにより、手動で準備することなくメッセージ送信のためのユーザー ID を取得できます。
- 入力:
start(string?): 次のユーザー ID の配列を取得するための継続トークン。前回のレスポンスのnextプロパティで返されます。limit(number?): 1 回のリクエストで取得するユーザー ID の最大数。
-
get_group_summary
- グループ ID を使用して、グループ ID、グループ名、グループアイコン URL を含むグループチャットの概要を取得します。
- 入力:
groupId(string): 対象のグループチャットのグループ ID。
インストール (npx を使用)
要件:
- Node.js v22 以降
ステップ 1: LINE 公式アカウントを作成する
この MCP サーバーは LINE 公式アカウントを利用します。お持ちでない場合は、こちらの手順 に従って作成してください。
LINE 公式アカウントをお持ちの場合は、こちらの手順 に従って LINE 公式アカウントの Messaging API を有効にしてください。
ステップ 2: AI エージェントを設定する
Claude Desktop や Cline などの AI エージェントに以下の設定を追加してください。
環境変数または引数を次のように設定します:
CHANNEL_ACCESS_TOKEN: (必須) チャネルアクセストークン。こちらの手順 に従って確認できます。DESTINATION_USER_ID: (任意) 受信者のデフォルトユーザー ID。ツールの入力にuserIdが含まれていない場合、DESTINATION_USER_IDが必要です。こちらの手順 に従って確認できます。
{
"mcpServers": {
"line-bot": {
"command": "npx",
"args": [
"@line/line-bot-mcp-server"
],
"env": {
"NPM_CONFIG_IGNORE_SCRIPTS": "true",
"CHANNEL_ACCESS_TOKEN" : "FILL_HERE",
"DESTINATION_USER_ID" : "FILL_HERE"
}
}
}
}
インストール (Docker を使用)
ステップ 1: LINE 公式アカウントを作成する
この MCP サーバーは LINE 公式アカウントを利用します。お持ちでない場合は、こちらの手順 に従って作成してください。
LINE 公式アカウントをお持ちの場合は、こちらの手順 に従って LINE 公式アカウントの Messaging API を有効にしてください。
ステップ 2: line-bot-mcp-server イメージをビルドする
このリポジトリをクローンします:
git clone git@github.com:line/line-bot-mcp-server.git
Docker イメージをビルドします:
docker build -t line/line-bot-mcp-server .
ステップ 3: AI エージェントを設定する
Claude Desktop や Cline などの AI エージェントに以下の設定を追加してください。
環境変数または引数を次のように設定します:
mcpServers.args: (必須)line-bot-mcp-serverへのパス。CHANNEL_ACCESS_TOKEN: (必須) チャネルアクセストークン。こちらの手順 に従って確認できます。DESTINATION_USER_ID: (任意) 受信者のデフォルトユーザー ID。ツールの入力にuserIdが含まれていない場合、DESTINATION_USER_IDが必要です。 こちらの手順 に従って確認できます。
{
"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"
}
}
}
}
Inspector を使用したローカル開発
MCP Inspector を使用して、サーバーをローカルでテストおよびデバッグできます。
前提条件
- リポジトリをクローンします:
git clone git@github.com:line/line-bot-mcp-server.git
cd line-bot-mcp-server
- 依存関係をインストールします:
npm install
- プロジェクトをビルドします:
npm run build
Inspector を実行する
プロジェクトのビルド後、MCP Inspector を起動できます:
npx @modelcontextprotocol/inspector node dist/index.js \
-e CHANNEL_ACCESS_TOKEN="YOUR_CHANNEL_ACCESS_TOKEN" \
-e DESTINATION_USER_ID="YOUR_DESTINATION_USER_ID"
これにより、LINE Bot MCP Server のツールを操作して機能をテストできる MCP Inspector インターフェースが起動します。
バージョニング
このプロジェクトはセマンティックバージョニングに準拠しています。
http://semver.org/ を参照してください。
貢献
貢献を行う前に CONTRIBUTING をご確認ください。