TON MCP server that exposes TON liteserver data via MCP, including balances, account state, transactions, and contract methods. Written in TypeScript, MIT licensed, with HTTP mode and Omniston-based swaps.
Collecting history — the radar snapshots this repo daily. The trend line appears after 3 days of data (1 so far).
What it is
A MCP server that gives AI agents direct liteserver access to The Open Network (TON) over native ADNL protocol, providing balances, account state, transaction history, and contract get-methods. It supports private and archive endpoints, and includes a Streamable-HTTP entry for remote deployments.
How it works
The server connects to TON mainnet via the public global config by default and exposes MCP endpoints for various tools like get_balance, get_transactions, get_account_state, and run_get_method. It includes swap-related tools powered by Omniston for non-custodial cross-chain and TON-based interactions. HTTP mode is available with a Bearer-key based authentication and rate limiting.
Getting started
Quick start example shows how to add to MCP clients:
{
"mcpServers": {
"ton": {
"command": "npx",
"args": ["-y", "@tonnode/mcp"]
}
}
}
For HTTP deployment:
TONNODE_KEYS=tn_live_abc,tn_live_def PORT=8808 npx -y @tonnode/mcp --http
Configuration and environment variables govern HTTP mode, liteserver endpoints, and rate limiting, with additional keys and options described in the README.
Getting started (continued / usage)
Client configuration examples for hosted endpoints:
{
"mcpServers": {
"ton": {
"url": "https://your-host/mcp",
"headers": { "Authorization": "Bearer tn_live_abc" }
}
}
}
The server supports various env vars, including TON_LITESERVERS, TON_CONFIG_URL, TON_NETWORK, TONNODE_KEYS, TONNODE_KEYS_FILE, HOST, PORT, RATE_LIMIT_RPM, GLOBAL_RATE_LIMIT_RPM, SESSION_TTL_MIN, MAX_SESSIONS, MAX_SESSIONS_PER_KEY, OMNISTON_API_URL, OMNISTON_INTEGRATOR_ADDRESS, OMNISTON_INTEGRATOR_FEE_BPS.
Recent releases
- none
Traction
66 stars in total; 0 forks; 0 open_issues
License
MIT
