zendbot-line-mcp-server
Allows interaction with LINE Official Account messaging through an existing console proxy, providing tools to inspect quota, usage, followers, and estimated cost; list known contacts; look up user profiles; and send text messages to one user, multiple users, or all followers (broadcast requires explicit confirmation).
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@zendbot-line-mcp-serversend a LINE push message to U123 saying your booking is confirmed"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
zendbot-line-mcp-server
Remote MCP server that lets Claude (Cowork / claude.ai) send and inspect LINE OA
messages for ทัวริสอัส, by proxying the already-deployed zendbot-line-console
Worker instead of talking to the LINE Messaging API directly.
Claude / Cowork ──MCP (Streamable HTTP)──▶ zendbot-line-mcp-server (this repo)
│ HTTPS + X-Console-Password
▼
zendbot-line-console Worker (existing)
│ Bearer <LINE token>
▼
LINE Messaging APINo new LINE channel token, no duplicated sending logic — this is a thin, auth-gated adapter in front of the console you already run in production.
Tools exposed
Tool | Type | What it does |
| read-only | Quota/usage/followers/estimated cost |
| read-only | Known contacts (userId, name, last seen) |
| read-only | Look up one user's display name by userId |
| write | Text message to ONE user |
| write | Text message to a specific list of userIds |
| write, destructive | Text message to ALL followers — requires |
All five map onto the console's existing /api/dashboard, /api/contacts,
/api/profile, and /api/send (push/multicast/broadcast) routes.
Related MCP server: remote-mcp-server-authless
1. Configure
Edit wrangler.jsonc → vars.CONSOLE_BASE_URL to your deployed
zendbot-line-console Worker URL (the same one the console's frontend calls),
e.g.:
"vars": {
"CONSOLE_BASE_URL": "https://zendbot-line-console.<your-account>.workers.dev"
}2. Install & set secrets
npm install
# Bearer token Cowork/claude.ai will present to THIS server.
# Generate one yourself, e.g.: openssl rand -hex 32
npx wrangler secret put MCP_AUTH_TOKEN
# Same value as the CONSOLE_PASSWORD secret already set on zendbot-line-console.
npx wrangler secret put CONSOLE_PASSWORDThese are two different secrets on purpose:
MCP_AUTH_TOKENprotects this MCP server from anyone else calling it.CONSOLE_PASSWORDis what this server forwards to the console — it never touches the LINE channel access token itself, which stays only on the console Worker as today.
3. Deploy
npx wrangler deployNote the URL it prints, e.g. https://zendbot-line-mcp-server.<account>.workers.dev.
The MCP endpoint is the Worker root (no /mcp suffix needed — the whole
fetch handler is the MCP handler).
4. Test locally (optional but recommended)
npx wrangler devIn another terminal:
npx @modelcontextprotocol/inspectorPoint the Inspector at http://localhost:8787 with a Streamable HTTP
transport and an Authorization: Bearer <MCP_AUTH_TOKEN> header, then try
line_get_dashboard first (read-only, safe) before any send tool.
5. Register as a custom connector in claude.ai / Cowork
claude.ai → Settings → Connectors → Add custom connector
URL: the Worker URL from step 3
Auth: Bearer token = the
MCP_AUTH_TOKENyou set in step 2Save, then enable it for the chat/session you want to use it in
Cowork will then list line_get_dashboard, line_send_push_message, etc. as
callable tools.
Safety notes
line_send_broadcast_messagewill refuse to send unlessconfirm: trueis explicitly passed — treat this the same as any other "post publicly" action: get explicit approval for the exact message text before approving that confirm flag.Nothing here reads or stores the LINE channel access token — it stays on
zendbot-line-consoleexactly as today (CLEARKEY principle preserved).Rotate
MCP_AUTH_TOKENany time by re-runningnpx wrangler secret put MCP_AUTH_TOKENand updating the connector in claude.ai.
Extending
Natural next tools to add (same pattern — wrap another /api/* route):
line_send_flex_message (booking/quote/invoice worksheets), line_send_sticker
(official or brand stickers), line_list_followers. Add each as a
server.registerTool(...) block in src/index.ts following the existing ones.
This server cannot be deployed
Maintenance
Related MCP Connectors
- platform7nOAuthtech.p7n
Connect Claude to your Platform7n workspaces — chat, links, and tasks. One-click OAuth.
Drive your real WhatsApp inbox from Claude — send, reply, label, assign, and triage via TimelinesAI.
GA4, Google Ads and Search Console in Claude. Read-only OAuth, multi-account for agencies.
- QuallaaOAuthcom.quallaa
Talk to your public-facing AI from any MCP client — Claude, ChatGPT, Cursor, Cline, Windsurf.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Cloudflare Worker that provides API access to Postman collections and environments via the Claude AI MCP interface, enabling Claude to assist with API testing, documentation, and management tasks.13 npm3ISC
- FlicenseNot gradedqualityCmaintenanceA remote MCP server deployed on Cloudflare Workers without authentication. Enables connecting MCP tools from AI Playground or Claude Desktop.-
- AlicenseAqualityBmaintenanceEnables managing Cloudflare Workers through Claude, with read-only tools for listing and viewing workers, and planned deployment of static sites and worker scripts via natural language.227 npm1MIT
- FlicenseNot gradedqualityBmaintenanceDeploys a remote MCP server on Cloudflare Workers without authentication, enabling tool use via remote MCP clients like Cloudflare AI Playground or Claude Desktop through a proxy.-