LabscoMCP early access ↗
rkmonarchMCP SERVER

SVM-MCP

Balances, latest transaction and token holdings for any address on SOON's testnet and mainnet — the same three reads, split per network.

by rkmonarch ↗Chain State, Explorers & Contract ToolingCommunity

LABSCO SUMMARY

Network is in the tool name, not in an argument.

Splitting testnet and mainnet into separate tools is a small decision with a real payoff: a model cannot quietly read mainnet when you meant testnet, because the choice is made at call time by name. The trade-off is that switching to a different SVM chain is a source edit rather than a config change — fine for SOON, worth knowing if you intended to point it elsewhere.

What it is

An MCP server connecting a client to SOON and other SVM-based chains. It ships six tools: three reads, each present once for testnet and once for mainnet, so the network is chosen by which tool is called rather than by a parameter that can be forgotten.

What you get

  • Native balance for an address on either network — get-soon-testnet-balance, get-soon-mainnet-balance
  • The most recent transaction for an address, fetched by signature and returned in full — get-soon-testnet-last-transaction, get-soon-mainnet-last-transaction
  • Every token account owned by an address — get-soon-testnet-account-tokens, get-soon-mainnet-account-tokens
  • A clear message when an address has no transactions, rather than an empty result to interpret

Requirements

No account and no key — it uses SOON's public RPC endpoints, https://rpc.testnet.soo.network/rpc and https://rpc.mainnet.soo.network/rpc. Node.js v16 or higher, npm or Bun. Clone, install, build, then point the client at build/index.js. Pointing it at another Solana-compatible chain means editing the connection URLs in the source. The package is svm-mcp (1.0.0 in package.json).

Setup effort

Build from source — git clone https://github.com/rkmonarch/svm-mcp