line-desktop-mcp
Unofficial community project. Not affiliated with, endorsed by, or supported by LINE Corporation or LY Corporation. Uses your own logged-in account through the LINE Chrome Extension in read-only mode.
FastMCP server for LINE Desktop automation. Wraps line-ext-msg (read-only LINE Chrome Extension reader) as MCP tools.
LINE tools
All read-only, side-effect free (no files written, no media downloaded). Every result uses an ok/data/error envelope; failures carry a next field telling the AI what to ask the user to do.
| Tool | Description |
|---|---|
line_status |
5 readiness checks (Chrome, attach, extension, page, login) |
wait_login |
Open Chrome and wait up to 3 min for the user to log in |
list_rooms |
Chat rooms, optional unread_only / query filter |
get_messages |
Latest messages, optional room ref + date/sender/keyword filters |
unread_digest |
Unread rooms with latest preview in one call |
unread_full |
Unread rooms with message bodies, with per-room progress |
search_messages |
Keyword search inside REQUIRED rooms scope, with per-room progress |
First run opens a separate Chrome profile: call line_status, log in with QR/email in the window that opens, then call wait_login. Keep that Chrome window open afterwards: closing it always requires logging in again (extension token is restart-scoped). Room ref accepts index, data-mid, or name substring (prefer data-mid or name: index shifts when rooms reorder). Dates use YYYY-MM-DD. search_messages never scans all rooms: pass candidates from list_rooms first. Message reads backfill by scrolling up to limit (bounded ~8s); pass scroll=false for fast on-screen-only reads.
Run (dev)
uv sync
uv run line-desktop-mcp --help
uv run line-desktop-mcp
Run with HTTP transport for remote access:
uv run line-desktop-mcp --transport http --port 8000
Run via FastMCP CLI:
uv run fastmcp run src/line_desktop_mcp/server.py:mcp
Use without cloning (after PyPI release)
uvx line-desktop-mcp --help
pipx install line-desktop-mcp
pipx run line-desktop-mcp --help
Test a local wheel before release:
uv build
uvx --from ./dist/line_desktop_mcp-1.0.0-py3-none-any.whl line-desktop-mcp --help
Claude Desktop config
{
"mcpServers": {
"line-desktop": {
"command": "uvx",
"args": ["line-desktop-mcp"]
}
}
}
For a local checkout use uv:
{
"mcpServers": {
"line-desktop": {
"command": "uv",
"args": ["--directory", "D:/path/to/line-desktop-mcp", "run", "line-desktop-mcp"]
}
}
}
Structure
src/line_desktop_mcp/
server.py # FastMCP("line-desktop-mcp") wiring only
cli.py # argparse + mcp.run(), installed as `line-desktop-mcp`
tools/line_msg.py # LINE tools (status, login wait, rooms, messages, search)
Add a new tool domain by creating tools/<domain>.py with a register_<domain>_tools(mcp) function, then calling it from server.py.
Publish
uv build
uv publish
Requires requires-python = ">=3.10" and the line-desktop-mcp console script defined in pyproject.toml.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file line_desktop_mcp-1.0.0.tar.gz.
File metadata
- Download URL: line_desktop_mcp-1.0.0.tar.gz
- Upload date:
- Size: 140.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2339d568e1bc6705f703641bb0fc191efc0ad5ba7f52d77776f41a622637c8f2
|
|
| MD5 |
38739ad48b866c77e1c4e9703f806508
|
|
| BLAKE2b-256 |
31e36f857d8db4dfb651786140b9b1544ac18dc6b802ec3fb5854df9496d46a3
|
File details
Details for the file line_desktop_mcp-1.0.0-py3-none-any.whl.
File metadata
- Download URL: line_desktop_mcp-1.0.0-py3-none-any.whl
- Upload date:
- Size: 8.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
92d83fe1eebf3d72a61e0ba8df5179c2938499d9bd6f3db9ef66d838eb3ce36c
|
|
| MD5 |
08bab090a195ac58063fc27f7b603305
|
|
| BLAKE2b-256 |
69d9a65733bb09c6219d2013422bf645c3a6936e940c090273e8bb04a71d76d9
|