Tegro Wallet MCP
OfficialClick 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., "@Tegro Wallet MCPWhat's the GRAM balance of foundation.ton?"
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.
Tegro Wallet MCP β TON / GRAM
The TON & GRAM wallet MCP. Give any AI assistant read-only, real-time access to TON on-chain data β wallet balances, tokens, transactions, prices, NFTs, TON DNS and address validation β with no private keys and no signing. One server, every major AI client.
Read-only Model Context Protocol server for TON wallets and the GRAM token (formerly Toncoin). Works out of the box with Claude Desktop, Claude Code, Cursor, Hermes Agent (MCP) and ChatGPT (GPT Actions via OpenAPI).
Part of the Tegro open ecosystem β see @tegroton/tegro-finance (DEX) and @tegroton/tegro-money (payments).
π The TON native token rebranded Toncoin β Gram (ticker TON β GRAM, 2026β06β15). Balances are 1:1, the network and addresses stay TON. This server surfaces amounts as GRAM and the network as TON.
Tools
Tool | What it returns |
| GRAM balance, status, wallet flag for an address |
| Jetton (token) balances with fiat value |
| Recent transactions β type, GRAM amount, counterparty, comment |
| GRAM (or any jetton) price in a fiat currency + 24h change |
| Jetton metadata by master address (symbol, supply, verification) |
| NFTs owned by an address |
| TON DNS name β wallet address |
| Validate + normalize an address offline (CRC16, bounceable/testnet flags) |
Every tool maps 1:1 to an MCP tool and an HTTP POST /tools/<name> operation in the OpenAPI spec β the two surfaces are generated from one definition.
Example output
// ton_get_rate { "token": "ton", "currency": "usd" }
{ "token": "GRAM", "currency": "USD", "price": 1.58, "diff24h": "+1.39%" }
// ton_get_account { "address": "UQβ¦" }
{ "address": "0:β¦", "balanceGram": "12.8400", "balanceNano": "12840000000",
"status": "active", "isWallet": true, "network": "TON" }
// ton_validate_address { "address": "EQβ¦" } β offline, no network
{ "valid": true, "format": "friendly", "raw": "0:β¦", "workchain": 0,
"bounceable": true, "testnet": false }Ask an AI assistant: "What's the GRAM price, and how much is in foundation.ton?" β it resolves the DNS name, reads the balance, and answers with live data.
Related MCP server: onchain-mcp
Quick start
npx @tegroton/wallet-mcp # MCP server over stdio
npx @tegroton/wallet-mcp http 8787 # HTTP + OpenAPI on :8787 (for ChatGPT / universal)No configuration is required. To lift the public rate limit, set a TonAPI key: TONAPI_KEY=....
Connect it
Claude Desktop / Claude Code / Cursor (MCP)
Add to your MCP config (claude_desktop_config.json, Cursor ~/.cursor/mcp.json, or claude mcp add):
{
"mcpServers": {
"tegro-wallet-mcp": {
"command": "npx",
"args": ["-y", "@tegroton/wallet-mcp"],
"env": { "TONAPI_KEY": "" }
}
}
}Claude Code one-liner: claude mcp add tegro-wallet-mcp -- npx -y @tegroton/wallet-mcp
Hermes Agent (MCP)
Hermes Agent connects any MCP server. Add @tegroton/wallet-mcp as an MCP server in its MCP config / registry with the same command/args as above, then enable it via hermes tools.
ChatGPT (GPT Actions)
Run the HTTP surface (self-host β see below) and point a custom GPT's Action at https://<your-host>/openapi.json. Each tool becomes an operation the GPT can call. Read-only, so no auth is required (add your own if you host it privately).
Self-host the HTTP surface
# from source
npm i && npm run build && node dist/cli.js http 8787
# docker
docker build -t tegro-wallet-mcp . && docker run -p 8787:8787 -e TONAPI_KEY=... tegro-wallet-mcpEndpoints: GET / (info), GET /health, GET /openapi.json, POST /tools/<name> (JSON body).
curl -s localhost:8787/tools/ton_get_rate -d '{"token":"ton","currency":"usd"}'
# β {"token":"GRAM","currency":"USD","price":1.58,"diff24h":"+1.39%"}Safety
Read-only. No private keys, no seed phrases, no signing, no transactions β the server only reads public on-chain data via TonAPI.
No secrets are required or stored. An optional
TONAPI_KEY(yours) only raises the rate limit.Non-custodial by design: it cannot move funds.
Programmatic use
import { getAccount, getRate } from "@tegroton/wallet-mcp";
const acc = await getAccount("UQβ¦"); // { balanceGram, status, network: "TON", β¦ }
const rate = await getRate("ton", "usd"); // { token: "GRAM", price, diff24h }Contributing & support
Contributing guide β setup, tests, adding a tool
Security policy β report privately to
security@tegro.financeIssues and feature requests: GitHub issues
Ecosystem
Part of the Tegro open ecosystem β a non-custodial TON/GRAM wallet with a crypto card. Sister packages:
@tegroton/tegro-financeβ Tegro Finance DEX SDK@tegroton/tegro-moneyβ Tegro.Money payments SDK
License
MIT Β© TegroTON
Available Tools
8 toolston_get_accountB
Get a TON account's GRAM balance (the native token, formerly Toncoin), status, and wallet flag. Network is TON; balances are 1:1 GRAMβTON.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | TON wallet address β raw (0:β¦) or friendly (EQβ¦/UQβ¦) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It implies a read-only operation via 'Get' and clarifies token naming (GRAM vs TON), which is helpful context. However, it does not state that the operation is safe, free of side effects, or subject to any rate limits or permissions, leaving meaningful behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with zero waste. The primary purpose is front-loaded in the first sentence, and the second sentence adds useful token-naming context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple account-get tool with no output schema, the description lists the return fields (balance, status, wallet flag) and notes the network and token equivalence, which is substantial. It falls short of 5 because it does not explain what 'status' or 'wallet flag' represent, leaving some ambiguity for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents the single 'address' parameter with format details. The description adds no additional semantics for the parameter, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Get') and resource ('TON account's GRAM balance, status, and wallet flag'), making the tool's purpose clear. It distinguishes itself from siblings like ton_get_jettons and ton_get_transactions by focusing on account-level fields. However, it does not explicitly name any sibling tool to contrast with, so it lacks the full sibling differentiation seen in top-tier definitions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as ton_get_jettons or ton_get_transactions. It simply states what it does, leaving usage context entirely implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ton_get_jetton_infoB
Metadata for a jetton (token) by its master contract address: symbol, name, supply, verification.
| Name | Required | Description | Default |
|---|---|---|---|
| master | Yes | jetton master contract address |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It lists output fields but omits key behavioral traits such as read-only safety, error conditions, authentication needs, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It moves directly from purpose to returned fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description helpfully lists four return fields, but does not explain their format or types. It also omits usage guidance and behavioral context, leaving clear gaps for a tool with no annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and the single parameter is fully documented in the schema. The description merely repeats 'master contract address' without adding format, constraints, or other semantics beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific resource (jetton metadata) and the retrieval key (master contract address), and lists the returned fields. It does not explicitly differentiate itself from sibling tools like ton_get_jettons, which likely lists jettons for an account rather than metadata for one jetton.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied: call this when you have a jetton master address and need its metadata. There is no explicit when-to-use, when-not-to-use, or alternative tool guidance (e.g., versus ton_get_jettons).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ton_get_jettonsB
List jetton (token) balances held by a TON address, with fiat value where the token is priced.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | TON wallet address β raw (0:β¦) or friendly (EQβ¦/UQβ¦) | |
| currency | No | fiat code: usd, eur, rub, β¦ | usd |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full disclosure burden. It does state one useful trait β fiat value is only present "where the token is priced" β but says nothing about read-only semantics, pagination, result limits, or whether the address must be validated first, which are meaningful gaps for a balance-listing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the resource and scope come first and the valuation caveat follows. Nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read tool with no output schema, the description covers the core operation and the pricing caveat. It still omits pagination/result-size behavior and any note about address format handling, which the schema covers but the agent may need framed in context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters are documented in the schema, so the baseline is 3. The description's mention of fiat value loosely maps to the currency parameter but adds no format or default detail beyond what the schema already supplies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb and resource ("List jetton (token) balances held by a TON address") plus a qualifier about fiat valuation, which separates it from siblings like ton_get_jetton_info (metadata) and ton_get_nfts. It stops short of naming any sibling explicitly, so it is clear but not fully differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use or when-not guidance and no mention of alternatives such as ton_get_jetton_info or ton_get_account. The agent must infer the appropriate context purely from the tool name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ton_get_nftsC
NFTs owned by a TON address (name, collection, image).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| address | Yes | TON wallet address β raw (0:β¦) or friendly (EQβ¦/UQβ¦) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, yet it says nothing about whether this is a read-only operation, whether results are paginated, how many items come back, or the cost/limits. It only lists output fields, leaving the operational profile undocumented.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single short sentence with the resource front-loaded and no filler. Efficient, though the terseness is arguably under-specification rather than conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a list-style tool with a pagination parameter and no output schema, the description omits too much: no pagination semantics, no result-shape beyond three field names, and no behavioral context. An agent can call it, but cannot predict the response well.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 50%: the address parameter is well documented in the schema, but the limit parameter (default 20, max 100) has no description in either schema or description text. The description adds no parameter meaning at all, so it does not compensate for the coverage gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a clear resource (NFTs owned by a TON address) and enumerates the returned fields, which implicitly distinguishes it from ton_get_jettons (fungible tokens). However, it never explicitly names or contrasts with that sibling, so an agent must infer the NFT-vs-jetton distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus ton_get_account, ton_get_jettons, or ton_get_transactions. The description gives no preconditions, no mention of pagination or what to do for large collections, and no stated exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ton_get_rateB
Current price of GRAM (the native TON token) or any jetton in a fiat currency, plus 24h change.
| Name | Required | Description | Default |
|---|---|---|---|
| token | No | 'ton' (= GRAM) or a jetton master address | ton |
| currency | No | fiat code: usd, eur, rub, β¦ | usd |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the core return behavior β current price and 24h change β but omits operational context such as data freshness, source, rate limits, or whether the call is public/read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted words. It communicates the resource, scope, and key output field compactly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter read-only price lookup with no output schema, the description covers the essential input scope and returned fields. It is nearly complete, though it could state data freshness or return formatting more explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the token and currency parameters are already fully documented in the schema. The description adds little parameter-level meaning beyond restating that tokens can be native TON/GRAM or jettons and that currency is fiat, matching the baseline of 3 when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the resource clearly: current price of GRAM or any jetton in a fiat currency, plus 24h change. It is specific about scope, but does not explicitly differentiate itself from sibling tools such as ton_get_jetton_info, so it falls short of the highest bar.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no explicit when-to-use guidance, no exclusions, and no named alternatives. The function implies its own use case, but the description does not help an agent choose between this and sibling TON tools beyond the obvious difference in returned data.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ton_get_transactionsB
Recent transactions/events for a TON address β type, GRAM amount, counterparty, comment.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| address | Yes | TON wallet address β raw (0:β¦) or friendly (EQβ¦/UQβ¦) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses the shape of each returned item (type, GRAM amount, counterparty, comment), which matters because there is no output schema, but it says nothing about ordering, pagination beyond the limit cap, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that lists the returned fields with zero filler. It is efficient, though the em-dash fragment style is terse rather than fully structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and one undocumented parameter, the description should do more, but it does at least enumerate the return fields. Missing limit behavior, ordering, and any sense of how many results constitute 'recent' leave gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 50%: the address parameter is documented in the schema, but 'limit' has no description anywhere. The description does not compensate β it never mentions the result-count cap (default 10, max 100), which is the main semantic gap for this tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource (get transactions/events for a TON address) plus the scope ('recent') and the fields returned. It is clearly distinguishable from siblings like ton_get_jettons or ton_get_nfts by resource, though it never explicitly contrasts itself with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to use this tool versus alternatives such as ton_get_account, nor any prerequisite or exclusion guidance. The agent must infer usage purely from the resource name.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ton_resolve_dnsB
Resolve a TON DNS name (e.g. foundation.ton) to its wallet address.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | TON DNS name, with or without the .ton suffix |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does not state what happens when a name does not resolve, whether the call requires network access, whether the result is cached, or what error shape to expect; read-only nature is only inferable from the verb 'Resolve'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with verb and subject, no filler. Nothing redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter resolver with no output schema, stating the return value ('wallet address') is the key piece and it is present. Only failure/edge-case behavior for unresolvable names is left unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single parameter is fully documented there (pattern, length, '.ton suffix optional'). The description's inline example 'foundation.ton' adds only marginal value over the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Resolve') and resource ('TON DNS name'), and names the output ('to its wallet address'), which distinguishes it from every sibling (ton_get_account, ton_get_transactions, ton_validate_address, etc.). An agent can identify the tool's job without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use guidance, no prerequisites, and no routing to alternates such as ton_validate_address (which validates an address) or ton_get_account (which fetches by address). Usage is only implied by the purpose sentence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ton_validate_addressA
Validate and normalize a TON address (raw or friendly) offline β returns format, normalized raw form, and bounceable/testnet flags with a real CRC check. No network call.
| Name | Required | Description | Default |
|---|---|---|---|
| address | Yes | a TON address in raw (0:β¦) or friendly (EQβ¦/UQβ¦) form |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does well: it declares the operation is offline with no network call (no side effects, idempotent) and that validation uses a real CRC check rather than a superficial pattern match. It does not say how invalid input is reported, which is the main remaining gap for a validation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One tight sentence that front-loads the action, the accepted input forms, the offline constraint, and the return contents. Every clause earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but the description enumerates the return shape (format, normalized raw form, bounceable/testnet flags), which is what an agent needs to consume the result. The only omission is error/invalid-address behavior, a minor gap for a single-parameter offline tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter, and the schema already documents it at 100% coverage including the raw (0:β¦) and friendly (EQβ¦/UQβ¦) forms. The description restates that same raw/friendly distinction without adding syntax or format detail beyond the schema, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb pair (validate, normalize) and the exact resource (a TON address in raw or friendly form), plus the distinguishing constraint that it works offline. An agent can tell it apart from the network-fetching siblings (ton_get_*, ton_resolve_dns) immediately.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Offline β No network call' implies the usage context (use this to check/convert an address without hitting the chain), which is genuinely useful framing against network siblings. However, it never explicitly says when to prefer this over e.g. ton_resolve_dns or what to do if validation fails, so the guidance stays implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
8 tool updates
v0.1.0- First observed
ton_get_account - First observed
ton_get_jetton_info - First observed
ton_get_jettons - First observed
ton_get_nfts - First observed
ton_get_rate - First observed
ton_get_transactions - First observed
ton_resolve_dns - First observed
ton_validate_address
TDQS
Scored across 8 tools
Each tool targets a distinct data point: native balance, jetton balances, transactions, price rate, jetton metadata, NFTs, DNS resolution, and address validation. The only near-neighbors (ton_get_jettons for balances vs ton_get_jetton_info for metadata) are clearly distinguished by their descriptions.
All tools follow a uniform ton_<verb>_<noun> pattern with consistent verbs (get/resolve/validate). Minor singular/plural variation (account vs jettons/nfts) does not break the pattern.
Eight tools is well-scoped for a read-only TON data/wallet-query surface, with each tool earning its place and no redundancy.
Read-only coverage of balances, tokens, transactions, rates, metadata, NFTs, DNS, and validation is solid, but as a 'Wallet MCP' it lacks any write/lifecycle operations such as sending GRAM or jettons, constructing transfers, or wallet creation, leaving a notable gap.
Maintenance
Related MCP Connectors
Read-only Bitcoin blockchain, mempool, mining, market, and on-chain analytics; no API key.
Query real-time blockchain token data across EVM and Solana networks. Access token balances, transfers, prices, holders, NFT ownership, DEX swaps, and liquidity pools. Supports Ethereum, Base, Arbitrum, BSC, Polygon, Solana, and more.
Read-only Etherscan V2 blockchain data: balances, transactions, transfers, tokens, contracts, logs.
Read-only THORChain swap quotes, liquidity pools, and network status.
Related MCP Servers
- FlicenseAqualityDmaintenanceTON Data MCP Server β real-time blockchain data for AI agents. Provides wallet balances, token prices, STON.fi liquidity pools, market overview, transactions, and network state. 6 MCP tools, free tier, Docker-ready.6-
- AlicenseAqualityDmaintenanceProvides read-only access to Solana on-chain data, enabling natural language queries for wallet balances, token holdings, prices, transactions, and more via MCP-compatible clients.8MIT
- FlicenseAqualityDmaintenanceProvides read-only access to the XRP Ledger for querying accounts, transactions, NFTs, DEX order books, and more.12-
- AlicenseAqualityBmaintenanceProvides AI agents with direct liteserver access to the TON blockchain for querying balances, account states, transactions, and contract get-methods without HTTP gateways.576 npm27MIT