Skip to main content
Glama
swiftnodes

swiftnodes-mcp

Official
README.md
# swiftnodes-mcp

An [MCP (Model Context Protocol)](https://modelcontextprotocol.io) server for [SwiftNodes](https://swiftnodes.io) — 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. |

## Install

Zero dependencies, Node >= 18.

**From this repo:**

```bash
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

```json
{
  "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](https://github.com/swiftnodes/rpc-doctor) covers. Probe responsibly: one quick pass per endpoint, not a load test.

Questions: [swiftnodes.io](https://swiftnodes.io) — free tier, no KYC.

## License

MIT — see [LICENSE](LICENSE).

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