Skip to main content
Glama
swiftnodes

swiftnodes-mcp

Official

swiftnodes-mcp

An MCP (Model Context Protocol) server for SwiftNodes — multi-chain blockchain RPC, exposed to AI agents.

One API key, 75+ chains, flat-rate pricing. This server gives Claude, ChatGPT, Cursor, and any MCP client live, factual answers about chains, pricing, and JSON-RPC method support — plus the ability to probe any EVM endpoint directly.

Tools

Tool

What it does

list_chains

Every chain SwiftNodes serves — name, slug, chain ID, category, docs page. Filterable.

get_chain

Full detail for one chain: IDs, block time, native currency, HTTP/WebSocket/archive endpoint templates, docs links.

get_pricing

Live flat-rate plans from the public API — rate limits, included features, no compute units.

get_method_support

Which JSON-RPC methods work on which chain — auto-probed weekly through the same path customer requests take. Overview or per-method detail.

probe_endpoint

Diagnose any EVM JSON-RPC endpoint (ours or anyone's): chain identity, block height, archive capability, latency — or run a specific method call.

Related MCP server: Chains API

Install

Zero dependencies, Node >= 18.

From this repo:

git clone https://github.com/swiftnodes/swiftnodes-mcp
node swiftnodes-mcp/bin/server.js   # speaks MCP over stdio

Via npm (once published): npx -y swiftnodes-mcp

Claude Desktop

{
  "mcpServers": {
    "swiftnodes": {
      "command": "node",
      "args": ["/path/to/swiftnodes-mcp/bin/server.js"]
    }
  }
}

Cursor / any MCP client

Add a stdio server with command node and args ["/path/to/swiftnodes-mcp/bin/server.js"].

Data sources

  • Chains — bundled snapshot generated from the SwiftNodes site source of truth (scripts/generate-chains-data.mjs; regenerate after chain changes).

  • Pricing — fetched live from https://rpc.swiftnodes.io/api/plans (bundled fallback if unreachable).

  • Method support — fetched live from https://swiftnodes.io/method-matrix.json, re-probed weekly. Support values reflect the real customer path, including failover.

Notes

probe_endpoint will call any http(s) URL you give it — the same ground our CLI diagnostic rpc-doctor covers. Probe responsibly: one quick pass per endpoint, not a load test.

Questions: swiftnodes.io — free tier, no KYC.

License

MIT — see LICENSE.

Available Tools

5 tools
get_chainA

Full details for one chain SwiftNodes serves: chain ID, category, block time, native currency, HTTP/WebSocket/archive endpoint URL templates, and docs links.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesChain name or slug, e.g. 'Ethereum', 'base', 'zksync'.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry all behavioral disclosure. It indicates the tool 'serves' details, implying a read operation, and enumerates the exact data categories returned. However, it does not state side effects, permission requirements, rate limits, or error behavior, which are relevant for a tool with zero annotation support.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that immediately front-loads the primary purpose ('Full details for one chain') and then enumerates the detail categories without any filler. Every phrase carries relevant information, and it is appropriately sized for the tool's simplicity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has one required parameter and no output schema. The description lists the main detail groups, which helps the agent infer the value provided. However, it could be improved by noting response format, error handling behavior, or an explicit pointer to list_chains for a chain inventory. Given the low complexity but absence of behavioral caveats, it is adequate but not comprehensive.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers 100% of the parameter 'chain' with a clear description and example, so the description does not need to re-explain the parameter. It does not add extra information about the chain parameter beyond what is in the schema, but it does clarify the context of what chain selection means. A baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear purpose: it provides 'full details for one chain', with explicit mention of chain ID, category, block time, native currency, endpoints, and docs links. This distinguishes it strongly from siblings like list_chains (all chains) and get_pricing (price only), though it doesn't use an explicit verb form like 'Fetches' or 'Returns'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies that this is the right tool for a single chain's comprehensive metadata, but it does not explicitly say 'use when you need one chain's details' or name alternatives for other cases. There is no caveat or when-not-to-use guidance, leaving the agent to infer the intended scope.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_method_supportA

Which JSON-RPC methods work on which chain, auto-probed weekly through the real customer path (eth_getProof, trace_block, trace_filter, batching, archive, and more). Call with no args for the overview, or {method} for per-chain support.

ParametersJSON Schema
NameRequiredDescriptionDefault
methodNoOptional method name, e.g. 'trace_filter' or 'eth_getProof'.

TDQS

A4.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions that data is 'auto-probed weekly,' providing insight into data freshness and caching behavior. It does not explicitly state side effects, but the tool is clearly read-only and the lack of destructive implications is implicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise, using a single sentence to convey purpose, usage, and examples. No unnecessary words or repetition; every phrase adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description fully covers what the tool does, how to invoke it in both modes, and what kind of results to expect (overview or per-chain support). It is self-contained for an agent to use correctly without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% coverage with a clear description for the optional 'method' parameter. The tool description additionally explains the semantics of omitting versus providing the parameter, enriching the parameter meaning beyond the schema alone.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: reporting which JSON-RPC methods work on which chain. It provides specific examples and distinguishes it from sibling tools like list_chains and probe_endpoint by focusing on method support rather than chain listing or endpoint probing.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly explains when to call without arguments (overview) versus with a method name (per-chain support). This gives clear, actionable guidance on how to use the tool effectively.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_pricingA

Live flat-rate pricing for SwiftNodes RPC: monthly plans, HTTP/WS rate limits, included features. No per-request fees or compute units.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the burden. It states 'Live' and 'No per-request fees' which suggests a read-only informational retrieval, but it does not explicitly mention side effects, data freshness, or security constraints. This is adequate but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is succinct, using one sentence to convey the core content and a second short sentence to clarify what it does not include (per-request fees, compute units). Every word adds value; no fluff or redundant phrasing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the absence of parameters and output schema, the description provides sufficient context. It clearly outlines the type of information returned (plans, rate limits, features) and the pricing model (flat-rate, no per-request fees), which fully equips an agent to decide when to invoke this tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There are zero parameters in the schema, and the description does not mention any. The baseline for 0 parameters is 4, and no additional parameter explanation is needed. The description effectively communicates that no input is required.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the tool provides live flat-rate pricing for SwiftNodes RPC, enumerating specific content (monthly plans, HTTP/WS rate limits, included features). The name 'get_pricing' and sibling tools (list_chains, get_chain, etc.) make it obvious this is the tool for pricing information, distinct from chain or method details.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when pricing information is needed, and the sibling tools' purposes (chains, methods, endpoint probing) contrast naturally. However, it does not explicitly state 'use this when you need pricing' or provide conditional guidance, so it falls short of a perfect score.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_chainsA

List every blockchain SwiftNodes serves (75+ chains, one API key for all). Returns name, slug, chain ID, category, and docs page per chain. Use before get_chain if unsure of the exact chain name.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoOptional name/slug substring filter, e.g. 'base' or 'zksync'.
evm_onlyNoIf true, only EVM chains are returned.

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the behavioral disclosure burden. It reveals the operation is a read-only list, the scale (75+ chains), the auth context ("one API key for all"), and the returned fields. It does not mention pagination, sorting, or rate limits, but for a straightforward list tool this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, each earning its place: the first states the primary action and scope, the second lists return fields, and the third gives usage guidance. The most important information is front-loaded with no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-optional-parameter list tool with no output schema, the description covers the core essentials: what it lists, what fields it returns, and when to use it. The only minor gap is the lack of edge-case behavior (e.g., empty results or unfiltered payload size), but the 75+ chains note already sets expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%: both query and evm_only are already clearly described with examples in the input schema. The tool description adds no extra parameter-level detail, so the baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: "List every blockchain SwiftNodes serves." It further distinguishes itself from siblings by naming the return payload (name, slug, chain ID, category, docs page) and pointing to get_chain as a complementary tool, making its unique role unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The final sentence gives explicit usage guidance: "Use before get_chain if unsure of the exact chain name." This names an alternative tool and the precise condition that selects list_chains, implying the inverse condition (when you know the chain name, use get_chain). That is actionable and leaves little to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

probe_endpointA

Diagnose ANY EVM JSON-RPC endpoint (ours or anyone's). With {url} only: checks chain identity, block height, and archive capability with latency. With {url, method, params}: performs that exact JSON-RPC call and returns the result or error.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe http(s) RPC endpoint URL to probe.
methodNoOptional JSON-RPC method to call, e.g. 'eth_chainId'.
paramsNoOptional params array for the method call.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It transparently states that it returns the result or error and performs the exact call, but it does not disclose potential side effects if the method is state-changing (e.g., eth_sendTransaction). This is a minor gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured, using two sentences to cover the tool's purpose, the two usage modes, and the expected outcome. There is no redundant or extraneous information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity and the lack of an output schema, the description adequately covers what the tool does and what it returns (result or error). It lacks examples or edge-case handling, but these are not critical for such a straightforward tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already describes each parameter individually, and the description adds value by explaining the two functional modes: url-only for chain identity/block height/archive capability, and url+method+params for exact calls. This clarifies the optionality and combination of parameters beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: to diagnose any EVM JSON-RPC endpoint and to perform exact JSON-RPC calls. It uses specific verbs ('diagnose', 'performs') and distinguishes itself from siblings by emphasizing 'ANY' endpoint, including external ones.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for endpoint diagnosis and custom method calls by outlining two modes (url-only and url+method+params). However, it does not explicitly contrast with sibling tools like list_chains or get_chain, so the guidance on when to prefer this tool over alternatives is only implicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 5 tool updatesv0.1.0
    • First observedget_chain
    • First observedget_method_support
    • First observedget_pricing
    • First observedlist_chains
    • First observedprobe_endpoint

TDQS

A4.2/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: listing chains, fetching one chain's details, getting pricing, checking method support, and probing arbitrary endpoints. No two tools overlap in a way that would cause an agent to select the wrong one.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern: list_chains, get_pricing, get_chain, get_method_support, probe_endpoint. The verbs and nouns are predictable and match the action each tool performs.

Tool Count5/5

Five tools is well-scoped for this server's purpose: catalog discovery, detail lookup, pricing, capability checking, and endpoint diagnostic. Each tool earns its place and there is no bloat.

Completeness5/5

The domain is SwiftNodes' chain and RPC support surface, and the tools cover discovery, detail, pricing, method compatibility, and live diagnosis. There are no obvious dead ends or critical missing operations for the stated purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    Description: EVM blockchain intelligence toolkit for AI agents. 20 tools for token prices, gas comparison, swap quotes, yield rates, honeypot detection, and transaction simulation across 5 EVM chains. Zero config, no API keys required.
    26
    30 npm
    3
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to fetch live multi-chain portfolio, token info, gas prices, and token prices across Ethereum, Base, Polygon, Arbitrum, and Optimism with a single call. No API key required.
    4
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Blockchain JSON-RPC on 23 EVM chains for AI agents — Ethereum, Base, Arbitrum, plus young chains like Robinhood Chain, Plasma and Ink. Free reads with no key; heavy methods (eth_getLogs, trace, debug) via a free API key or x402 USDC pay-per-call.
    12
    66 npm
    1
    MIT