- 1. LINE MCP คืออะไร
- 2. Architecture
- 3. สิ่งที่ต้องเตรียม
- 4. เตรียม LINE Official Account และ Messaging API
- 5. ติดตั้ง LINE Bot MCP Server ด้วย npx
- 6. ตั้งค่า MCP Client
- 7. ทดสอบส่ง Text Message
- 8. ส่ง Flex Message
- 9. ทดสอบด้วย MCP Inspector
- 10. ใช้งานผ่าน Docker
- 11. LINE MCP กับ Webhook
- 12. ตัวอย่าง Use Case: DevOps Notification Agent
- 13. Production Checklist
- 14. สรุป
- แหล่งข้อมูล
Workshop ภาษาไทยสำหรับเรียนรู้การเชื่อม AI Agent กับ LINE Messaging API ผ่าน Model Context Protocol (MCP)
#1. LINE MCP คืออะไร
LINE Bot MCP Server เป็น MCP Server ที่เชื่อม AI Agent หรือ MCP Client เข้ากับ LINE Official Account ผ่าน LINE Messaging API ทำให้ LLM สามารถเรียกความสามารถของ LINE ในรูปแบบ Tool ได้ เช่น ส่งข้อความ Text และ Flex Message ไปยังผู้ใช้
Repository ทางการ: https://github.com/line/line-bot-mcp-server
หมายเหตุ: โครงการ LINE Bot MCP Server ระบุว่าเป็น Preview เหมาะสำหรับการทดลองและ Prototype และควรตรวจสอบเวอร์ชัน/ข้อจำกัดก่อนใช้ Production
#2. Architecture
flowchart LR
U[Developer / User] --> A[AI Agent / MCP Client]
A -->|MCP| M[LINE Bot MCP Server]
M -->|Messaging API| L[LINE Platform]
L --> R[LINE User]
Agent ไม่จำเป็นต้องเขียน HTTP request ไปยัง Messaging API ทุกครั้ง แต่เลือก MCP Tool ที่เหมาะสมตามคำสั่งของผู้ใช้
#3. สิ่งที่ต้องเตรียม
- LINE Official Account
- Messaging API Channel
- Channel Access Token
- LINE User ID สำหรับผู้รับ (กรณีต้องการกำหนดผู้รับเริ่มต้น)
- Node.js 22 หรือใหม่กว่า ตาม requirement ปัจจุบันของ LINE Bot MCP Server
- MCP Client / AI Agent ที่รองรับ MCP
ตรวจสอบ Node.js:
node --version
npm --version
#4. เตรียม LINE Official Account และ Messaging API
สร้างหรือเลือก LINE Official Account และเปิดใช้ Messaging API จาก LINE Developers Console จากนั้นเตรียม Channel Access Token
Channel Access Token เป็น credential สำคัญที่ใช้อนุญาตให้ application เรียก Messaging API ในนามของ channel
#Security
ห้ามนำ token ไปใส่ใน source code ที่ push ขึ้น public repository เช่น
// ไม่ควรทำ
const token = "YOUR_REAL_CHANNEL_ACCESS_TOKEN";
ควรใช้ environment variable หรือ secret management ของระบบแทน และ revoke token ทันทีหากสงสัยว่ารั่วไหล
#5. ติดตั้ง LINE Bot MCP Server ด้วย npx
LINE มี package สำหรับรัน MCP Server ผ่าน npx:
npx @line/line-bot-mcp-server
โดยทั่วไป MCP Client จะเป็นผู้ start process นี้จาก configuration
#6. ตั้งค่า MCP Client
ตัวอย่าง configuration:
{
"mcpServers": {
"line-bot": {
"command": "npx",
"args": [
"@line/line-bot-mcp-server"
],
"env": {
"NPM_CONFIG_IGNORE_SCRIPTS": "true",
"CHANNEL_ACCESS_TOKEN": "YOUR_CHANNEL_ACCESS_TOKEN",
"DESTINATION_USER_ID": "YOUR_LINE_USER_ID"
}
}
}
}
ตัวแปรสำคัญ:
CHANNEL_ACCESS_TOKEN— จำเป็นสำหรับการเรียก LINE Messaging APIDESTINATION_USER_ID— ผู้รับเริ่มต้น กรณี Tool call ไม่ระบุuserId
ตำแหน่งไฟล์ configuration แตกต่างกันตาม MCP Client จึงควรตรวจสอบเอกสารของ Client ที่ใช้งาน
#7. ทดสอบส่ง Text Message
เมื่อ MCP Client เชื่อมต่อ LINE Bot MCP Server สำเร็จ Agent จะสามารถเห็น Tool เช่น push_text_message
ลอง Prompt:
ส่งข้อความ LINE ไปยังผู้รับเริ่มต้นว่า
"ทดสอบ LINE MCP สำเร็จ"
Flow:
sequenceDiagram
participant U as User
participant A as AI Agent
participant M as LINE MCP
participant L as LINE Messaging API
participant R as LINE User
U->>A: ส่ง LINE ว่า "ทดสอบ LINE MCP สำเร็จ"
A->>M: push_text_message
M->>L: Push Message API
L->>R: LINE Message
#8. ส่ง Flex Message
LINE Bot MCP Server มี Tool สำหรับ Flex Message เช่น push_flex_message ซึ่งเหมาะกับ notification ที่ต้องการ layout มากกว่า plain text
ตัวอย่าง Prompt:
สร้าง Flex Message แจ้งสถานะ Deployment
Service: payment-api
Environment: Production
Status: Success
แล้วส่งผ่าน LINE
AI Agent สามารถแปลง intent เป็นข้อมูลที่ Tool ต้องการและเรียก LINE MCP ต่อไป
#9. ทดสอบด้วย MCP Inspector
Repository ทางการแนะนำ MCP Inspector สำหรับทดสอบและ debug server ใน local environment
git clone https://github.com/line/line-bot-mcp-server.git
cd line-bot-mcp-server
npm install
npm run build
จากนั้นรัน Inspector:
npx @modelcontextprotocol/inspector node dist/index.js \
-e CHANNEL_ACCESS_TOKEN="YOUR_CHANNEL_ACCESS_TOKEN" \
-e DESTINATION_USER_ID="YOUR_DESTINATION_USER_ID"
ใช้ Inspector เพื่อตรวจสอบรายการ Tools, input schema และทดลอง Tool call ก่อนเชื่อมกับ Agent จริง
#10. ใช้งานผ่าน Docker
อีกทางเลือกคือ build MCP Server เป็น Docker image
git clone https://github.com/line/line-bot-mcp-server.git
cd line-bot-mcp-server
docker build -t line/line-bot-mcp-server .
ตัวอย่าง MCP configuration:
{
"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": "YOUR_CHANNEL_ACCESS_TOKEN",
"DESTINATION_USER_ID": "YOUR_LINE_USER_ID"
}
}
}
}
#11. LINE MCP กับ Webhook
MCP และ Webhook ทำหน้าที่คนละทิศทางใน architecture ทั่วไป
#Agent ส่งข้อมูลไป LINE
AI Agent
↓
LINE MCP Server
↓
LINE Messaging API
↓
LINE User
#ผู้ใช้ส่งข้อมูลเข้าระบบ
LINE User
↓
LINE Platform
↓ HTTPS POST
Webhook Endpoint
↓
Application / AI Agent
เมื่อเกิด event เช่นผู้ใช้ส่งข้อความ LINE Platform จะส่ง webhook event ไปยัง HTTPS endpoint ที่กำหนดไว้
ดังนั้นระบบ Agentic LINE Bot แบบสองทางอาจใช้ทั้ง Webhook และ MCP ร่วมกัน
flowchart LR
USER[LINE User] -->|Message| LINE[LINE Platform]
LINE -->|Webhook| API[Webhook API]
API --> AGENT[AI Agent]
AGENT --> TOOLS[Other MCP Tools / RAG / Database]
AGENT --> LMCP[LINE MCP]
LMCP -->|Messaging API| LINE
LINE --> USER
#12. ตัวอย่าง Use Case: DevOps Notification Agent
สมมติ Agent มี Tools สำหรับ Kubernetes และ LINE:
ตรวจสอบ namespace production
ถ้ามี Pod อยู่ในสถานะ CrashLoopBackOff
ให้สรุปชื่อ Pod, namespace และสาเหตุ
จากนั้นส่งรายงานผ่าน LINE
Architecture:
flowchart LR
A[AI Agent] --> K[Kubernetes Tool]
K --> A
A --> D{พบปัญหา?}
D -->|Yes| M[LINE MCP]
M --> L[LINE User]
D -->|No| E[Finish]
แนวคิดเดียวกันสามารถประยุกต์กับ GitHub Actions, Jenkins, Prometheus, Grafana, Database Monitoring หรือระบบ Help Desk ได้
#13. Production Checklist
ก่อนใช้จริงควรพิจารณา:
- เก็บ Channel Access Token ใน Secret Manager / Environment Variable
- ไม่ commit credential ลง Git
- กำหนดสิทธิ์และผู้รับข้อความให้ชัดเจน
- Validate input ก่อน Tool call
- จำกัด action ที่ Agent สามารถเรียกได้
- เพิ่ม logging และ audit trail
- เพิ่ม human approval สำหรับ action สำคัญ
- ตรวจสอบ Messaging API rate limits และข้อจำกัดล่าสุด
- ตรวจสอบ signature ของ LINE webhook ก่อนประมวลผล
- ออกแบบ retry / timeout / error handling
- Revoke credential เมื่อสงสัยว่ารั่วไหล
#14. สรุป
LINE MCP เปลี่ยน LINE Messaging API ให้เป็น Tool ที่ AI Agent เรียกใช้ผ่านมาตรฐาน MCP ได้ ทำให้การเชื่อม Agent กับช่องทาง LINE เป็น modular architecture และสามารถประกอบเข้ากับ RAG, Database, DevOps, Monitoring และ Multi-Agent System ได้ง่ายขึ้น
เส้นทางเรียนรู้ที่แนะนำ:
LINE Official Account
↓
Messaging API
↓
Channel Access Token
↓
LINE Bot MCP Server
↓
MCP Inspector
↓
AI Agent / MCP Client
↓
Text + Flex Message
↓
Webhook
↓
Agentic LINE Bot
#แหล่งข้อมูล
- LINE Bot MCP Server: https://github.com/line/line-bot-mcp-server
- LINE Messaging API: https://developers.line.biz/en/docs/messaging-api/
- Channel Access Token: https://developers.line.biz/en/docs/basics/channel-access-token/
หัวข้อ Workshop: การใช้งาน LINE MCP: เชื่อม AI Agent กับ LINE Official Account