mcpbeat Sign in

OpenNodes MCP Server

by opennodes-io Your server? Claim it
answering

OpenNodes is answering right now. Last checked 9 min ago. 1 067 installs a week from npm. It exposes 6 tools. Last commit 1 Nov 2026.

Discover verified AI inference nodes, get the best node+model per task, pre-price chains.

Installs per day peak 687 · avg 94 · -0% w/w
a month agotoday
Uptime history 14 days of history · worst day 97%
14 days agonow
100.0%
Uptime 24h
91 of 91 checks
6
Tools
read from the server
114 ms
Response time
average over 24h
1 067
Installs / week
npm and PyPI

What changed 41

Every tool that appeared, vanished or quietly changed what it asks for. Recorded since 20 October 2026. No other catalogue keeps this.

2 Nov a tool changed version9 times that day
2 Nov 3 tools changed the parameters they ask for6 times that day estimate, recommend, search_offerings
2 Nov a tool appeared find_locations
2 Nov a tool description was rewritten search_offerings
1 Nov a tool changed version2 times that day
31 Oct a tool changed version2 times that day
28 Oct a tool changed version
26 Oct a tool changed version5 times that day
23 Oct a tool changed version2 times that day
22 Oct 3 tools changed the parameters they ask for5 times that day estimate, recommend, search_offerings
and 27 more, back to 20 October 2026

What the code does

We read the source, 1 d ago · tools taken from the live server · rules 995398eba69f

In the project's build, not in the package

Found in continuous integration, deployment or infrastructure files, or in a neighbouring package of the same monorepo. None of this is installed when you add the server: it describes how the project is built and released. We list it because a leaked key in a build pipeline is still a real problem, but it is not something this server does on your machine.

Page executes code built at runtime impl/packages/registry/src/web/index.html:660
  pager.innerHTML = btn('«', 0, 'first page') + btn('‹', listPage - 1, 'previous page')

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

Nothing serious here today

Today is the operative word: we check OpenNodes every 15 minutes and re-read its code on every release. Watch it and you find out the day that stops being true.

Three servers free · no card

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 9 min ago.

run in your terminal
claude mcp add opennodes --transport http https://registry.opennodes.io/mcp
Settings → Connectors → Add custom connector, then paste this address
https://registry.opennodes.io/mcp
~/.codex/config.toml
[mcp_servers.opennodes]
url = "https://registry.opennodes.io/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "opennodes": {
      "url": "https://registry.opennodes.io/mcp"
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "opennodes": {
      "type": "http",
      "url": "https://registry.opennodes.io/mcp"
    }
  }
}

Available tools 6

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

estimate
estimate
Pre-price an invocation chain BEFORE spending money. Each step is either a concrete offering ("node_id/offering_id") or a `select` query that picks the best match, plus expected input and output tokens. Returns per-step cost bounds in USD, the pinned card_revision that makes each estimate enforceable at invocation, and chain totals. Use it to compare routes or budget a multi-model pipeline; nothing is invoked or charged.
locations
find_locations
Where AI models are served, by country: every known serving site (provider, region, city or facility, live or planned) with its evidence basis (claimed, documented, measured, attested), its source page, a map point (`geo`: lat, lon, precision; `derived` when only the region is known), and the models it serves. Sites whose provider publishes no model list are included with a note. Built from node cards, imported catalogs and curated location seeds. Use it to answer "which providers serve which models in Canada" or "what serves gpt-oss within 500 km of Montréal", or to check a residency requirement before choosing an offering; then search_offerings with `region` to pick one.
node
get_node
Who runs a node and how it has behaved: operator, country and regions, endpoints, declared hardware, trust tier and its history (verifications, suspensions, reinstatements, with reasons), recent registry probe results with an availability summary, and its offerings with context window and price. Use it to vet a provider before relying on it; take node_id from search_offerings, recommend or get_offering results. For one offering's full card, use get_offering.
offering
get_offering
Full detail for one offering: endpoints, pricing, serving capabilities (context window, supported features, languages, hardware), data policy, trust tier, and the registry's observed probe results. Take node_id and offering_id from search_offerings or recommend results.
offerings
search_offerings
Search AI inference offerings in the OpenNodes registry — registered nodes AND imported catalogs (OpenRouter, Hugging Face Inference Providers, models.dev, local nodes). All filters are optional and combine with AND. Returns { offerings, total, counts }: each offering has node_id, offering_id, model, pricing (USD per MTok), trust tier, serving capabilities, measured probe results, and a rank explanation. Use get_offering for one offering's full card, recommend to let the advisor choose.
recommend
recommend
Recommend the best AI node + model for a task, with an enforceable cost estimate and human-readable reasons. Use this first when you know the task but not the model. Pass `task` (sent to this registry, which extracts features and discards the text) or `features` already extracted on your side with extractFeatures from @opennodes/core, which keeps the prompt private. Returns ranked candidates with score components, a cost estimate pinned to the node's card revision, an optional cheaper two-step scenario, and MCP tool categories the task likely needs. To browse instead, use search_offerings; to price a specific chain, use estimate.

Endpoints

URLTransportStateLatencyChecked
https://registry.opennodes.io/mcp streamable-http answering 106 ms 9 min ago

Alternatives to OpenNodes

same job, measured the same way
InferCPI
by infercpi

AI inference price index: token prices, cost per capability, open vs closed, hosts, cost per task.

10 tools answering
Apipriceindex
by apipriceindex

Live, verified LLM API prices and deals: free models, discounts, compare, costs, price changes.

513 installs/wk local only
AgentKernel AI model data
by agentkernel

Live prices, rankings, licences and privacy of AI models: best model per task, costs, alternatives.

6 tools answering
mcp-computeflux
by computeflux2026isgod

OpenAI-compatible multi-model inference via ComputeFlux (Polkadot testnet, TEE-verifiable). stdio.

local only
XFuel
by xfuel-lab

Submit AI inference to XFuel, pay per task (USDC via x402 or TFUEL), fetch/verify ZK proofs.

152 installs/wk local only
Prop Firm Discount MCP
by propfirmdiscount

Find prop firm discounts, verified coupon codes, active deals, promotions, and the latest offers.

8 tools answering
GenieLocker
by nhantour

Discover and quote quality-gated private AI inference without creating or buying a locker.

local only
LogicNodes
by logicnodes

Verified EVM, Aptos and finance tools for AI agents; gas for 14 chains. Pay per call (x402).

83 tools answering

OpenNodes — questions

Answers built from our own checks of this server.

What can OpenNodes do?
It exposes 6 tools, read directly from the server on our last check. Among them: estimate, find_locations, get_node, get_offering, recommend, search_offerings. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
Is OpenNodes working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 114 ms. The bar chart above shows every period we have measured.
How do I connect OpenNodes?
Copy the ready config from this page. We generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each in the form that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does OpenNodes need an API key?
No. OpenNodes completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 6 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is OpenNodes?
It answers our handshake in 114 ms on average, which is faster than 89% of all working MCP servers we measure. That puts it in the quick quarter of the ecosystem. The comparison comes from our own checks across the whole registry, every 15 minutes.
How many people use OpenNodes?
The npm package @opennodes/cli was installed 1 067 times in the last week. Week over week that is -0%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is OpenNodes open source?
The code is open source: it is published under the Apache-2.0 licence, written in JavaScript and 0 stars on GitHub. The licence covers the code in the repository, not the hosted service at registry.opennodes.io, which runs on its operator's own terms.