
LINE Bot MCP Server: Setup for Claude Desktop, Cursor and Other Apps
Lets Claude, Cursor and other assistants send LINE messages and manage your LINE Official Account.
This is the LINE Messaging API server from LINE's own GitHub organization. It lets your assistant send text and rich messages to one person or to every follower, look up profiles, and create or change rich menus. It runs on your computer and needs a channel access token from your LINE Official Account. LINE calls this a preview, and the broadcast tools message all your followers at once.
Good for
- Shop and service owners who message customers through a LINE Official Account
- Developers testing LINE Messaging API calls from their assistant
- Teams that run LINE rich menus and need to create or swap them quickly
Works in
12 should work
Tap an app to see how to set it up and any known problems.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Supports local MCP servers.
Client does not support this transport.
Client does not support this transport.
Install LINE Bot MCP
Claude Desktop
- 1
Have these values ready, then replace the placeholders in the snippet.
CHANNEL_ACCESS_TOKEN Required Long-lived channel access token for your LINE Official Account. DESTINATION_USER_ID Optional Default recipient user ID when a tool call has no userId. NPM_CONFIG_IGNORE_SCRIPTS Optional README sets it to true so npm skips install scripts. - 2
Open this file. Create it if it does not exist.
- 3
Add this entry. If the file already lists servers, add it next to them.
json{ "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" } } } } - 4
Quit and reopen Claude Desktop to load it.
Requires Node.js 22 or later, LINE Official Account with Messaging API.
The README sets NPM_CONFIG_IGNORE_SCRIPTS=true, which stops npm from running install scripts for this package and its dependencies. The first method is the README snippet as written. The second adds -y so npx does not wait for a prompt, which makes it generated. Our reading: puppeteer downloads its browser in an install script, so with scripts ignored create_rich_menu may need a Chrome you point to with PUPPETEER_EXECUTABLE_PATH (the source reads that variable).
From the project README. Source.
Tools
Sends a text message to one LINE user
Sends a plain text message from your Official Account to one user. The user ID comes from the call or from the default recipient you set in the config.
Try: “Send "Your order has shipped" to user U1234.”
Write ·
push_text_messageSends a rich card message to one LINE user
Sends a flex message, a card or carousel layout with buttons and images, to one user. It needs fallback text for devices that cannot show it.
Try: “Send a product carousel to user U1234.”
Write ·
push_flex_messageSends a text message to all followers
Sends a plain text message to every user who has added your Official Account. The tool warns that everyone gets it.
Try: “Broadcast "We close at 5 pm today" to all followers.”
Write ·
broadcast_text_messageSends a rich card message to all followers
Sends a flex message to every user who has added your Official Account.
Try: “Broadcast the new menu card to all followers.”
Write ·
broadcast_flex_messageLooks up a LINE user's profile
Returns a user's display name, picture URL, status message and language.
Try: “Get the profile of user U1234.”
Network ·
get_profileShows your monthly message limit and use
Returns the monthly message limit of your Official Account and how much has been used.
Try: “How many messages have I used this month?”
Network ·
get_message_quotaLists your rich menus
Returns the rich menus (tap menus at the bottom of the chat) set up for your Official Account.
Try: “List my rich menus.”
Network ·
get_rich_menu_listDeletes a rich menu
Deletes one rich menu from your Official Account by its ID.
Try: “Delete rich menu richmenu-123.”
Delete ·
delete_rich_menuMakes a rich menu the default
Sets an existing rich menu as the default for all users.
Try: “Make richmenu-123 the default.”
Write ·
set_rich_menu_defaultRemoves the default rich menu
Cancels the current default rich menu, so users see none.
Try: “Remove the default rich menu.”
Write ·
cancel_rich_menu_defaultCreates a rich menu with a generated image
Creates a rich menu with 1 to 6 actions, draws its image in a headless browser, uploads the image and sets the menu as the default. It writes a temporary HTML file and removes it afterwards.
Try: “Create a rich menu "Shop" with buttons for Menu, Hours and Call.”
Write ·
create_rich_menuLists the user IDs of your followers
Returns the user IDs of people who added your Official Account, one page at a time, so you can message them.
Try: “Get the first 100 follower IDs.”
Network ·
get_follower_ids
Read from the source code
Permissions
high risk · 5 things to watch
High risk
It can message every follower of your LINE Official Account and delete rich menus, and it has no read-only mode. Use it on a test account first, and have the assistant show you any broadcast text before it sends.
What it can do
- Read your data
- Create and change things
- Delete things
- Read-only mode
Watch out for
It can message every follower at once
broadcast_text_message and broadcast_flex_message send to everyone who has added your Official Account. Ask the assistant to show you the text first (our advice). github.com
It sends messages as your account
push_text_message and push_flex_message send real messages to a user you name. A wrong user ID reaches the wrong person. github.com
It can delete and replace rich menus
delete_rich_menu removes a menu, and create_rich_menu sets the new menu as the default for everyone. Check the menu list first. github.com
The token has full access to the account
The channel access token sits in your MCP config in plain text. Our advice: keep that file out of shared repos. github.com
Rich menu images are drawn with a headless browser
create_rich_menu renders its image with Puppeteer and writes a temporary HTML file to your temp folder, then deletes it. github.com
Security advisories
No published security advisories as of Nov 1, 2026.
Technical details
| Talks to | LINE Messaging API (api.line.me) |
|---|---|
| Sign-in and keys | CHANNEL_ACCESS_TOKEN sits in your MCP client config on your computer and is sent to LINE. DESTINATION_USER_ID is optional. |
Questions
Is the LINE Bot MCP server official?
Yes. It is published by LINE's own GitHub organization (line) for the LINE Messaging API. The README calls it a preview version for experimental use, with possibly incomplete functionality and support.
What do I need to use it?
A LINE Official Account with the Messaging API turned on, a channel access token for it, and Node.js 22 or later. Put the token in CHANNEL_ACCESS_TOKEN.
What is DESTINATION_USER_ID for?
It sets a default recipient. Without it, you have to give a user ID each time you ask for a push message or a profile.
Can it send to all my followers?
Yes. The two broadcast tools send a text or a flex message to everyone who has added your Official Account.
Can I use it read-only?
No read-only switch is documented. Four tools only read (get_profile, get_message_quota, get_rich_menu_list, get_follower_ids), and the other eight send messages or change rich menus. Use a test account if you want to try it safely.
Can it run with Docker?
Yes, but you build the image yourself from the repository with docker build -t line/line-bot-mcp-server ., then point your config at it. The README shows the full config. The npx route in the install box needs no build.
Is it free?
The server is open source under Apache-2.0 and free. Sending messages follows your LINE Official Account's own plan and monthly message limit, which the quota tool reads.
Information
updated Nov 2, 2026
- Publisher
- Official
- Package
@line/line-bot-mcp-server- Registry
- npm
- Transport
- stdio
- Auth
- token in env
- Version
- 0.5.0
- License
- Apache-2.0
- Last commit
- Oct 30, 2026
Sources
Docs, issue trackers and discussions this page is built from. Issues, quotes and findings above link to their own source.
Show all 5Hide
- github.com · github.com
- www.npmjs.com · npmjs.com
- github.com · github.com
- github.com · github.com
- github.com · github.com