xian-mcp-server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| XIAN_GRAPHQL | No | GraphQL endpoint | http://127.0.0.1:5000/graphql |
| XIAN_CHAIN_ID | No | Chain ID | xian-local-1 |
| XIAN_NODE_URL | No | Node RPC URL | http://127.0.0.1:26657 |
| XIAN_INCLUDE_RAW | No | Include SDK raw payloads in MCP / HTTP responses | false |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_balanceB | Check the balance of a XIAN address for a specific token |
| get_token_balancesA | List all token balances for a XIAN address with pagination support |
| get_bds_statusA | Get indexed/BDS availability and synchronization status for the connected node |
| get_developer_rewardsA | Get indexed developer reward totals for a recipient key |
| list_blocksC | List indexed blocks with pagination |
| get_blockB | Get an indexed block by height |
| get_block_by_hashB | Get an indexed block by block hash |
| get_indexed_txB | Get an indexed transaction by transaction hash |
| list_txs_for_blockB | List indexed transactions for a block height or block hash |
| list_txs_by_senderB | List indexed transactions submitted by a sender with pagination |
| list_txs_by_contractA | List indexed transactions that called a contract with pagination |
| get_events_for_txB | List indexed events emitted by a transaction |
| list_eventsB | List indexed events for a contract and event name |
| get_state_historyC | List indexed history entries for a state key |
| get_state_for_txB | List indexed state writes produced by a transaction |
| get_state_for_blockA | List indexed state writes produced by a block height or block hash |
| list_shielded_output_tagsC | List indexed shielded output tags for a wallet sync tag |
| list_shielded_wallet_historyC | List indexed shielded wallet history for a wallet sync tag |
| get_transactionA | Get details of a transaction by its hash |
| simulate_transactionA | Simulate a transaction to estimate chi without executing it |
| get_stateC | Read a state variable from a smart contract |
| get_contract_sourceC | Get the source code of a smart contract |
| get_token_contract_by_symbolB | Find the contract address for a token by its symbol |
| get_token_data_by_contractC | Get metadata for a token by its contract address |
| get_dex_priceA | Get the current price of a token on the DEX |
| verify_signatureB | Verify a message signature |
| dex_list_pairsB | List canonical Xian DEX pairs and reserves |
| dex_get_pairC | Get a canonical DEX pair by id or token contracts |
| dex_quote_exact_inB | Quote the best route and output for an exact input amount |
| dex_quote_exact_outC | Quote the least input required for a desired output amount |
| dex_plan_swapC | Issue a single-use DEX swap plan with fresh quote, exact calls, digest, and expiry |
| dex_plan_add_liquidityC | Issue a single-use addLiquidity plan with exact calls, digest, and expiry |
| dex_plan_remove_liquidityC | Issue a single-use removeLiquidity plan with exact calls, digest, and expiry |
| dex_wait_live_eventA | Wait for low-latency finalized DEX events over CometBFT WebSocket without BDS; non-durable, so use dex_list_events for replay |
| dex_list_eventsA | List indexed canonical DEX or bound LP-token events with a restart-safe cursor |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 35 tools
Most tools have clear distinct purposes, but a few like get_transaction and get_indexed_tx overlap in retrieving transaction details by hash, and get_events_for_tx vs list_events could cause confusion. Overall, the descriptions help disambiguate.
All tools follow a consistent verb_noun pattern in snake_case. DEX-specific tools are prefixed with 'dex_', while others start with verbs like get, list, simulate, verify. No mixed conventions.
At 35 tools, the set is quite large but each tool serves a distinct purpose in the blockchain/DEX domain. It is above the typical 3-15 range, but not extremely bloated; some redundancy exists (e.g., get_transaction and get_indexed_tx).
The server covers a broad range of blockchain queries, DEX operations, contract interactions, and shielded wallet history. Missing direct transaction submission, but simulation and plans are provided. Minor gaps in lifecycle coverage.