iota-agent-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| IOTA_RPC_URL | No | IOTA JSON-RPC endpoint | https://api.mainnet.iota.cafe |
| IOTA_GRAPHQL_URL | No | IOTA GraphQL endpoint | https://graphql.mainnet.iota.cafe |
| IOTA_WALLET_SERVER | No | Local agent wallet server | http://localhost:3847 |
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": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| iota_wallet_addressB | Get the current IOTA Agent Wallet address |
| iota_wallet_balanceA | Get IOTA balance of the current wallet |
| iota_wallet_accountsA | List all accounts in the IOTA Agent Wallet |
| iota_wallet_pendingA | Get pending transactions awaiting approval |
| iota_wallet_approveC | Approve a pending transaction |
| iota_wallet_rejectA | Reject a pending transaction |
| iota_wallet_switch_networkB | Switch wallet network |
| iota_wallet_sign_executeC | Sign and execute a transaction (base64 tx bytes) |
| iota_cliB | Run any IOTA CLI command (e.g. 'client gas', 'client objects', 'client ptb ...') |
| move_buildB | Build a Move package on IOTA |
| move_testC | Run Move unit tests |
| move_test_coverageB | Run Move tests and generate coverage report |
| move_publish_unsignedA | Build and create an unsigned publish transaction (safe — does not execute) |
| iota_objectB | Fetch details of an IOTA object by ID |
| iota_objects_by_ownerB | List all objects owned by an address |
| iota_get_coinsA | Get all coin objects for an address (IOTA or any token) |
| iota_transactionB | Fetch a transaction by digest |
| iota_coin_metadataB | Get metadata for a coin type |
| iota_package_infoA | Fetch Move package info, modules, and ABIs |
| iota_resolve_nameA | Resolve an IOTA Name Service (IOTA NS) name to address |
| iota_get_priceA | Get current IOTA token price via CoinGecko |
| iota_graphql_queryB | Run a raw GraphQL query against the IOTA GraphQL endpoint |
| iota_epoch_infoA | Get current epoch, checkpoint, and network stats |
| iota_decompileB | Decompile Move bytecode from a published package module |
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 24 tools
Most tools have distinct purposes (price, wallet, Move, objects). Pairs like move_test and move_test_coverage overlap, and iota_cli can perform any CLI operation, creating potential misselection. Descriptions help, but the presence of a catch-all reduces clarity.
Uses a consistent prefix (iota_, move_) and snake_case. However, some names are nouns (iota_wallet_address) while others are verb phrases (move_publish_unsigned), and iota_cli is a vague outlier.
24 tools is above the typical range (3-15) and falls in the heavy category, though the breadth of IOTA functionality (wallet, Move, chain) may justify it.
Covers wallet management, Move development, chain queries, and GraphQL. Missing explicit publish/execute for Move, but iota_cli and sign_execute fill the gap. Overall, a robust surface.