BridgeNode MCP

BridgeNode — x402 pay-per-request AI inference. OpenAI-compatible API + MCP, Solana USDC, gas-free.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
77%
Naming quality
93%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,458Tokens (tool definitions)
~3.6 KBTypical response size
Moderate attention impact (1.14% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "bridgenode-mcp": {
      "command": "npx",
      "args": [
        "@bridgenode/mcp"
      ]
    }
  }
}

Runnable packages

npm@bridgenode/mcp1.1.1stdio

Remote endpoints

https://bridgenode.cc/mcpstreamable-http

What it can do

Tool inventory

Tools (3)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟡chat_completions(model, mode, messages, max_tokens, tools, ...)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "model": {
      "type": "string",
      "description": "Explicit model id (see list_models / /v1/models). Mutually exclusive with mode."
    },
    "mode": {
      "type": "string",
      "enum": [
        "auto",
        "eco",
        "premium"
      ],
      "description": "Smart routing profile (auto/eco/premium)."
    },
    "messages": {
      "type": "array",
      "description": "Chat messages (text content only). An assistant turn that calls a tool may carry content: null with tool_calls.",
      "items": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "system",
              "user",
              "assistant",
              "tool"
            ]
          },
          "content": {
            "type": [
              "string",
              "null"
            ]
          },
          "tool_calls": {
            "type": "array"
          },
          "tool_call_id": {
            "type": "string"
          }
        },
        "required": [
          "role"
        ]
      }
    },
    "max_tokens": {
      "type": "integer",
      "minimum": 1,
      "description": "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."
    },
    "tools": {
      "type": "array",
      "description": "OpenAI-style tool schemas the model may call. Forwarded unchanged; they count as input tokens for the price (§4.2/§5.3).",
      "items": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "enum": [
              "function"
            ]
          },
          "function": {
            "type": "object"
          }
        },
        "required": [
          "type",
          "function"
        ]
      }
    },
    "tool_choice": {
      "description": "OpenAI tool_choice: 'auto', 'none', 'required', or {type: function, function: {name}}.",
      "type": [
        "string",
        "object"
      ]
    }
  },
  "required": [
    "messages"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "anyOf": [
    {
      "required": [
        "model"
      ]
    },
    {
      "required": [
        "mode"
      ]
    }
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "object": {
      "type": "string"
    },
    "created": {
      "type": "integer"
    },
    "model": {
      "type": "string"
    },
    "choices": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "index": {
            "type": "integer"
          },
          "message": {
            "type": "object",
            "properties": {
              "role": {
                "type": "string"
              },
              "content": {
                "type": "string"
              }
            }
          },
          "finish_reason": {
            "type": "string"
          }
        }
      }
    },
    "usage": {
      "type": "object",
      "properties": {
        "prompt_tokens": {
          "type": "integer"
        },
        "completion_tokens": {
          "type": "integer"
        },
        "total_tokens": {
          "type": "integer"
        }
      }
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢list_models

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).

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "Accepts no parameters — empty object; any arguments passed are ignored."
}

Output Schema

{
  "type": "object",
  "properties": {
    "object": {
      "type": "string"
    },
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "pricing": {
            "type": "object",
            "properties": {
              "prompt": {
                "type": "number"
              },
              "completion": {
                "type": "number"
              }
            }
          },
          "context_window": {
            "type": "integer"
          },
          "max_output_tokens": {
            "type": "integer"
          }
        }
      }
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_price_estimate(model, mode, messages, max_tokens)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "model": {
      "type": "string",
      "description": "Explicit model id (see list_models / /v1/models). Mutually exclusive with mode."
    },
    "mode": {
      "type": "string",
      "enum": [
        "auto",
        "eco",
        "premium"
      ],
      "description": "Smart routing profile (auto/eco/premium)."
    },
    "messages": {
      "type": "array",
      "description": "Chat messages (text content only).",
      "items": {
        "type": "object",
        "properties": {
          "role": {
            "type": "string",
            "enum": [
              "system",
              "user",
              "assistant",
              "tool"
            ]
          },
          "content": {
            "type": "string"
          }
        },
        "required": [
          "role",
          "content"
        ]
      }
    },
    "max_tokens": {
      "type": "integer",
      "minimum": 1,
      "description": "Max output tokens to estimate (billed upfront, §4.2)."
    }
  },
  "required": [
    "messages"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "anyOf": [
    {
      "required": [
        "model"
      ]
    },
    {
      "required": [
        "mode"
      ]
    }
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "model": {
      "type": "string"
    },
    "amount_usdc": {
      "type": "number"
    },
    "amount_atomic": {
      "type": "integer"
    },
    "input_tokens": {
      "type": "integer"
    },
    "max_tokens_clamped": {
      "type": "integer"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded3 tools
verifiedversion not recorded3 tools
verifiedversion not recorded3 tools
verifiedversion not recorded3 tools
verifiedversion not recorded3 tools
verifiedversion not recorded3 tools
verifiedversion not recorded3 tools