Monad MCP server
io.github.pareen/monad-mcp·v0.2.1·2 starsMonad blockchain gateway for AI agents: balances, transfers, swaps, DeFi, with Privy signing.
2 stars42 downloads/wk
Reviews
Write oneNobody has reviewed Monad yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Monad tools (46, 7 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
approve_erc20Builds an unsigned ERC-20 approve() and returns an approval URL. Typically used before
bridge_executewrite actionSubmits the source-chain transaction returned by `bridge_quote`. Currently the server-side
bridge_quoteQueries the LiFi aggregator for the cheapest/fastest route from another chain into Monad
check_tokenwrite actionRuns heuristic risk checks on a token address: is it a known canonical token, is it actually
create_userwrite actionProvisions a new Privy user and an Ethereum embedded wallet that works on Monad mainnet (143)
decode_return_dataGiven an ABI + function name + hex return data, decodes the values. Useful when you
fastlane_positionReads the holder's shMON balance and converts to underlying MON via convertToAssets, plus
fastlane_stakeDeposits MON into the FastLane shMONAD vault, minting shMON. shMONAD is an ERC-4626 vault
fastlane_unstakeRedeems shMON shares back to MON via the ERC-4626 redeem(shares, receiver, owner). Unlike
get_addressReturns the Monad wallet address currently linked to the authenticated user via Privy.
get_balanceReturns the native MON balance for an address on Monad. Accepts a 0x address or a '.nad'
get_portfolioReturns native MON + canonical-token balances for an address, priced in USD via DexScreener.
get_token_balanceReturns the balance of an ERC-20 token for an address on Monad.
get_token_priceReturns the current USD price for a token on Monad, sourced from the deepest-liquidity pair
get_transaction_historyReturns recent ERC-20 Transfer events involving an address by scanning the last N blocks via RPC.
get_tx_receiptFetches a transaction receipt by hash. Returns status, gas used, block number, and the explorer URL.
grant_session_keyAsks the user to authorize a scoped spend cap so the agent can execute write tools
kintsu_claim_unstakeStep 2 of the Kintsu unstake flow: calls redeem(unlockIndex, receiver). Only works after
kintsu_positionReads the holder's sMON balance and converts to underlying MON via convertToAssets.
kintsu_request_unstakeStep 1 of the Kintsu unstake flow: calls requestUnlock(shares) to queue a withdrawal.
kintsu_stakeDeposits MON into the Kintsu vault, minting sMON shares. The native asset goes as msg.value;
kuru_best_bid_askReads the current best bid and best ask prices on a Kuru CLOB market. Prices are in the
kuru_cancel_orderswrite actionBatch-cancels up to 100 open limit orders by id.
kuru_market_paramsReturns the per-market precision and fee config — required to convert price/size args to
kuru_market_swapSweeps the resting book at market with a buy or sell. `amount` is raw quote (for buy) or
kuru_place_limitPlaces a limit order (buy or sell) on a Kuru CLOB market. Price and size are raw integers
list_canonical_tokensReturns the well-known tokens on Monad (MON, WMON, USDC, USDT0, AUSD, WETH, sMON, shMON).
list_session_keysLists session-key grants for the authenticated user, newest first.
morpho_borrowBorrows the loan asset against the user's collateral position in the specified market.
morpho_marketReturns total supply assets/shares, total borrow assets/shares, lastUpdate, and fee for a
morpho_positionReturns supplyShares, borrowShares, and collateral for `user` in the given market.
morpho_repayRepays a borrowed position in a Morpho Blue market.
morpho_supplySupplies the loan asset of a Morpho Blue market. Pass MarketParams inline. Returns an
morpho_withdrawWithdraws supplied loan assets from a Morpho Blue market.
pay_for_servicewrite actionFetches `url`. If the server returns HTTP 402, signs an EIP-3009 USDC transferWithAuthorization
poll_requestChecks the status of a stored transaction request. Returns one of:
read_contractCalls a view/pure function on any Monad contract. Accepts ABI as either a parsed array
resolve_nameResolves Monad names to addresses and back. For '.nad' names, performs an on-chain Nad Name
resolve_tokenLooks up a canonical Monad token by symbol (e.g. 'USDC'), name ('Tether'), or returns
revoke_session_keyRevokes a grant immediately. Subsequent agent calls fall back to per-tx approvals.
simulate_transactionCalls eth_call against the latest block to preview the outcome of a transaction. Returns
transferwrite actionBuilds an unsigned transfer transaction (native MON or ERC-20) and returns an approval URL.
uniswap_quoteQuotes an exact-input swap on Uniswap v3 on Monad. Returns amount out, best fee tier,
uniswap_swapBuilds an unsigned exactInputSingle swap on Uniswap v3 and returns an approval URL.
whoamiReturns the authenticated user's id, Monad wallet address, and any active session-key grants.
write_contractwrite actionEncodes and sends a transaction to any Monad contract. Auto-executes under a session
Public scan report
scanner v0.1.9 · 2026-09-27 · same rubric, same numbers if you re-run it
- Code scan179 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancelast push 90 days ago12/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How Monad compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 78/100
- higher than 57% of 48,255 servers
- Tools
- 46
- the typical server has 7
- Tools that change things
- 15%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 2
- more than 75% of 28,688 servers
- Downloads a week
- 42
- more than 34% of 12,191 servers with a package
What its tools let an agent do: 37 read · 2 create · 6 change · 1 delete
Install Monad in Claude Code, Cursor or VS Code
Runs npx -y monad-mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add monad-mcp -- npx -y monad-mcp
What the publisher says
From the Monad repository's README, as published. We do not edit it. Read it on GitHub
monad-mcp
MCP server for the Monad blockchain. Your agent's gateway to balances, transfers, swaps, and DeFi on Monad — with signing handled by a Privy embedded wallet, never by the agent.
Built around a simple shape — stored requests + approval URLs + skill plugins — on Monad mainnet 143 / testnet 10143, with Privy as the wallet provider.
🌐 Landing page + live read-only demo: pareen.github.io/monad-mcp — query real Monad balances in your browser, exactly what the agent sees.
🔌 Connect it — no install, no terminal. In Claude Desktop or ChatGPT, add a custom connector and paste this URL:
https://monad-mcp.fly.dev/mcpThat's the whole setup — read tools (balances, prices, portfolios, token checks) work immediately. Step-by-step for each app: docs/connect-claude.md.
Prefer the terminal? One line in Claude Code:
claude mcp add --transport http monad https://monad-mcp.fly.dev/mcp # hosted
claude mcp add monad -- npx -y monad-mcp # or run it locallyThe hosted endpoint runs in split mode: read tools are public (paste the URL, no login — safe to share) and write tools are gated behind a Privy sign-in, returning auth_required until you authenticate. The hosted sign-in path is wired but still being verified end-to-end, so the tested route for transactions is your own Privy-signed instance — see docs/connect-claude.md, docs/FAQ.md for common security/setup questions, and docs/DEPLOY.md.
🧭 Monad ≠ Ethereum: the server ships agent-facing guidance on Monad's quirks (128 KB contracts, gaslimit billing, speculative latest, ethgetLogs caps, FastLane/MEV) as monad://guide/* MCP resources — see docs/building-on-monad.md.
What's in the box
Core tools (work on any address; auth required only where noted):
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Monad: common questions
- Is Monad MCP server safe?
- Mostly: it is graded B (78/100). Read the Monad safety report
- How do I install Monad?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Monad need an API key?
- Yes. The registry entry asks for
PRIVY_APP_SECRET. - Is Monad maintained?
- The last commit was 128 days ago (2026-06-29). The latest release is v0.2.1.
- How does Monad compare with other MCP servers?
- safety score 78/100 (higher than 57% of 48,255 servers); tools 46 (the typical server has 7); tools that change things 15% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.