BridgeNode MCP
Server Details
BridgeNode — x402 pay-per-request AI inference. OpenAI-compatible API + MCP, Solana USDC, gas-free.
- Status
- Healthy
- Uptime
- 100.0% over 41 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- bridgenode-ai/bridgenode-mcp
- GitHub Stars
- 1
- Server Listing
- @bridgenode/mcp
TDQS
Scored across 3 tools
The three tools have clearly distinct purposes: listing models, estimating request cost, and generating chat completions. The descriptions explicitly cross-reference each other and state what NOT to use each tool for, eliminating overlap.
All names use snake_case consistently, and two follow a verb_noun pattern (get_price_estimate, list_models). chat_completions deviates by being a bare noun phrase without a verb, but the set remains predictable.
Three tools neatly cover the server's focused scope: discover models, price a request, and execute it. Each tool earns its place with no redundancy or bloat.
The core lifecycle—list models, estimate price, then call chat_completions—is fully covered. Minor gaps exist (no streaming, no balance/payment-status query), but the stated non-streaming design limits these and agents can work around them.
Available Tools
3 toolschat_completionsChat completions with x402 paymentAInspect
Send a chat completion request to any supported model. Free models are served without payment; the first calls to a PAID model are also free per client (free trials), after which x402 payment (Solana USDC) is required — an unpaid call returns 402 with the exact price; retry with _meta["x402/payment"]. Responses are non-streaming. Pass either mode (auto/eco/premium) or model (explicit id) — one of the two is required; model wins if both are sent. Use this tool to generate text; inspect models and prices first with the free list_models tool. Start with a FREE model (no payment at all) and keep max_tokens >= 200 — a thinking model spends part of that budget on reasoning, so a smaller limit can return an empty answer.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Smart routing profile (auto/eco/premium). | |
| model | No | Explicit model id (see list_models / /v1/models). Mutually exclusive with mode. | |
| tools | No | OpenAI-style tool schemas the model may call. Forwarded unchanged; they count as input tokens for the price (§4.2/§5.3). | |
| messages | Yes | Chat messages (text content only). An assistant turn that calls a tool may carry content: null with tool_calls. | |
| max_tokens | No | Max output tokens (billed upfront, §4.2). MCP calls are non-stream: cap per config. Use >= 200 — reasoning models share this budget with their thinking and a smaller limit can return an empty answer. | |
| tool_choice | No | OpenAI tool_choice: 'auto', 'none', 'required', or {type: function, function: {name}}. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | No | |
| model | No | |
| usage | No | |
| object | No | |
| choices | No | |
| created | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations (readOnly/destructive/idempotent flags): discloses per-client free trials, the 402 payment-required response and retry mechanism, non-streaming behavior, and billing semantics for tools/max_tokens. This is the kind of operational context annotations cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose and payment, then routing rules and finally practical guidance. Dense but each sentence carries information; the max_tokens advice is partially duplicative of the schema description, which is the only minor slack.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need no explanation, and the description still covers payment lifecycle, routing rules, streaming behavior, and a critical failure mode (empty answer from small max_tokens). Nothing an agent needs to call this correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so the baseline is 3, but the description adds real meaning: the model-vs-mode precedence rule ('model wins if both are sent') is stronger than the schema's bare 'mutually exclusive' note, and the max_tokens >= 200 guidance explains the reasoning-budget failure mode.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('send a chat completion request to any supported model') and clarifies which sibling to use for model/price discovery. An agent can distinguish this from list_models and get_price_estimate without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says to inspect models and prices first with list_models, to start with a free model, and describes the paid flow (402 then retry with _meta["x402/payment"]). When-to-use, prerequisites, and the alternative sibling tool are all named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_price_estimateEstimate the cost of a chat requestARead-onlyIdempotentInspect
Estimate the USDC cost of a chat completion request before paying — free, no payment, no authentication required. Read-only: no state changes and no external calls; the estimate is computed locally from server pricing config, so repeated calls with identical inputs return identical results (idempotent). Use this tool to check the exact price for a given model/mode, messages, and max_tokens before calling the paid chat_completions tool. Provide either mode (auto/eco/premium routing) or model (explicit id, mutually exclusive with mode); one of the two is required — if both are sent, model wins. mode values: auto = cheapest model fitting the context, eco = cheapest available, premium = best model.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | Smart routing profile (auto/eco/premium). | |
| model | No | Explicit model id (see list_models / /v1/models). Mutually exclusive with mode. | |
| messages | Yes | Chat messages (text content only). | |
| max_tokens | No | Max output tokens to estimate (billed upfront, §4.2). |
Output Schema
| Name | Required | Description |
|---|---|---|
| model | No | |
| amount_usdc | No | |
| input_tokens | No | |
| amount_atomic | No | |
| max_tokens_clamped | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant context beyond the annotations: 'no state changes and no external calls,' 'computed locally from server pricing config,' 'free, no payment, no authentication required,' and 'repeated calls with identical inputs return identical results.' These details clarify side effects, network behavior, and prerequisites, which annotations alone do not convey. No contradiction with the readOnly/idempotent/destructive hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three dense, well-structured sentences with no filler: what it does, safety/behavior, and invocation guidance. It front-loads purpose and money implications before diving into behavioral details, and every clause adds operational value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is an output schema, the description need not detail return values. It covers the required input contracts (model vs mode, messages, max_tokens), the behavioral/read-only path, the cost/auth implications, and points to related tools (chat_completions, list_models). Nothing an agent needs to call it correctly on HTTP is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with each property described, so the baseline is already strong. The description goes further by defining mode values ('auto = cheapest model fitting the context, eco = cheapest available, premium = best model') and by clarifying the relationship between model and mode: 'one of two required — if both are sent, model wins.' This resolution semantic is critical and not fully captured by the schema's anyOf.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Estimate the USDC cost of a chat completion request before paying.' It clearly scopes what the tool does and implicitly distinguishes it from chat_completions (the paid execution tool) and list_models (the model-listing tool), reducing ambiguity without even checking sibling schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says when to use this tool: 'Use this tool to check the exact price for a given model/mode, messages, and max_tokens before calling the paid chat_completions tool.' It also gives usage constraints: one of model/mode required, mutually exclusive, and 'if both are sent, model wins.' This tells an agent exactly when and with which arguments to invoke it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_modelsList available models and pricesARead-onlyIdempotentInspect
List available models and their prices — free, no payment, no authentication required. Read-only: no state changes; data is served from the server's local config, so repeated calls return identical results (idempotent). Accepts no parameters: the input schema is an empty object, and any arguments passed are ignored. Calling it without arguments returns the complete catalog with per-token prices; there is no filtering, pagination, or configuration. Use this tool to inspect models and prices before calling the paid chat_completions tool. Same data as GET /v1/models (§5.2). Do not use it to generate text (use chat_completions) or to estimate a specific request's cost (use get_price_estimate).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| data | No | |
| object | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already declare readOnly, idempotent, and non-destructive behavior, and the description adds substantial context beyond that: no authentication or payment required, arguments are ignored, data comes from local config, repeated calls return identical results, and there is no filtering or pagination. This gives an agent a complete behavioral picture with no surprises.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Every sentence adds distinct value: scope, authentication/read-only/idempotency, parameter handling, absence of filtering, recommended usage, API equivalence, and exclusions. Although it is a longer description, it is tightly packed with actionable information and remains highly scannable because each sentence addresses a separate concern.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters, a trivial input schema, and a true output schema, the description fully addresses everything an agent needs to know: cost model, authentication, side effects, behavior with no arguments, and clear routing versus sibling tools. There are no meaningful gaps in context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, and the description expands on this by explicitly stating that the input schema is an empty object and that any arguments passed are ignored. This is more informative than simply inheriting the schema. A 0-parameter baseline is already strong, and the extra clarity about ignored arguments earns a slightly higher score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
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 available models and their prices.' It clearly distinguishes itself from siblings by stating it does not generate text (chat_completions) and does not estimate request costs (get_price_estimate). The purpose is unambiguous and fully captures the tool's scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit guidance on when to use this tool: 'Use this tool to inspect models and prices before calling the paid chat_completions tool.' It also explicitly says when not to use it, naming the alternatives for text generation and cost estimation. This leaves no ambiguity about tool selection.
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 tool update
- Changed
chat_completions1 field changed- changed
Input schema / properties / max_tokens / descriptionPrevious value: -"Max output tokens (billed upfront, §4.2). MCP calls are non-stream: cap per config."New value: +"Max output tokens (billed upfront, §4.2). MCP calls are non-stream: cap per config. Use >= 200 — reasoning models share this budget with their thinking and a smaller limit can return an empty answer."
1 tool update
- Changed
chat_completions7 fields changed- changed
Input schema / properties / messages / descriptionPrevious value: -"Chat messages (text content only)."New value: +"Chat messages (text content only). An assistant turn that calls a tool may carry content: null with tool_calls." - changed
Input schema / properties / messages / items / properties / content / typePrevious value: -"string"New value: +[ + "string", + "null" +] - added
Input schema / properties / messages / items / properties / tool_call_idAdded value: +{ + "type": "string" +} - added
Input schema / properties / messages / items / properties / tool_callsAdded value: +{ + "type": "array" +} - changed
Input schema / properties / messages / items / requiredPrevious value: -[ - "role", - "content" -]New value: +[ + "role" +] - added
Input schema / properties / tool_choiceAdded value: +{ + "description": "OpenAI tool_choice: 'auto', 'none', 'required', or {type: function, function: {name}}.", + "type": [ + "string", + "object" + ] +} - added
Input schema / properties / toolsAdded value: +{ + "description": "OpenAI-style tool schemas the model may call. Forwarded unchanged; they count as input tokens for the price (§4.2/§5.3).", + "items": { + "properties": { + "function": { + "type": "object" + }, + "type": { + "enum": [ + "function" + ], + "type": "string" + } + }, + "required": [ + "type", + "function" + ], + "type": "object" + }, + "type": "array" +}
Related MCP Connectors
Pay-per-call AI infra for agents: DeFi market data, LLM inference, STT/TTS. x402 v2, USDC on Base.
Pay-per-call MCP tools over x402 (USDC/Solana): LLM, utilities, x402 market and model prices.
72 x402 endpoints: trading, AI inference, blockchain, escrow. USDC on Base+Solana.
320 AI models + 2,720 pay-per-call APIs. x402 USDC on Base or Solana, no API key.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceCrypto-native LLM gateway with OpenAI-compatible API and per-token USDC payments on Solana via the x402 protocol.9,148 npmMIT
- FlicenseNot gradedqualityCmaintenanceKeyless, pay-per-call AI gateway: 248 LLMs plus image/video/voice/music generation and live crypto, DeFi, markets, web-search and research tools through one MCP server. Pay per call in USDC via x402 on Base/Solana — no API key, no signup, free tier.-
- AlicenseAqualityCmaintenanceEnables MCP-capable AI agents to make pay-per-call Solana data requests (snapshots, risk checks, token reports, health, balances, transactions, trending pairs) with automatic USDC settlement over x402.5MIT
- AlicenseNot gradedqualityDmaintenanceSolana on-chain intelligence API — token scans, wallet PnL, bundle detection, fresh wallets, dev profiling. MCP server for Claude, Cursor & AI agents. Live PumpFun/Raydium streams1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.