教程

LINE MCP伺服器:使用Model Context Protocol將AI代理連接到LINE

完整教學:使用官方LINE Bot MCP Server將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 Server 的出現,這一切已經改變。

MCP現在是 AI代理整合的事實標準,每月SDK下載量超過 9,700萬次,生態系統中有 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 Server)
       |
       v
  LINE Messaging API
       |
       v
  LINE官方帳號 --> 用戶

#關鍵概念

概念描述範例
MCP主機發起連接的AI應用程式Claude Desktop、Cursor IDE
MCP客戶端主機內的協議處理器管理連接生命週期
MCP伺服器通過MCP公開工具的服務LINE Bot MCP Server
工具伺服器提供的特定操作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 Server概覽

LINE Bot MCP Server 是LINE株式會社在 github.com/line/line-bot-mcp-server 發布的官方實現。它橋接AI代理和LINE Messaging API,實現通過自然語言控制LINE官方帳號。

#支援的工具

工具描述參數
push_text_message向用戶發送文字訊息user_idmessage
push_flex_message發送Flex Messageuser_idflex_contentalt_text
broadcast_text_message向所有追蹤者發送文字message
broadcast_flex_message廣播Flex Messageflex_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:

「在LINE上向用戶U1234567890發送歡迎訊息:
'歡迎來到我們的商店!查看我們的新春季系列,
本週享有20%折扣。'」

// AI代理通過MCP自動調用push_text_message

這種典範轉移意味著業務運營者、行銷人員和非技術團隊成員可以通過對話式AI控制LINE機器人。探索我們的LINE聊天機器人服務

#設定與配置指南

設定LINE Bot MCP Server需要兩個主要組件:LINE API憑證和MCP伺服器本身。

#步驟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:在Claude Desktop中配置Docker

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_TOKENLINE 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 Handler結合

要實現雙向通信,將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 Handler(入站)
       |
       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 Server,帶有管理的憑證和監控
  • AI聊天機器人構建器:創建智能LINE機器人,內建NLP、情感分析和多語言支援
  • 豐富訊息生成器:視覺化或用AI提示設計Flex Message
  • 活動自動化:排程廣播、受眾細分、自動觸發訊息
  • 分析儀表板:即時洞察

#方案與定價

功能免費Starter(299 THB/月)Pro(799 THB/月)
AI訊息50/月500/月2,000/月
MCP整合基礎完整完整 + 自定義工具
Flex Message10/月100/月無限
Rich Menu15無限

#今天就開始構建

  1. 創建免費帳號 —— 獲取50個免費AI積分
  2. 連接您的LINE官方帳號 —— 一鍵整合
  3. 啟用MCP整合 —— 配置AI代理存取您的LINE帳號
  4. 開始發送訊息 —— 用自然語言控制您的LINE機器人

開始免費試用查看定價方案

#更多資源

LineBot.pro

准备好自动化您的LINE业务了吗?

立即使用LineBot.pro开始自动化您的LINE通信。