この記事ではMCPに特化して解説します。MCP(Model Context Protocol)全般は MCPサーバーの作り方2026完全ガイド をご覧ください。

LINE Bot MCP Serverとは何か:公式実装の概要と背景

LINE Bot MCP Serverは、LINEが公式リポジトリとして提供するModel Context Protocol(MCP)サーバー実装だ。ClaudeなどのAIエージェントがLINE Messaging APIを直接呼び出せるようにするブリッジとして機能する。GitHubスター数は575(2026年4月現在)、TypeScriptで実装されている。

従来のLINE Bot開発フローを振り返ると、問題の根本が見えてくる。開発者はClaudeにコード生成を依頼し、受け取ったコードをローカル環境で実行し、APIのレスポンスを確認し、問題があればまたClaudeに質問するという往復を繰り返していた。このサイクルはコード生成段階では高速化されていても、検証フェーズで必ず人間の手動操作が挟まっていた。

LINE Bot MCP Serverはこの検証フェーズを自動化する。Claudeがツール呼び出しとして直接LINE Messaging APIを実行し、そのレスポンスを同一セッション内で確認できる。「このユーザーIDにメッセージを送って」という自然言語の指示が、push_text_messageツールの実行として処理され、成功・失敗のレスポンスがその場で返ってくる。

プレビュー版について
公式READMEには「This repository is provided as a preview version」と記載されている。実験的な提供であり、完全な機能やサポートが含まれない場合がある点に注意が必要だ。

このMCPサーバーが解決する具体的な場面は以下の通りだ。

  • Flex Messageの複雑なJSON構造を設計しながら即座に送信テストする
  • 複数のユーザーIDに異なるメッセージをプログラマティックに送信する
  • リッチメニューを作成・設定しながらUIの見た目を確認する
  • メッセージクォータの残量を確認してブロードキャスト戦略を調整する
  • フォロワーIDの一覧を取得してセグメント配信の準備をする

実装されている12種類のツール一覧

LINE Bot MCP Serverが提供するツールを詳細に確認しておく。これが実際にClaudeから呼び出せる機能の全体像だ。

メッセージ送信系(4ツール)

ツール名 機能 主要パラメータ
push_text_message 特定ユーザーへのテキスト送信 userId, message.text
push_flex_message 特定ユーザーへのFlex Message送信 userId, message.altText, message.contents
broadcast_text_message 全フォロワーへのテキスト一斉送信 message.text
broadcast_flex_message 全フォロワーへのFlex Message一斉送信 message.altText, message.contents

ユーザー情報取得系(2ツール)

ツール名 機能 主要パラメータ
get_profile ユーザープロフィール取得(名前・アイコン・ステータスメッセージ・言語) userId
get_follower_ids フォロワーIDの一覧取得(ページネーション対応) start, limit

アカウント管理系(1ツール)

ツール名 機能 主要パラメータ
get_message_quota 月間メッセージクォータと現在の使用量取得 なし

リッチメニュー管理系(5ツール)

ツール名 機能 主要パラメータ
get_rich_menu_list リッチメニュー一覧取得 なし
create_rich_menu リッチメニュー作成・画像生成・デフォルト設定 chatBarText, actions(最大6つ)
delete_rich_menu リッチメニュー削除 richMenuId
set_rich_menu_default デフォルトリッチメニュー設定 richMenuId
cancel_rich_menu_default デフォルトリッチメニュー解除 なし

create_rich_menuactionsパラメータは8種類のアクションタイプをサポートする。postback、message、uri、datetimepicker、camera、cameraRoll、location、richmenuswitch、clipboardの各タイプを最大6つまで組み合わせてメニューを構成できる。

Flex Messageの設計支援 Flex Messageは`message.contents.type`で`bubble`(単一コンテナ)と`carousel`(複数スワイプバブル)を選択できる。JSONの階層構造が複雑なため、ClaudeにUI要件を説明しながらJSON設計を依頼し、同じセッションで`push_flex_message`を実行してすぐ確認できる点が最大の利点だ。

アーキテクチャ:MCPがLINE Messaging APIを橋渡しする仕組み

flowchart LR A["開発者
自然言語で指示"] --> B["Claude Desktop
/ Cline"] B --> C["LINE Bot MCP Server
(TypeScript)"] C --> D["LINE Messaging API
v3"] D --> E["LINE公式アカウント"] E --> F["LINEユーザー"] C --> B B --> A

MCPの通信はStdioトランスポートを基本とする。Claude DesktopはMCP設定ファイルに記述されたコマンドでサーバープロセスを起動し、JSONRPCでツール呼び出しを送信する。サーバー側はClaudeから受け取ったパラメータをLINE Messaging API v3のエンドポイントに転送し、レスポンスをClaudeに返す。

認証はCHANNEL_ACCESS_TOKEN環境変数で管理される。これはLINE DevelopersコンソールのMessaging API設定画面で発行する長期チャネルアクセストークンだ。宛先ユーザーIDのデフォルト値としてDESTINATION_USER_ID環境変数も設定できる。

サーバー本体はTypeScriptで実装されており、npmパッケージ@line/line-bot-mcp-serverとして公開されている。npmパッケージとして実行する場合はnpx経由で即座に利用でき、Dockerイメージとしてコンテナ化して使う方法も公式でサポートされている。

インストールとセットアップ手順(npx方式・所要15分)

前提条件の確認

# Node.js v20以降が必要
node --version
# v20.0.0 以上であればOK

Step 1:LINE公式アカウントの準備

LINE Developersコンソール(https://developers.line.biz/)でプロバイダーとMessaging API チャネルを作成する。既存のLINE公式アカウントがある場合はOAマネージャーからMessaging APIを有効化する。

チャネル作成後、「チャネル設定 > Messaging API > チャネルアクセストークン」から長期アクセストークンを発行する。

Step 2:Claude Desktopの設定ファイルを編集

macOSの場合は ~/Library/Application Support/Claude/claude_desktop_config.json、Windowsの場合は %APPDATA%/Claude/claude_desktop_config.json を編集する。

{
  "mcpServers": {
    "line-bot": {
      "command": "npx",
      "args": [
        "@line/line-bot-mcp-server"
      ],
      "env": {
        "NPM_CONFIG_IGNORE_SCRIPTS": "true",
        "CHANNEL_ACCESS_TOKEN": "ここにチャネルアクセストークンを入力",
        "DESTINATION_USER_ID": "ここにデフォルト宛先ユーザーIDを入力"
      }
    }
  }
}

DESTINATION_USER_IDはオプションだが、テスト送信先が固定されている場合は設定しておくと便利だ。自分のLINEユーザーIDはLINE Developersコンソールの「プロフィール」ページで確認できる。

Step 3:Claude Desktopを再起動して動作確認

設定ファイル保存後にClaude Desktopを完全に再起動する。Claudeとの会話画面でハンマーアイコンが表示されれば、MCPツールが正常に読み込まれている。

Claude: 「テストメッセージをLINEに送ってください」と入力してみてください。

Dockerを使ったインストール方法

コンテナ化して運用したい場合はDocker方式を選ぶ。

# リポジトリをクローン
git clone [email protected]:line/line-bot-mcp-server.git
cd line-bot-mcp-server

# Dockerイメージをビルド
docker build -t line/line-bot-mcp-server .

Claude Desktopの設定ファイルはこのように記述する:

{
  "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": "ここにチャネルアクセストークンを入力",
        "DESTINATION_USER_ID": "ここにデフォルト宛先ユーザーIDを入力"
      }
    }
  }
}
Docker方式の注意点
Docker方式では`--rm`フラグによりコンテナが毎回破棄される。ステートレスな操作が保証される反面、コンテナ起動のオーバーヘッドが毎回発生する。ローカル開発では速度面でnpx方式が有利だ。

ローカル開発とMCP Inspectorを使ったデバッグ

本番環境に繋ぐ前に、MCP Inspectorを使ってツールの動作を安全に確認できる。

# リポジトリをクローン
git clone [email protected]:line/line-bot-mcp-server.git
cd line-bot-mcp-server

# 依存パッケージをインストール
npm install

# TypeScriptをビルド
npm run build

# 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"

MCP Inspectorはブラウザベースのデバッグインターフェースを提供する。利用可能なツール一覧の確認、パラメータを手動で入力してのテスト実行、レスポンスの詳細確認が行える。Claudeを介さずにAPIの動作を直接確認したい場面で活用できる。

実践的なユースケース

ユースケース1:Flex Messageのプロトタイプ開発

リッチなカード型メッセージを設計する際、JSON構造の試行錯誤がボトルネックになりやすい。MCP Serverを使うと以下のワークフローが可能になる。

  1. Claudeに「商品カードのFlex Messageを設計して」と依頼
  2. ClaudeがJSON構造を生成しつつpush_flex_messageで即座に送信
  3. LINEアプリで見た目を確認してフィードバックを伝える
  4. Claudeがその場でJSONを修正して再送信

この反復を同一セッション内で完結できる点が従来のワークフローとの最大の差だ。

ユースケース2:フォロワーへのセグメント配信テスト

get_follower_idsでフォロワーIDを取得し、対象ユーザーを絞り込んでからテストメッセージを送信するワークフローを組める。

指示例:「フォロワーリストを取得して、最初の5名にプロモーションメッセージを送ってください」

Claudeはget_follower_idsでリストを取得し、ループしながらpush_text_messageを各ユーザーに送信する。コードを書かずに自然言語でバッチ送信の動作確認ができる。

ユースケース3:リッチメニューの高速プロトタイプ

指示例:「ECサイト向けのリッチメニューを作って。ボタンは『商品を探す』『注文確認』『サポート』の3つ」

Claudeはcreate_rich_menuを実行してメニューを作成し、画像生成と設定を自動的に行う。メニューが気に入らなければdelete_rich_menuで削除して別のデザインを試せる。

ユースケース4:月次メッセージクォータの監視

指示例:「今月のメッセージ使用量を確認して、残りクォータをレポートして」

get_message_quotaでクォータ情報を取得し、Claudeが残量と使用率を計算してレポートを作成する。ブロードキャスト戦略を調整する際の意思決定に活用できる。

ユースケース5:ユーザープロフィールの一括確認

フォロワーのプロフィール情報を確認してセグメント分析を行う場面にも対応する。get_follower_idsget_profileを組み合わせることで、フォロワーの言語設定やステータスメッセージを一覧化できる。

MCPプロトコルの詳細を学ぶ
LINE Bot MCP Serverを深く理解するにはMCPの基礎知識が役立つ。MCPサーバーの作り方2026完全ガイドでは、MCPサーバーの実装方法とツール定義の詳細を解説している。

競合・代替ツールとの比較

LINE Bot開発を支援するツールは他にも存在する。位置付けを整理して比較しておく。

ツール アプローチ AI統合 LINE API網羅性 適合用途
LINE Bot MCP Server MCP経由でClaudeが直接実行 ネイティブ(Claude/Cline対応) 12ツール(主要操作) AIアシスト開発・プロトタイプ
LINE SDK for Node.js コードベースのAPI呼び出し 別途LLM連携が必要 LINE API全機能 本番Bot実装
LINE Developers Console Webブラウザ上での手動操作 なし 設定・確認のみ 初期設定・デバッグ
Messaging API Swagger RESTful API直接呼び出し なし LINE API全機能 API仕様確認・テスト
n8n / Zapier ノーコードワークフロー 限定的 基本メッセージ送信 業務自動化ワークフロー

LINE Bot MCP Serverが強みを発揮するのはAIアシストによるプロトタイプ段階だ。本番実装では公式SDKへの移行も検討に値するが、設計検証・動作確認のスピードは他の方法より明確に優れている。

LINE Messaging APIの全機能(ユーザー属性取得、受信Webhookの処理、Narrow Cast等)にはまだ対応していない点は把握しておくべきだ。プレビュー版という位置付けから、今後のアップデートで対応ツールが拡充される可能性がある。

よくある質問・つまずきポイント

Q: MCP Serverを起動すると「command not found」エラーが出る

Node.js v20以降がインストールされているか確認する。node --versionでバージョンを確認し、古い場合はアップデートが必要だ。npmのグローバルキャッシュに問題がある場合はnpm cache clean --forceを試す。

Q: CHANNEL_ACCESS_TOKENを設定したのにLINEにメッセージが届かない

トークンの有効期限を確認する。長期チャネルアクセストークンは「なし(無期限)」として発行するタイプを選択しているか確認が必要だ。また、LINE公式アカウントに対してMessaging APIが有効になっているかもチェックする。

Q: DESTINATION_USER_IDが不明で設定できない

LINE Developersコンソールにログインして「あなたのユーザーID」を確認するか、Messaging API Webhookを有効にして自分でLINE公式アカウントにメッセージを送信し、受信したWebhookイベントのsource.userIdフィールドから取得できる。

Q: Claude Desktopを再起動しても「line-bot」ツールが表示されない

設定ファイルのJSONが正しくパースできているか確認する。JSON構文エラー(末尾のカンマや引用符の不一致)が原因で設定ファイル全体が無効になるケースが多い。JSONLint等のツールで検証を行う。

Q: broadcast_text_messageを実行するとエラーが返ってくる

無料プランのLINE公式アカウントでは月次ブロードキャスト数に上限がある。get_message_quotaで現在の残量を確認してから実行する。また、フォロワーが0人の場合もエラーになる。

APIレート制限について
LINE Messaging APIにはレート制限がある。短時間に大量のpush_text_messageを実行するとレート制限に引っかかる可能性がある。大量送信が必要な場合はbroadcast系ツールを使うか、フォロワー数に応じた適切な送信間隔を設ける必要がある。

AIエージェント開発との統合:より大きな文脈での位置付け

LINE Bot MCP Serverは、AIエージェントがデジタルサービスを自律操作するという大きな流れの中の一事例だ。LINEはアジア、特に日本・タイ・台湾において月間アクティブユーザーが数億人規模のメッセージングプラットフォームだ。このプラットフォームへのアクセスをAIエージェントに開くことの意義は大きい。

AIエージェントフレームワーク比較2026で解説しているように、AIエージェントが外部サービスとインタラクションする際の標準プロトコルとしてMCPが採用されるケースが増えている。LINE Bot MCP Serverはその具体的な実装例として、LINEの生態系への橋渡しを担う。

将来的にMCPサーバーが充実すれば、Claudeが複数のメッセージングプラットフォームを同時に操作してマルチチャネルキャンペーンを実行したり、ユーザーの問い合わせに対して自動的にLINEで返信したりするシナリオが現実的になる。

まとめ

LINE Bot MCP Serverは、LINE公式が提供するプレビュー版MCPサーバーだ。12種類のツールを通じてClaudeがLINE Messaging APIを直接操作でき、メッセージ送信からリッチメニュー管理まで自然言語で指示できる。

セットアップはNode.js v20環境であればnpxを使って15分程度で完了する。Flex Messageのプロトタイプ開発、フォロワーへのセグメント送信テスト、リッチメニューの高速設計など、開発の検証フェーズで特に効果を発揮する。

現時点では全LINE API機能に対応しているわけではなくプレビュー段階だが、公式リポジトリとして継続的な改善が期待できる。LINE Botを開発している、またはこれから始める開発者にとって、AIアシスト開発フローの起点として試す価値がある。

参照ソース