
Read 31 blockchains over JSON-RPC and swap via Chord: best route, unsigned tx, simulation. No key.
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Find a token by symbol, name or address on a chain Chord trades on (base, ethereum, monad, bnb, avalanche, arbitrum, robinhood, arc). Returns addresses, decimals and whether the token is verified; similar tickers are common, so compare addresses.
Chord chain key.
Symbol, name or 0x address.
Find a token by symbol, name or address on a chain Chord trades on (base, ethereum, monad, bnb, avalanche, arbitrum, robinhood, arc). Returns addresses, decimals and whether the token is verified; similar tickers are common, so compare addresses.
| Argument | Type | Description |
|---|---|---|
| chain* | string | Chord chain key. |
| query* | string | Symbol, name or 0x address. |
{
"type": "object",
"required": [
"chain",
"query"
],
"properties": {
"chain": {
"enum": [
"base",
"ethereum",
"monad",
"bnb",
"avalanche",
"arbitrum",
"robinhood",
"arc"
],
"type": "string",
"description": "Chord chain key."
},
"query": {
"type": "string",
"description": "Symbol, name or 0x address."
}
},
"additionalProperties": false
}Best swap route from Chord (getchord.xyz) across the DEXs of the chain, with the UNSIGNED transaction to sign, the ERC-20 approval it needs (as a ready transaction) and a simulation run from the taker wallet. Amounts are integer strings in the token's smallest unit; the zero address is the native coin. Nothing is sent: sign with your own key, then send_raw_transaction.
| Argument | Type | Description |
|---|---|---|
| chain* | string | Chord chain key. |
| taker | string | The wallet that will sign. With it the answer carries tx + approval + a simulation from that wallet. |
| amount* | string | Amount of tokenIn in its smallest unit, e.g. '10000000' = 10 USDC. |
| tokenIn* | string | Token sold (zero address = native coin). |
| tokenOut* | string | Token bought (zero address = native coin). |
| slippageBps | integer | Slippage in basis points (default 50). |
{
"type": "object",
"required": [
"chain",
"tokenIn",
"tokenOut",
"amount"
],
"properties": {
"chain": {
"enum": [
"base",
"ethereum",
"monad",
"bnb",
"avalanche",
"arbitrum",
"robinhood",
"arc"
],
"type": "string",
"description": "Chord chain key."
},
"taker": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$",
"description": "The wallet that will sign. With it the answer carries tx + approval + a simulation from that wallet."
},
"amount": {
"type": "string",
"pattern": "^[0-9]+$",
"description": "Amount of tokenIn in its smallest unit, e.g. '10000000' = 10 USDC."
},
"tokenIn": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$",
"description": "Token sold (zero address = native coin)."
},
"tokenOut": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$",
"description": "Token bought (zero address = native coin)."
},
"slippageBps": {
"type": "integer",
"maximum": 5000,
"minimum": 1,
"description": "Slippage in basis points (default 50)."
}
},
"additionalProperties": false
}The native-coin balance of an address on an EVM chain, in wei and in whole coins.
| Argument | Type | Description |
|---|---|---|
| chain* | string | EVM chain slug. |
| address* | string | Account address. |
{
"type": "object",
"required": [
"chain",
"address"
],
"properties": {
"chain": {
"enum": [
"monad",
"ethereum",
"base",
"arbitrum",
"optimism",
"polygon",
"bnb",
"avalanche",
"hyperevm",
"berachain",
"abstract",
"sei",
"sonic",
"mantle",
"taiko",
"zksync",
"zetachain",
"opbnb",
"bob",
"edge",
"stable",
"katana",
"morph",
"swell",
"0g",
"tac",
"xlayer",
"gnosis",
"fantom"
],
"type": "string",
"description": "EVM chain slug."
},
"address": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]{40}$",
"description": "Account address."
}
},
"additionalProperties": false
}The latest block number of an EVM chain, as a decimal integer.
| Argument | Type | Description |
|---|---|---|
| chain* | string | EVM chain slug. |
{
"type": "object",
"required": [
"chain"
],
"properties": {
"chain": {
"enum": [
"monad",
"ethereum",
"base",
"arbitrum",
"optimism",
"polygon",
"bnb",
"avalanche",
"hyperevm",
"berachain",
"abstract",
"sei",
"sonic",
"mantle",
"taiko",
"zksync",
"zetachain",
"opbnb",
"bob",
"edge",
"stable",
"katana",
"morph",
"swell",
"0g",
"tac",
"xlayer",
"gnosis",
"fantom"
],
"type": "string",
"description": "EVM chain slug."
}
},
"additionalProperties": false
}List every chain MoltNode serves (slug, name, chainId, family, native coin, endpoint) and which ones Chord trades on. Call this first for valid chain slugs.
No arguments.
{
"type": "object",
"required": [],
"properties": {},
"additionalProperties": false
}Call any JSON-RPC 2.0 method on a chain through MoltNode, no API key. EVM chains use eth_* methods; Solana and Sui use their own.
| Argument | Type | Description |
|---|---|---|
| chain* | string | Chain slug, e.g. 'ethereum', 'base', 'monad', 'solana'. |
| method* | string | JSON-RPC method, e.g. 'eth_call', 'eth_getLogs', 'getBalance'. |
| params | array | JSON-RPC params array. Defaults to []. |
{
"type": "object",
"required": [
"chain",
"method"
],
"properties": {
"chain": {
"enum": [
"monad",
"ethereum",
"base",
"arbitrum",
"optimism",
"polygon",
"bnb",
"solana",
"avalanche",
"hyperevm",
"berachain",
"abstract",
"sei",
"sonic",
"mantle",
"taiko",
"zksync",
"zetachain",
"opbnb",
"bob",
"edge",
"stable",
"katana",
"morph",
"swell",
"0g",
"tac",
"xlayer",
"gnosis",
"fantom",
"sui"
],
"type": "string",
"description": "Chain slug, e.g. 'ethereum', 'base', 'monad', 'solana'."
},
"method": {
"type": "string",
"description": "JSON-RPC method, e.g. 'eth_call', 'eth_getLogs', 'getBalance'."
},
"params": {
"type": "array",
"items": {},
"description": "JSON-RPC params array. Defaults to []."
}
},
"additionalProperties": false
}Broadcast a signed transaction (0x-prefixed raw bytes) on an EVM chain through MoltNode. Returns the transaction hash and an explorer link.
| Argument | Type | Description |
|---|---|---|
| chain* | string | EVM chain slug. |
| signedTransaction* | string | The signed transaction, RLP-encoded, 0x-prefixed. |
{
"type": "object",
"required": [
"chain",
"signedTransaction"
],
"properties": {
"chain": {
"enum": [
"monad",
"ethereum",
"base",
"arbitrum",
"optimism",
"polygon",
"bnb",
"avalanche",
"hyperevm",
"berachain",
"abstract",
"sei",
"sonic",
"mantle",
"taiko",
"zksync",
"zetachain",
"opbnb",
"bob",
"edge",
"stable",
"katana",
"morph",
"swell",
"0g",
"tac",
"xlayer",
"gnosis",
"fantom"
],
"type": "string",
"description": "EVM chain slug."
},
"signedTransaction": {
"type": "string",
"pattern": "^0x[0-9a-fA-F]+$",
"description": "The signed transaction, RLP-encoded, 0x-prefixed."
}
},
"additionalProperties": false
}