MCP server enabling AI agents to interact with the Amadeus blockchain.
See Gemini CLI Configuration for details.
Open the Gemini CLI settings file. The location is ~/.gemini/settings.json.
Add the following to the mcpServers object in your settings.json file:
{
"mcpServers": {
"amadeus": {
"httpUrl": "https://mcp.ama.one",
}
}
}Run this command. See Claude Code MCP docs for more info.
claude mcp add --transport http amadeus https://mcp.ama.oneOr open the Claude Code config file. The location is ~/.claude.json.
Find the following to the mcpServers object in the desired folder section:
"mcpServers": {
"amadeus": {
"type": "http",
"url": "https://mcp.ama.one"
}
}create_transaction- Create unsigned transaction for any contract call (args: signer, contract, function, args)submit_transaction- Submit signed transaction (args: transaction, signature, network: mainnet|testnet)get_account_balance- Query account balancesget_chain_stats- Get blockchain statisticsget_block_by_height- Get entries at heightget_transaction- Get transaction by hashget_transaction_history- Get account transaction historyget_validators- List validatorsget_contract_state- Query contract storageclaim_testnet_ama- Claim testnet tokens (once per 24h per IP)
cargo build --release
./target/release/amadeus-mcpLocal dev:
npm i -g wrangler
cargo install worker-build
wrangler devProduction (build locally, then deploy):
scripts/build.sh
wrangler deploy
wrangler secret put BLOCKCHAIN_API_KEYBLOCKCHAIN_URL=https://nodes.amadeus.bot (mainnet, default)
AMADEUS_TESTNET_RPC=https://testnet.amadeus.bot (testnet, default)
AMADEUS_TESTNET_SK (secret, base58-encoded 64-byte key for faucet)
MCP_DATABASE (D1 binding)Create the faucet_claims table in D1:
CREATE TABLE faucet_claims (ip TEXT PRIMARY KEY, address TEXT, claimed_at INTEGER);TypeScript/JavaScript example:
cd examples && npm install @noble/curves bs58
node sign-transaction.mjs <sk_base58> <contract> <function> '<args_json>' [network]Examples:
# Transfer tokens on testnet
node sign-transaction.mjs YOUR_SK Coin transfer '[{"b58":"RECIPIENT"},"1000000000","AMA"]' testnet
# Call custom contract on mainnet
node sign-transaction.mjs YOUR_SK CONTRACT_PK my_function '["arg1",42]' mainnetThe create_transaction tool supports all ama CLI features: any contract, custom arguments, token attachments (attached_symbol, attached_amount), and custom nonce.