Monad Agent Kit
MCP toolkit for AI agents to send transactions and deploy/verify contracts on Monad with local-only key signing.
Overview
Monad Agent Kit is an MCP server that lets AI agents (Claude, GPT, local models) interact with the Monad blockchain — sending transactions, deploying and verifying smart contracts, and querying blocks. Private keys stay local via a guard-hook or signing-daemon mode, so the model only sees addresses and tool results, not key material. Ships with setup guides for Claude Code, Cursor, and Codex plus a programmatic path via the Vercel AI SDK.
Sato Score
72/100· HighHow open, active & verifiable — not a safety or returns grade.
- Maintenance & liveness
- 35/35
- Code transparency
- 16/20
- Interface verifiability
- 10/10
- Docs & demo
- 0/10
- Listing transparency & provenance
- 8/15
- Independent verification
- 3/10
Live endpoint probed — we called the hosted MCP endpoint and it answered with its real tool inventory (proves the interface works, not runtime safety).
Tool inventory — 94 tools, probed live 2026-09-05
list_blocks— List most recent canonical blocks, sorted desc by block_number.get_block— Fetch a block by height.get_transaction— Fetch a transaction by hash.gas_oracle— Current rolling-window gas price percentiles from the oracle.stats_overview— Top-level chain stats (head block, total txs, total transfers).chain_network— Network stats: tip height/time, block-time spread over the last 100 blocks, and the native token.indexer_info— Indexer coverage: earliest/latest indexed height and percent indexed from genesis and within the indexed window.gas_tracker— Min/avg/max gas price over the last 100 blocks (legacy gas-tracker shape; see gas_oracle for rolling percentiles).validator_apr— Network validator APR (averaged from validator_apr_daily).list_transactions— List most recent canonical transactions.get_tx_logs— List event logs for a given transaction hash.get_tx_internal_txs— List internal transactions (traces) for a given transaction hash.get_tx_state— Balance/state changes for a transaction: native coin deltas and net token deltas folded from the tx's transfer events.tx_action_types— Aggregate breakdown of transactions by action type (coin_transfer / token_transfer / contract_call / contract_creation) over a date range.list_block_transactions— List transactions inside a specific block.get_account— Fetch an EVM account profile (balance, nonce, tx count).list_account_transactions— List transactions involving a given address.list_account_internal_txs— List internal transactions (traces) involving a given address — separate from normal transactions.list_account_token_transfers— List token-transfer rows touching the given address.list_account_tokens— List ERC tokens currently held by an address (balance > 0).list_tokens— List ERC tokens sorted by holders_count desc.get_token— Fetch ERC token metadata + holders_count.list_token_holders— Top holders for a given token, sorted by balance desc.list_token_transfers— List transfer events for a given token.list_transfers— List most recent token transfers across the chain.list_labels— List curated address labels (system contracts, tokens, etc).get_labels_by_address— Get all labels attached to an address.list_contracts— List discovered contracts (proxy_only filter optional).get_contract— Fetch a contract's PG row (creator, proxy_target, etc) + nested verification status.prices— Merged price summary (IcoDrops + Osmosis sources).list_top_accounts— Top accounts by tx_count over the last 24h.list_top_contracts— Top contracts by call_count over the last 24h.list_top_tokens_24h— Top tokens by transfer_count over the last 24h.verifier_compiler_versions— List available Solidity and Vyper compiler versions from the shared smart-contract verifier.verify_contract_multi_part— Submit Solidity multi-part verification to the shared verifier. Body is forwarded as-is.verify_contract_std_json— Submit Solidity standard-JSON verification to the shared verifier. Body is forwarded as-is.verify_contract_vyper_multi_part— Submit Vyper multi-part verification to the shared verifier. Body is forwarded as-is.get_verification_status— Read the PG contract_sources row for an address, or {status:'unverified'} if absent.list_staking_events— List decoded staking events (Delegated, Undelegated, Rewarded, Slashed, etc.) from the 0G EVM staking system, most-recent first.search— Global search: numeric -> block, 64-hex -> tx, 40-hex -> {token?, address}.list_validators— List validators from PG (rolled up from staking events), ordered by voting_power_shares DESC.get_validator— Fetch a validator's PG row plus derived delegators_count and slashes_count.list_da_signers— List 0G DA signers ordered by voting power DESC.list_da_events— List DA events from CH (BlobSubmitted / DASignerRegistered / DASignerUpdated).da_daily_volume— Daily DA blob counts + bytes (last N days, default 30).list_storage_files— List 0G storage files ordered by upload block DESC.get_storage_file— Fetch a single 0G storage file by file_hash.list_storage_miners— List 0G storage miners ordered by total_proofs DESC.list_cl_blocks— List CometBFT (CL) blocks mapped to EL blocks, newest first.list_cl_proposer_blocks— List CL blocks proposed by a given proposer address.storage_daily_volume— Daily storage volume (files, bytes, proofs) for last N days.chart_series— Daily time-series for a named chart metric over a date range. Returns [{date, value}] (gap-filled, daily buckets).balance_at_block— Native (0G) balance for an address at historical block N. Reads coin_balance_history; falls back to eth_getBalance.token_approvals— Active ERC token approvals granted BY this address. Latest non-zero allowance per (token, spender).account_delegations— Delegations made by this address (delegator-side staking positions).account_undelegations— Pending unbonding entries for this address (delegator-side).account_tags— Public tags / labels for an address (Blockscout shape).tx_statistics— Aggregate counters per tx (transfers, internal-tx, logs, total fee).tx_state_changes— Per-tx state-change diff (native balance + token + storage changes).tx_raw_trace— Raw debug_traceTransaction output for the tx (callTracer).tx_summary— Blockscout-style summary panel for a tx (action chips + actors + meta).nft_instance_detail— Single NFT instance (ERC-721 / ERC-1155) for token + id.nft_instance_holders— Holders of an ERC-1155 instance (single owner for ERC-721).nft_instance_transfers— Transfer history of a specific NFT instance.validator_events— Per-validator chronological staking event timeline.validator_delegations— Delegators staking WITH this validator (validator-side view).validator_undelegations— Pending unbonding entries for this validator.validator_statistics— Per-validator counters: blocks proposed, delegations/undelegations, slashes, jails.charts_gas_price— 30-day daily gas-price percentiles (slow/average/fast in wei).gas_burners— Top addresses by gas cost (sum gas_used*gas_price) over a window.rpc_read_contract— Call a contract read-only via eth_call, decoded against its verified ABI.rpc_multicall— Multicall3-bundled batch of read-only calls.rpc_native_balance— eth_getBalance for an address (raw RPC, no PG cache).rpc_token_balance— ERC-20 balanceOf for (address, token) via RPC.rpc_nft_info— NFT instance metadata (tokenURI + ownerOf) via RPC.pending_transactions— Pending-pool transactions mirrored by worker-chain (POLL_PENDING=true). Empty when feed disabled or pool empty.advanced_filters— UNION of txs / token-transfers / internal-txs with flexible filter (address, value range, token, type).search_redirect— "I-feel-lucky" search — returns the single best match route for q.contract_code— Deployed bytecode of a contract (PG-first, eth_getCode fallback with lazy-register).prepare_native_transfer— Prepare an UNSIGNED native 0G transfer. Returns tx fields for local signing; sign with sign-tx.ts then broadcast_signed_raw_transaction.prepare_erc20_transfer— Prepare an UNSIGNED ERC-20 transfer (encodes transfer(to,amount)). Sign locally, then broadcast.prepare_transaction— Prepare a generic UNSIGNED transaction. Omit 'to' for contract creation (set data=bytecode). Sign locally, then broadcast.broadcast_signed_raw_transaction— Broadcast a locally-signed raw transaction (eth_sendRawTransaction). Returns the tx hash.wait_for_transaction— Poll for a transaction receipt until mined or timeout. Returns the receipt (incl. contractAddress).claim_faucet_tokens— Claim testnet 0G from the faucet. Testnet only — on mainnet this returns an explainer (no faucet).get_faucet_payout_status— Check a faucet payout status by requestId. Testnet only.prepare_delegate— Prepare an UNSIGNED 0G delegation (stake) to a validator. msg.value carries the staked amount. Sign locally, then broadcast.prepare_undelegate— Prepare an UNSIGNED 0G undelegation (unstake shares) from a validator. Sign locally, then broadcast.list_evm_blocks— Compatibility alias: list canonical EVM blocks.get_evm_block_by_height— Compatibility alias: fetch an EVM block by height.get_chain_network— Compatibility alias: return chain network statistics.get_evm_indexer_info— Compatibility alias: return EVM indexer coverage.explorer_search— Compatibility alias: search the explorer by value.get_balance— Compatibility alias: return an address native balance.
Live probe verifies the interface responds — not what the tools do, their safety, or their output quality.
Observed record — 49 daily checks since 2026-07-19
- Succeeded
- 49
- Failed
- 0
- Their error
- 0
- Unattributed
- 0
This is the share of our daily checks that succeeded — not an availability guarantee. A check can fail because the host was down, because our runner timed out, or because the network in between dropped it, and only the first of those is a fact about this project. Failures are split by what we can attribute; anything we cannot attribute is counted, not hidden. 44 of these checks predate 2026-09-01, when the probe counted a bot-block (HTTP 403) as a failure and recorded no reason for any failure. Rates spanning that date mix two definitions. Since then: 100%.
Tool inventory history — 94 now, peak 94, since 2026-07-20
- 2026-07-30 88 → 94 +6 (explorer_search, get_balance, get_chain_network, get_evm_block_by_height…)
- 2026-07-29 75 → 88 +81 (account_delegations, account_tags, account_undelegations, advanced_filters…) −68 (explorer_search, generate_disposable_test_wallet, get_account_coin_balance_history, get_account_coin_balance_history_by_day…)
Recorded from our own daily tools/list handshake. A shrinking toolset is a real signal for an agent choosing a server; a gap in the series means the probe did not succeed that day, not that the tools disappeared.
Details
- Chains
- Monad
- Agent types
- MCP server
- Open source
- Yes
- Deploys as
- native, dockerfrom project docs · 2026-07-24
- Last checked
- 2026-09-05
Marketplace Signals
No marketplace signals recorded for this resource yet.
Verification status reflects evidence reviewed by Sato Hub. Self-reported claims are never presented as verified.
Listing History
Recorded changes to Monad Agent Kit's listing — status, verification, Sato Score, and recent releases. Full history is kept in the listing record.
- Sep 1, 2026Sato Score tier: Medium → HighScore 69 → 72.
- Jul 24, 2026Auto-enriched: deployment options
- Jul 20, 2026Edited: mcp endpoint url
- Jul 20, 2026Edited: deploy spec
- Jul 19, 2026Listed on Sato Hub
- Jul 19, 2026Sato Hub began tracking this listing
Related Resources
Coinbase AgentKit
ActiveCoinbase's toolkit for giving AI agents wallets and the ability to take onchain actions.
Hyperliquid
ActiveOnchain perpetual futures and spot DEX running on its own L1 with an HyperEVM smart-contract layer.
Model Context Protocol (MCP)
ActiveAnthropic's open standard for connecting AI systems to external tools and data sources.
Cite this page
Sato Hub. "Monad Agent Kit — Sato Hub." Sato Hub, updated 2026-09-05, accessed 2026-09-06. https://satohub.ai/resources/monad-agent-kitThis page is refreshed daily. Citations include the date so a reader can tell which snapshot a claim came from.
Join the Sato Hub Briefing
One email a week — the agents, tools, and infrastructure that actually shipped, and why they matter.