Python LINE MCP Server

by amornpan

Not rated
GitHub

About

An MCP server for accessing and interacting with LINE Bot messages.

Details

Author
amornpan
Categories
Communication, API

Setup

Install Python LINE MCP Server in your MCP client (Claude Desktop, Cursor, Windsurf, and others).

Repository: https://github.com/amornpan/py-mcp-line

Follow the installation instructions in the repository README, then restart your MCP client.

An MCP server for accessing and interacting with LINE Bot messages.

A Model Context Protocol server implementation in Python that provides access to LINE Bot messages. This server enables Language Models to read and analyze LINE conversations through a standardized interface.

- Asynchronous operation using Python'sasyncio
- Environment-based configuration usingpython-dotenv
- Comprehensive logging system
- LINE Bot webhook event handling
- Message storage in JSON format
- FastAPI integration for API endpoints
- Pydantic models for data validation
- Support for text, sticker, and image messages

- Python 3.8+
- Required Python packages:

- fastapi
- pydantic
- python-dotenv
- mcp-server
- line-bot-sdk
- uvicorn

git clone https://github.com/amornpan/py-mcp-line.git cd py-mcp-line pip install -r requirements.txt
PY-MCP-LINE/ ├── src/ │ └── line/ │ ├── __init__.py │ └── server.py ├── data/ │ └── messages.json ├── tests/ │ ├── __init__.py │ └── test_line.py ├── .env ├── .env.example ├── .gitignore ├── README.md ├── Dockerfile └── requirements.txt

- src/line/- Main source code directory

- __init__.py- Package initialization
- server.py- Main server implementation

- __init__.py- Test package initialization
- test_line.py- LINE functionality tests

LINE_CHANNEL_SECRET=your_channel_secret LINE_ACCESS_TOKEN=your_access_token SERVER_PORT=8000 MESSAGES_FILE=data/messages.json
@app.list_resources() async def list_resources() -> list[Resource]

- Lists available message types from the LINE Bot
- Returns resources with URIs in the formatline://<message_type>/data
- Includes resource descriptions and MIME types

@app.read_resource() async def read_resource(uri: AnyUrl) -> str

- Reads messages of the specified type
- Accepts URIs in the formatline://<message_type>/data
- Returns messages in JSON format
- Supports filtering by date, user, or content

Add to your Claude Desktop configuration:

On MacOS:~/Library/Application Support/Claude/claude_desktop_config.jsonOn Windows:%APPDATA%/Claude/claude_desktop_config.json

{ "mcpServers": { "line": { "command": "python", "args": [ "server.py" ], "env": { "LINE_CHANNEL_SECRET": "your_channel_secret", "LINE_ACCESS_TOKEN": "your_access_token", "SERVER_PORT": "8000", "MESSAGES_FILE": "data/messages.json" } } } }

The server implements comprehensive error handling for:

- Webhook validation failures
- Message storage errors
- Resource access errors
- URI validation
- LINE API response errors

All errors are logged and returned with appropriate error messages.

- Environment variable based configuration
- LINE message signature validation
- Proper error handling
- Input validation through Pydantic

Feel free to reach out to me if you have any questions about this project or would like to collaborate!

Made with ❤️ by Amornpan Phornchaicharoen

fastapi>=0.104.1 pydantic>=2.10.6 uvicorn>=0.34.0 python-dotenv>=1.0.1 line-bot-sdk>=3.5.0 anyio>=4.5.0 mcp==1.2.0

These versions have been tested and verified to work together. The key components are:

- fastapianduvicornfor the API server
- pydanticfor data validation
- line-bot-sdkfor LINE Bot integration
- mcpfor Model Context Protocol implementation
- python-dotenvfor environment configuration
- anyiofor asynchronous I/O support

- LINE Developers for the LINE Messaging API
- Model Context Protocol community
- Python FastAPI community
- Contributors to the python-dotenv project

Enables seamless integration with communication platform that allows you to reach your customers globally across any channel.

Interact with any other SaaS applications on behalf of your customers.

Official MCP Server to interact with Pearl API. Connect your AI Agents with 12,000+ certified experts instantly.

Platfone - Receive SMS & Virtual Numbers MCP

Virtual phone number platform for AI agents — rent numbers across 200+ countries, receive SMS, and manage the full activation lifecycle

Send emails directly from your editor using the Resend API.

Sendmux is an email inbox API and email API for AI agents.

Sinch Engage (Sinch MessageMedia in AU) MCP server, which provides Sinch Engage APIs as MCP tools.

Wavix is a global communications platform offering APIs for voice, SMS, 2FA, and phone numbers. Our MCP server brings these capabilities to AI agents and agentic workflows.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.