チュートリアル

LINE MCPサーバー:Model Context ProtocolでAIエージェントをLINEに接続

公式LINE Bot MCPサーバーを使用して、ClaudeやGeminiなどのAIエージェントをLINE公式アカウントに接続する完全チュートリアル。セットアップ、設定、Flex Message、自然言語によるボット制御を学びましょう。

LineBot.pro Team15 分で読めます
LINE MCPサーバー:Model Context ProtocolでAIエージェントをLINEに接続

#MCPとLINEの紹介

AIエージェントが外部サービスと連携する方法が根本的に変わりつつあります。これまで、ClaudeやGeminiのようなAIアシスタントをLINEのようなメッセージングプラットフォームに接続するには、カスタムWebhookコード、APIラッパー、そして多大な開発工数が必要でした。Model Context Protocol(MCP) と公式 LINE Bot MCPサーバー の登場により、状況は一変しました。

MCPは現在、AIエージェント統合のデファクトスタンダード であり、月間 9,700万以上のSDKダウンロード5,800以上のMCPサーバー のエコシステムを持っています。OpenAI、Google、Microsoftを含む主要AI企業がMCPを採用しています。LINE上でビジネスを展開する企業にとって、AIエージェントが自然言語でLINE公式アカウントを直接制御できるようになったことを意味します。

#LINEビジネスにとっての重要性

LINEは日本、タイ、台湾、インドネシアにわたる 2億人以上の月間アクティブユーザー を持っています。LINE公式アカウントを使用する企業は、AIエージェントを活用して以下が可能です:

  • メッセージ送信 - 自然言語コマンドで顧客にメッセージを送信
  • リッチビジュアルコンテンツの作成 - Flex Messageを自動生成
  • ユーザープロファイルの取得 - インタラクションのパーソナライズ
  • キャンペーンワークフローの自動化 - LINE APIコードを書かずに
  • カスタマーサポートのスケール - AIアシスタントをLINEに直接接続

AI搭載のLINE統合を構築する準備はできましたか?LINE開発サービスをご覧ください。

#Model Context Protocolとは?

Model Context Protocol(MCP) は、Anthropicが開発したオープンスタンダードで、AIエージェントが外部ツールやサービスと通信する方法を定義しています。ユニバーサルアダプターと考えてください -- すべてのAIモデルとすべてのサービスにカスタム統合を構築する代わりに、MCPはどのAIエージェントでも使用できる標準化されたインターフェースを提供します。

#MCPの仕組み

diagram
AIエージェント(Claude、Gemini、GPTなど)
       |
       v
  MCPクライアント(AIエージェントに内蔵)
       |
       v
  MCPプロトコル(標準化されたJSON-RPC)
       |
       v
  MCPサーバー(LINE Bot MCPサーバー)
       |
       v
  LINE Messaging API
       |
       v
  LINE公式アカウント --> ユーザー

#主要コンセプト

コンセプト説明
MCPホスト接続を開始するAIアプリケーションClaude Desktop、Cursor IDE
MCPクライアントホスト内のプロトコルハンドラー接続ライフサイクルを管理
MCPサーバーMCPを介してツールを公開するサービスLINE Bot MCPサーバー
ツールサーバーが提供する特定のアクションsend_text_messagesend_flex_message
リソースサーバーが公開できるデータユーザープロファイル、メッセージ履歴

#2026年のMCPエコシステム

MCPエコシステムは急速に成長しています:

  • 5,800以上のMCPサーバー - データベース、API、SaaSツール、メッセージングプラットフォームをカバー
  • 月間9,700万以上のSDKダウンロード - Python、TypeScript、Java、Goに対応
  • すべての主要AIプロバイダーが採用:OpenAI、Google、Microsoft、Anthropic
  • エンタープライズ対応:認証、認可、監査ログがプロトコルに組み込み
  • トランスポートオプション:ローカル用のstdio、リモート用のHTTP+SSE

LINE API開発について詳しくはLINE API統合チュートリアルをご覧ください。

#LINE Bot MCPサーバーの概要

LINE Bot MCPサーバー は、LINE株式会社が github.com/line/line-bot-mcp-server で公開している公式実装です。AIエージェントとLINE Messaging APIを橋渡しし、自然言語でLINE公式アカウントを制御できるようにします。

#サポートされるツール

ツール説明パラメータ
push_text_messageユーザーにテキストメッセージを送信user_idmessage
push_flex_messageFlex Messageを送信user_idflex_contentalt_text
broadcast_text_message全フォロワーにテキストを送信message
broadcast_flex_messageFlex Messageをブロードキャストflex_contentalt_text
get_profileユーザーのLINEプロファイルを取得user_id
get_message_quota残りメッセージ数量を確認--
get_followers_countフォロワー総数を取得--

#従来の統合との違い

typescript
// 従来のアプローチ:カスタムWebhook + APIコード
import { Client } from "@line/bot-sdk";

const client = new Client({
  channelAccessToken: process.env.LINE_CHANNEL_ACCESS_TOKEN!,
});

app.post("/webhook", async (req, res) => {
  const events = req.body.events;
  for (const event of events) {
    if (event.type === "message" && event.message.type === "text") {
      await client.replyMessage(event.replyToken, {
        type: "text",
        text: "こんにちは!",
      });
    }
  }
  res.sendStatus(200);
});
// MCPアプローチ:AIエージェントがLINEを直接制御
// Claudeに自然言語で指示するだけ:

「ユーザーU1234567890にLINEでウェルカムメッセージを送信してください。
'当店へようこそ!新しい春コレクションを
今週20%オフでご覧ください。'」

// AIエージェントがMCP経由でpush_text_messageを自動呼び出し

このパラダイムシフトにより、ビジネスオペレーター、マーケター、非技術者がAIを通じてLINEボットを制御できるようになります。LINEチャットボットサービスをご覧ください。

#セットアップ&設定ガイド

LINE Bot MCPサーバーのセットアップには、LINE APIの認証情報とMCPサーバーの2つが必要です。

#ステップ1:LINE公式アカウントとチャネルの作成

  1. LINE Developers Consoleにアクセス
  2. 新しい Provider を作成
  3. 新しい Messaging API Channel を作成
  4. Messaging APIタブから Channel Access Token(長期)をメモ
  5. Basic Settingsタブから Channel Secret をメモ

詳細についてはLINE公式アカウントの設定をご覧ください。

#ステップ2:npxでインストール(開発推奨)

bash
# インストール不要 -- 直接実行
npx @line/line-bot-mcp-server

#ステップ3:Dockerでインストール(本番推奨)

bash
# 公式イメージを取得
docker pull ghcr.io/line/line-bot-mcp-server:latest

# 環境変数で実行
docker run -it --rm \
  -e CHANNEL_ACCESS_TOKEN=your_channel_access_token \
  -e DESTINATION=your_user_id \
  ghcr.io/line/line-bot-mcp-server:latest

#ステップ4:Claude Desktopでの設定

json
{
  "mcpServers": {
    "line-bot": {
      "command": "npx",
      "args": ["-y", "@line/line-bot-mcp-server"],
      "env": {
        "CHANNEL_ACCESS_TOKEN": "your_channel_access_token_here",
        "DESTINATION": "your_default_user_id_here"
      }
    }
  }
}

#ステップ5:DockerでのClaude Desktop設定

json
{
  "mcpServers": {
    "line-bot": {
      "command": "docker",
      "args": [
        "run", "-i", "--rm",
        "-e", "CHANNEL_ACCESS_TOKEN",
        "-e", "DESTINATION",
        "ghcr.io/line/line-bot-mcp-server:latest"
      ],
      "env": {
        "CHANNEL_ACCESS_TOKEN": "your_channel_access_token_here",
        "DESTINATION": "your_default_user_id_here"
      }
    }
  }
}

#ステップ6:接続の確認

あなた:「LINEにテストメッセージを送信して、AIからこんにちは」

Claude:LINEアカウントにメッセージを送信します。
[push_text_messageを呼び出し「AIからこんにちは」]
メッセージ送信成功!

#環境変数リファレンス

変数必須説明
CHANNEL_ACCESS_TOKENはいLINE Developers Consoleの長期トークン
DESTINATIONいいえプッシュメッセージのデフォルトユーザーID

設定のサポートが必要ですか?LINEアプリ開発サービスをご覧ください。

#機能とユースケース

接続後、AIエージェントは自然言語コマンドでLINE公式アカウントの操作が可能になります。

#テキストメッセージの送信

プロンプト:「ユーザーU1234567890にメッセージを送信:
ご注文ありがとうございます!追跡番号はTH20260402001です。
配送予定日:2026年4月5日」

#Flex Messageの作成と送信

プロンプト:「春のセール用のFlex Messageを作成してください:
- ヒーロー画像バナー
- タイトル:Spring Collection 2026
- 20%割引バッジ
- 'Shop Now'ボタン(https://shop.example.com)
ユーザーU1234567890に送信」

#実際のユースケースシナリオ

シナリオAIエージェントプロンプトMCPツール
注文確認「発送済み注文を顧客に通知」push_text_message
プロモーション「春セールバナーを全ユーザーに送信」broadcast_flex_message
顧客検索「このユーザーのプロファイルを表示」get_profile
パーソナライズオファー「誕生日クーポンを送信」push_flex_message
クォータ確認「あと何通送信できますか?」get_message_quota

LINE自動化サービスでこれらのワークフローを大規模に自動化する方法を発見してください。

#高度な統合パターン

#MCPとWebhookハンドラーの組み合わせ

双方向通信には、MCPサーバー(送信)とWebhookハンドラー(受信)を組み合わせます:

typescript
// app/api/webhooks/line/route.ts
import { NextRequest, NextResponse } from "next/server";
import crypto from "crypto";

const CHANNEL_SECRET = process.env.LINE_CHANNEL_SECRET!;

function verifySignature(body: string, signature: string): boolean {
  const hash = crypto
    .createHmac("SHA256", CHANNEL_SECRET)
    .update(body)
    .digest("base64");
  return hash === signature;
}

export async function POST(req: NextRequest) {
  const body = await req.text();
  const signature = req.headers.get("x-line-signature") || "";

  if (!verifySignature(body, signature)) {
    return NextResponse.json({ error: "無効な署名" }, { status: 401 });
  }

  const { events } = JSON.parse(body);
  for (const event of events) {
    if (event.type === "message" && event.message.type === "text") {
      await forwardToAIAgent(event);
    }
  }

  return NextResponse.json({ status: "ok" });
}

#マルチエージェントアーキテクチャ

diagram
顧客がLINEでメッセージ送信
       |
       v
  Webhookハンドラー(受信)
       |
       v
  AIルーターエージェント
       |
       +---> セールスエージェント(商品問い合わせ)
       |        |---> MCP: push_flex_message
       |
       +---> サポートエージェント(問題解決)
       |        |---> MCP: push_text_message
       |
       +---> マーケティングエージェント(キャンペーン管理)
                |---> MCP: broadcast_flex_message

#カスタムMCPツールの構築

typescript
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { z } from "zod";

const server = new McpServer({
  name: "custom-line-tools",
  version: "1.0.0",
});

server.tool(
  "send_order_status",
  "注文ステータスの更新と追跡情報をLINEユーザーに送信",
  {
    user_id: z.string().describe("LINE user ID"),
    order_id: z.string().describe("Order ID"),
    status: z.enum(["confirmed", "shipped", "delivered"]),
    tracking_number: z.string().optional(),
  },
  async ({ user_id, order_id, status, tracking_number }) => {
    const flexMessage = buildOrderStatusFlex(order_id, status, tracking_number);
    await lineClient.pushMessage(user_id, flexMessage);
    return { content: [{ type: "text", text: `ステータス送信完了` }] };
  }
);

高度なチャットボットアーキテクチャについてはLINEチャットボット開発チュートリアルをご覧ください。

#ベストプラクティスとセキュリティ

#セキュリティの考慮事項

リスク軽減策実装
トークン漏洩トークンをハードコードしない環境変数とシークレットマネージャーを使用
不正アクセスMCPサーバーのアクセスを制限ローカルまたは認証プロキシの背後で実行
メッセージなりすましWebhook署名を検証x-line-signatureを検証
レート制限LINE APIの制限を遵守トークンバケットまたはスライディングウィンドウ
データ漏洩プロンプト内のデータを最小化機密ユーザーデータをAIエージェントに渡さない

#パフォーマンス最適化

  1. 開発にはstdioトランスポートを使用:最速、オーバーヘッド最小
  2. リモートにはHTTP+SSEを使用:複数のAIエージェント接続を同時にサポート
  3. ユーザープロファイルをキャッシュ:同じユーザーへのget_profileの重複呼び出しを回避
  4. ブロードキャストを賢く:LINEはプランに基づいてブロードキャストメッセージを制限
  5. メッセージクォータを監視:大規模キャンペーン前にget_message_quotaを使用

#LineBot.proで始める

MCPとLINEの統合セットアップには、AIエージェントエコシステムとLINEプラットフォームAPIの両方の理解が必要です。LineBot.proはこのワークフロー全体を簡素化します。

#LineBot.proが提供するもの

  • MCP対応統合:管理された認証情報とモニタリング付きの事前設定済みLINE Bot MCPサーバー
  • AIチャットボットビルダー:NLP、感情分析、多言語サポート内蔵のインテリジェントLINEボット
  • リッチメッセージジェネレーター:Flex Messageをビジュアルまたはプロンプトでデザイン
  • キャンペーン自動化:ブロードキャストのスケジュール、オーディエンスセグメント、メッセージの自動トリガー
  • 分析ダッシュボード:リアルタイムインサイト

#プランと料金

機能無料Starter(299 THB/月)Pro(799 THB/月)
AIメッセージ50/月500/月2,000/月
MCP統合基本フルフル + カスタムツール
Flex Message10/月100/月無制限
リッチメニュー15無制限

#今すぐ構築を始めましょう

  1. 無料アカウントを作成 -- 50無料AIクレジットを入手
  2. LINE公式アカウントを接続 -- ワンクリック統合
  3. MCP統合を有効化 -- AIエージェントのアクセスを設定
  4. メッセージ送信を開始 -- 自然言語でLINEボットを制御

無料トライアルを開始または料金プランを見る

#追加リソース

LineBot.pro

LINEビジネスを自動化する準備はできましたか?

LineBot.proでLINEコミュニケーションの自動化を今すぐ始めましょう。