LINE Official Account
官方整合 LINE Messaging API,將 AI Agent 連接至 LINE Official Account。
你可以用 LINE Official Account MCP 做什麼?
- 傳送文字訊息 — 透過
push_text_message將純文字訊息推送给特定使用者,或使用broadcast_text_message向所有追蹤者廣播。 - 傳送豐富的 Flex 訊息 — 使用
push_flex_message或broadcast_flex_message,向個別使用者或廣播傳送高度可自訂的泡泡或輪播訊息。 - 管理豐富選單 — 透過
create_rich_menu、get_rich_menu_list及相關工具,建立、列出、設為預設、取消預設或刪除豐富選單,並支援 postback、URI 和相機等動作。 - 取得使用者和群組資訊 — 使用
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 Agent 連接到 LINE 官方帳號。

[!NOTE] 此儲存庫以預覽版本提供。我們提供它供實驗用途,但請注意它可能不包含完整功能或全面支援。
工具
-
push_text_message
- 透過 LINE 向使用者推送簡單的文字訊息。
- 輸入:
userId(string?):接收訊息的使用者 ID。預設為 DESTINATION_USER_ID。必須設定userId或DESTINATION_USER_ID其中一個。message.text(string):要傳送給使用者的純文字內容。
-
push_flex_message
- 透過 LINE 向使用者推送高度可自訂的 Flex 訊息。
- 輸入:
userId(string?):接收訊息的使用者 ID。預設為 DESTINATION_USER_ID。必須設定userId或DESTINATION_USER_ID其中一個。message.altText(string):當 Flex 訊息無法顯示時顯示的替代文字。message.contents(any):Flex 訊息的內容。這是一個定義訊息版面配置和元件的 JSON 物件。message.contents.type(enum):容器的類型。'bubble' 用於單一容器,'carousel' 用於多個可滑動的 bubble。
-
broadcast_text_message
- 透過 LINE 向所有已追蹤您 LINE 官方帳號的使用者廣播簡單的文字訊息。
- 輸入:
message.text(string):要傳送給使用者的純文字內容。
-
broadcast_flex_message
- 透過 LINE 向所有已加入您 LINE 官方帳號的使用者廣播高度可自訂的 Flex 訊息。
- 輸入:
message.altText(string):當 Flex 訊息無法顯示時顯示的替代文字。message.contents(any):Flex 訊息的內容。這是一個定義訊息版面配置和元件的 JSON 物件。message.contents.type(enum):容器的類型。'bubble' 用於單一容器,'carousel' 用於多個可滑動的 bubble。
-
get_profile
- 取得 LINE 使用者的詳細個人資料資訊,包括顯示名稱、個人圖片 URL、狀態訊息和語言。
- 輸入:
userId(string?):要取得其個人資料的使用者 ID。預設為 DESTINATION_USER_ID。
-
get_message_quota
- 取得 LINE 官方帳號的訊息配額和使用量。這會顯示每月訊息限制和目前使用量。
- 輸入:
- 無
-
get_rich_menu_list
- 取得與您 LINE 官方帳號關聯的 Rich Menu 清單。
- 輸入:
- 無
-
delete_rich_menu
- 從您的 LINE 官方帳號刪除 Rich Menu。
- 輸入:
richMenuId(string):要刪除的 Rich Menu ID。
-
set_rich_menu_default
- 將 Rich Menu 設定為預設 Rich Menu。
- 輸入:
richMenuId(string):要設定為預設的 Rich Menu ID。
-
cancel_rich_menu_default
- 取消預設 Rich Menu。
- 輸入:
- 無
-
create_rich_menu
- 根據指定的動作建立 Rich Menu。產生並上傳圖片。設定為預設。
- 輸入:
chatBarText(string):顯示在聊天列中的文字,也用作 Rich Menu 名稱。actions(array):Rich Menu 的動作。您可以指定最少 1 個到最多 6 個動作。每個動作可以是以下類型之一:postback:用於傳送 postback 動作message:用於傳送文字訊息uri:用於開啟 URLdatetimepicker:用於開啟日期/時間選擇器camera:用於開啟相機cameraRoll:用於開啟相機膠卷location:用於傳送目前位置richmenuswitch:用於切換到另一個 Rich Menuclipboard:用於複製文字到剪貼簿
-
get_follower_ids
- 取得已將 LINE 官方帳號加入好友的使用者 ID 清單。這讓您無需手動準備即可取得使用者 ID 來傳送訊息。
- 輸入:
start(string?):用於取得下一組使用者 ID 的接續權杖。在先前回應的next屬性中傳回。limit(number?):單一請求中要取得的使用者 ID 最大數量。
-
get_group_summary
- 使用群組 ID 取得群組聊天摘要,包括群組 ID、群組名稱和群組圖示 URL。
- 輸入:
groupId(string):目標群組聊天的群組 ID。
安裝(使用 npx)
需求:
- Node.js v22 或更新版本
步驟 1:建立 LINE 官方帳號
此 MCP 伺服器使用 LINE 官方帳號。如果您沒有,請依照此說明建立。
如果您已有 LINE 官方帳號,請依照此說明為您的 LINE 官方帳號啟用 Messaging API。
步驟 2:設定 AI Agent
請為 Claude Desktop 或 Cline 等 AI Agent 新增以下設定。
設定環境變數或引數如下:
CHANNEL_ACCESS_TOKEN:(必填) 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 Agent
請為 Claude Desktop 或 Cline 等 AI Agent 新增以下設定。
設定環境變數或引數如下:
mcpServers.args:(必填)line-bot-mcp-server的路徑。CHANNEL_ACCESS_TOKEN:(必填) 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"
這將啟動 MCP Inspector 介面,您可以在其中與 LINE Bot MCP Server 工具互動並測試其功能。
版本控制
此專案遵循語意化版本控制
貢獻
請在貢獻前查看 CONTRIBUTING。