LINE MCP とは?2 つの連携方向の比較と実装チュートリアル
「LINE MCP」で検索すると、よく似ているのに実は方向が逆の 2 つのものが見つかります。1 つは AI エージェントが LINE メッセージを送るもの、 もう 1 つは LINE 上のカスタマーサービス AI が自社のツールを呼び出すものです。方向を間違えると、作ったものがお客様にまったく返信できないことに気づくことになります。 この記事ではまず 2 つの方向を整理し、それぞれの作り方を説明します。
まず MCP を理解する:AI がツールを使うための共通規格
MCP(Model Context Protocol)は、AI アプリケーションが外部のツールやデータソースに標準的な方法で接続できるようにするオープンなプロトコルです。 「注文照会」「在庫照会」を MCP サーバーにしておけば、MCP に対応したどの AI アプリケーションからも使え、プラットフォームごとに連携を作り直す必要がありません。
MCP の接続には 2 つの端があります。ツールを使う AI(クライアント)とツールを提供するサーバーです。 「LINE MCP」の 2 つの方向の違いは、LINE がどちらの端に立つかにあります。
LINE MCP の 2 つの方向
| 方向 1:AI エージェント → LINE | 方向 2:LINE のお客様との会話 → MCP ツール | |
|---|---|---|
| 代表的な方法 | LINE 公式の line-bot-mcp-server | Chatbotta の外部ツール(MCP) |
| LINE の役割 | 呼び出されるツール(メッセージ送信) | お客様と AI が会話するチャネル |
| ツールを使うのは誰か | 自分の AI エージェント(Claude Desktop、Cursor など) | お客様に対応するカスタマーサービス AI |
| できること | テキストや Flex メッセージのプッシュ送信、ユーザー情報の取得、リッチメニューの管理 | お客様の質問に応じて注文を照会、予約を変更、社内データを参照し、お客様に返信 |
| お客様のメッセージの受信 | しない | する。Webhook と会話の状態はプラットフォームが処理 |
| 向いている用途 | 社内の自動化、エージェントからの通知送信 | 対外的なカスタマーサービス、お客様によるセルフサービスでの照会・操作 |
方向 1:LINE 公式の MCP サーバーでエージェントからメッセージを送る
LINE は GitHub で line-bot-mcp-server を公開しており、 Messaging API を MCP ツールとして利用できます。導入すれば、エージェントに「この要約を私の LINE に送って」と頼むだけで、エージェントがツールを呼び出して送信します。
- LINE Developers Console で Messaging API チャネルを作成し、Channel Access Token を発行します(公式アカウントをまだ持っていない場合は LINE 公式アカウント認証ガイドをご覧ください)
- MCP 対応のエージェント(Claude Desktop、Cursor など)の MCP 設定ファイルにこのサーバーを追加します
- エージェントを再起動し、ツール一覧にプッシュメッセージなどのツールが表示されることを確認します
{
"mcpServers": {
"line-bot": {
"command": "npx",
"args": ["@line/line-bot-mcp-server"],
"env": {
"CHANNEL_ACCESS_TOKEN": "あなたの Channel Access Token",
"DESTINATION_USER_ID": "デフォルトの送信先 userId"
}
}
}
} これはあくまで「送信側」のツールである点に注意してください。サーバーはあなたのパソコン上で stdio として動作し、Webhook を受けないため、お客様が何と返信したかをエージェントは知りません。 お客様が LINE で質問し AI が答える仕組みが目的なら、必要なのは方向 2 です。
方向 2:LINE 上のカスタマーサービス AI に MCP ツールを呼び出させる
この方向では処理することが多くなります。LINE の Webhook の受信、お客様ごとの会話状態の管理、どのツールをいつ使うかの AI による判断、本物のお客様の前で使えるツールの制御、答えられないときの有人対応への切り替えです。 ゼロから自作すると 1 つのプロジェクトになりますが、Chatbotta の外部ツール(MCP)を使えばこれらはプラットフォームが処理し、用意するのはツールそのものだけです。
ステップ 1:URL で接続できる MCP サーバーを用意する
公開したい機能(たとえば注文照会)を MCP サーバーにして、公開アクセスできる URL にデプロイします。Chatbotta は URL で接続し、 Streamable HTTP を優先して使い、サーバーが対応していなければ自動で SSE に切り替えます。stdio には対応していないため、ローカルでしか動かないサーバーは先に HTTP で公開する必要があります。
MCP サーバーがまだない場合は、データ量が少なければまず Google スプレッドシートにデータを置き、「Flows」(フロー)の「Write to Google Sheets」ステップで読み取り、必要に応じてあとから MCP に移行することもできます。
ステップ 2:LINE 公式アカウントを接続する
Chatbotta でプロジェクトを作成して Channel Access Token を貼り付けると、プラットフォームがチャネルの Webhook を自動で自分に向け、メッセージが統合された会話レイヤーに届くようになります。 詳しい手順はLINE 公式アカウントを接続するをご覧ください。
ステップ 3:外部ツール(MCP コネクタ)を追加する
プロジェクトの「Settings」→「Copilot and tools」で「Add external tool」を選び、次の項目を入力します。
| 項目 | 説明 |
|---|---|
| 「Name」(名前) | 自分で見分けるためのもの。例:「注文照会」 |
| 「Server URL」(サーバー URL) | MCP サーバーの URL。例:https://mcp.example.com/mcp |
| 「Purpose」(用途) | AI 向けの説明で、AI はこれをもとにツールを使うタイミングを判断します。例:「注文状況と出荷の進捗を照会する」 |
| 「Authentication」(認証方式) | 認証なし、API トークン/Bearer トークン、OAuth、またはお客様ごとに認可(「Each customer authorizes」) |
OAuth を選ぶと、プラットフォームが MCP の仕様に従ってサーバーにクライアントを自動登録し、ブラウザで認可画面を開きます。サーバーが自動登録に対応していない場合は、クライアント ID、クライアントシークレット、認可 URL、トークン URL を手動で入力できます。 トークンとシークレットはいずれも暗号化して保存されます。
ステップ 4:ツールをカスタマーサービス AI に許可する
接続に成功すると、ツールはデフォルトで Copilot だけが使える状態になり、設計段階でのデータ確認やフロー作成に使えます。 本物のお客様に対応するボットに使わせるには、「Let the bot use it when replying to customers」をオンにし、ツール一覧の「Bot」列で許可するツールに1 つずつチェックを入れます。チェックしていないツールはお客様との会話には出てきません。 最初は照会系のツールだけを許可し、データを書き込むツールは動作を確認してからオンにすることをおすすめします。
ステップ 5:お客様の本人確認が必要なら、お客様ごとに認可する
「私の注文を確認して」「日程を変更して」といった操作では、相手が誰かを確定する必要があります。「Each customer authorizes」を選ぶと、お客様が関連するツールを初めて使うときに、 AI が会話の中で認可リンクを送り、お客様は連携先システム自身のページで認可を完了します。以降は AI がそのお客様に代わって操作できます。 認可データは暗号化して保存され、連携先システムにひもづけられます。ツールに必要な項目をお客様が言い切っていない場合、AI は推測で送信せず、まず会話の中で聞き返します。
ステップ 6:テストして公開する
- 右側の「Test」を開き、「注文はいまどこですか?」のような質問を一通りして、AI が正しいツールを呼び出しているか確認します
- ツールでは答えられない質問をわざとして、でたらめに答えずに有人対応へ切り替わることを確認します
- 公開後はスマートフォンで実際に試します。同じ外部ツールは Messenger、Instagram の DM、Web サイトのチャットでもそのまま使え、設定し直す必要はありません
どちらの方向を選ぶべきか
- 自分のエージェントから LINE に通知や要約を送りたい:LINE 公式の line-bot-mcp-server を使います
- お客様が LINE で質問し、AI が自社システムを調べてから答えるようにしたい:Chatbotta の外部ツール(MCP)を使います
- 両方ほしい:併用できます。前者はメッセージを送るだけで Webhook を使わないため、衝突しません
- 質問の大半が営業時間、料金、ルールといった固定の情報:ツールを書く必要はなく、AI ナレッジベースで十分です
MCP 外部ツールの詳しい仕様と認可の仕組みは LINE MCP 連携の機能紹介をご覧ください。 LINE ボットを自社開発するかどうか検討中なら、まず LINE チャットボットプラットフォームの比較をご覧ください。
よくある質問
Q: LINE MCP とは何ですか?
A: LINE MCP は、LINE 公式アカウントと MCP(Model Context Protocol)をつなぐ方法の総称で、実際には 2 つの方向があります。1 つは LINE 公式の line-bot-mcp-server で、AI エージェントが MCP 経由で LINE メッセージを送れるようにするもの。もう 1 つは、LINE 上のカスタマーサービス AI が会話中に MCP ツールを呼び出してデータを調べたり用件を処理したりするものです。両者は方向が逆で、解決する課題も異なります。
Q: LINE 公式の line-bot-mcp-server でカスタマーサービスボットを作れますか?
A: 向いていません。提供されるのはプッシュメッセージ、ユーザー情報の取得、リッチメニューの管理といった「送信側」のツールで、お客様からのメッセージは受信せず、会話の状態管理や有人対応への切り替えの仕組みもありません。お客様に返信するカスタマーサービスボットを作るには、Messaging API の Webhook を受けるか、Webhook の処理を済ませたプラットフォームを使う必要があります。
Q: Chatbotta に line-bot-mcp-server を直接つなげられますか?
A: できませんし、その必要もありません。line-bot-mcp-server はローカルで stdio として動作しますが、Chatbotta の外部ツールは URL でリモートの MCP サーバー(Streamable HTTP または SSE)に接続します。LINE メッセージの送受信は Chatbotta がすでに担っているので、つなぐのは注文照会や予約システムといった自社の業務ツールです。
Q: 同じ LINE 公式アカウントで両方を使えますか?
A: 使えます。line-bot-mcp-server は Channel Access Token でメッセージを送信するだけで Webhook は使いません。一方 Chatbotta はチャネルの Webhook をプラットフォームに向けてお客様のメッセージを受信します。なお、エージェントが送信したプッシュメッセージは LINE 公式アカウントのメッセージ通数にカウントされます。
Q: 自社の MCP サーバーを Chatbotta につなぐには、どんな条件が必要ですか?
A: URL で接続できるリモートの MCP サーバーで、Streamable HTTP(推奨)または SSE に対応している必要があります。認証方式は「認証なし」「API トークン/Bearer トークン」「OAuth」から選べ、ツールがどのお客様かを識別する必要がある場合は、お客様ごとに認可するモードを使えます。