MCP.Market

Monad MCP server

by pareen·io.github.pareen/monad-mcp·v0.2.1·2 stars

Monad blockchain gateway for AI agents: balances, transfers, swaps, DeFi, with Privy signing.

B78/100grade B
What users say
No reviews yet
Be the first
Safety scan
B78/100

full report

Adoption
Growing

2 stars42 downloads/wk

Reviews

Write one

Nobody 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 posts

Read from the package source without running it. The installed server may list more.

  • approve_erc20

    Builds an unsigned ERC-20 approve() and returns an approval URL. Typically used before

  • bridge_executewrite action

    Submits the source-chain transaction returned by `bridge_quote`. Currently the server-side

  • bridge_quote

    Queries the LiFi aggregator for the cheapest/fastest route from another chain into Monad

  • check_tokenwrite action

    Runs heuristic risk checks on a token address: is it a known canonical token, is it actually

  • create_userwrite action

    Provisions a new Privy user and an Ethereum embedded wallet that works on Monad mainnet (143)

  • decode_return_data

    Given an ABI + function name + hex return data, decodes the values. Useful when you

  • fastlane_position

    Reads the holder's shMON balance and converts to underlying MON via convertToAssets, plus

  • fastlane_stake

    Deposits MON into the FastLane shMONAD vault, minting shMON. shMONAD is an ERC-4626 vault

  • fastlane_unstake

    Redeems shMON shares back to MON via the ERC-4626 redeem(shares, receiver, owner). Unlike

  • get_address

    Returns the Monad wallet address currently linked to the authenticated user via Privy.

  • get_balance

    Returns the native MON balance for an address on Monad. Accepts a 0x address or a '.nad'

  • get_portfolio

    Returns native MON + canonical-token balances for an address, priced in USD via DexScreener.

  • get_token_balance

    Returns the balance of an ERC-20 token for an address on Monad.

  • get_token_price

    Returns the current USD price for a token on Monad, sourced from the deepest-liquidity pair

  • get_transaction_history

    Returns recent ERC-20 Transfer events involving an address by scanning the last N blocks via RPC.

  • get_tx_receipt

    Fetches a transaction receipt by hash. Returns status, gas used, block number, and the explorer URL.

  • grant_session_key

    Asks the user to authorize a scoped spend cap so the agent can execute write tools

  • kintsu_claim_unstake

    Step 2 of the Kintsu unstake flow: calls redeem(unlockIndex, receiver). Only works after

  • kintsu_position

    Reads the holder's sMON balance and converts to underlying MON via convertToAssets.

  • kintsu_request_unstake

    Step 1 of the Kintsu unstake flow: calls requestUnlock(shares) to queue a withdrawal.

  • kintsu_stake

    Deposits MON into the Kintsu vault, minting sMON shares. The native asset goes as msg.value;

  • kuru_best_bid_ask

    Reads the current best bid and best ask prices on a Kuru CLOB market. Prices are in the

  • kuru_cancel_orderswrite action

    Batch-cancels up to 100 open limit orders by id.

  • kuru_market_params

    Returns the per-market precision and fee config — required to convert price/size args to

  • kuru_market_swap

    Sweeps the resting book at market with a buy or sell. `amount` is raw quote (for buy) or

  • kuru_place_limit

    Places a limit order (buy or sell) on a Kuru CLOB market. Price and size are raw integers

  • list_canonical_tokens

    Returns the well-known tokens on Monad (MON, WMON, USDC, USDT0, AUSD, WETH, sMON, shMON).

  • list_session_keys

    Lists session-key grants for the authenticated user, newest first.

  • morpho_borrow

    Borrows the loan asset against the user's collateral position in the specified market.

  • morpho_market

    Returns total supply assets/shares, total borrow assets/shares, lastUpdate, and fee for a

  • morpho_position

    Returns supplyShares, borrowShares, and collateral for `user` in the given market.

  • morpho_repay

    Repays a borrowed position in a Morpho Blue market.

  • morpho_supply

    Supplies the loan asset of a Morpho Blue market. Pass MarketParams inline. Returns an

  • morpho_withdraw

    Withdraws supplied loan assets from a Morpho Blue market.

  • pay_for_servicewrite action

    Fetches `url`. If the server returns HTTP 402, signs an EIP-3009 USDC transferWithAuthorization

  • poll_request

    Checks the status of a stored transaction request. Returns one of:

  • read_contract

    Calls a view/pure function on any Monad contract. Accepts ABI as either a parsed array

  • resolve_name

    Resolves Monad names to addresses and back. For '.nad' names, performs an on-chain Nad Name

  • resolve_token

    Looks up a canonical Monad token by symbol (e.g. 'USDC'), name ('Tether'), or returns

  • revoke_session_key

    Revokes a grant immediately. Subsequent agent calls fall back to per-tx approvals.

  • simulate_transaction

    Calls eth_call against the latest block to preview the outcome of a transaction. Returns

  • transferwrite action

    Builds an unsigned transfer transaction (native MON or ERC-20) and returns an approval URL.

  • uniswap_quote

    Quotes an exact-input swap on Uniswap v3 on Monad. Returns amount out, best fee tier,

  • uniswap_swap

    Builds an unsigned exactInputSingle swap on Uniswap v3 and returns an approval URL.

  • whoami

    Returns the authenticated user's id, Monad wallet address, and any active session-key grants.

  • write_contractwrite action

    Encodes 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

no findings
  • 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
Overall 78/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

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
Add to Cursor

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/mcp

That'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 locally

The 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.