OmniProvider

Pay-per-call LLM API for agents: model catalog, pricing, unpaid x402/MPP quotes, how-to-pay.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
89%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~645Tokens (tool definitions)
~811 BTypical response size
Moderate attention impact (0.50% 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": {
    "omniprovider": {
      "url": "https://mcp.omnidev.tech/mcp"
    }
  }
}

Remote endpoints

https://mcp.omnidev.tech/mcpstreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢omniprovider_list_models(tier)

Returns the public catalog: model ids, context windows, maximum output tokens, price per million input and output tokens, accepted payment rails and prepaid packs that can be bought now.

Input Schema

{
  "type": "object",
  "properties": {
    "tier": {
      "type": "string",
      "enum": [
        "open",
        "frontier"
      ],
      "description": "Optional filter by catalog tier."
    }
  },
  "additionalProperties": false
}
🟢omniprovider_get_pricing(model, input_tokens, output_tokens)

Returns prices: fixed per-call prices of the nano, small and brief routes, and per-token prices of the catalog. With a model and token counts it also returns an estimated cost and the minimum charge per rail.

Input Schema

{
  "type": "object",
  "properties": {
    "model": {
      "type": "string",
      "maxLength": 64,
      "description": "Catalog model id."
    },
    "input_tokens": {
      "type": "integer",
      "minimum": 0,
      "maximum": 2000000
    },
    "output_tokens": {
      "type": "integer",
      "minimum": 0,
      "maximum": 200000
    }
  },
  "additionalProperties": false
}
🟢omniprovider_get_quote(route, body)

Sends one unpaid request to a paid route and returns the 402 payment requirements (amount, currency, network, payee, protocol). No payment is made and no credential is sent; the response is the quote for that exact request body.

Input Schema

{
  "type": "object",
  "properties": {
    "route": {
      "type": "string",
      "enum": [
        "/v1/chat/nano",
        "/v1/chat/small",
        "/v1/brief",
        "/v1/chat/completions",
        "/x402/chat-nano",
        "/x402/chat-small",
        "/x402/brief"
      ],
      "description": "Paid route path. /v1/* accepts MPP, /x402/* accepts x402."
    },
    "body": {
      "type": "object",
      "description": "JSON request body the quote is computed for (messages or prompt; for /v1/chat/completions also model and max_tokens)."
    }
  },
  "required": [
    "route",
    "body"
  ],
  "additionalProperties": false
}
🟢omniprovider_how_to_pay(rail)

Returns the payment flow for a rail: endpoint URL, required headers, the client nonce format, and client commands. Payment is produced by the caller's own wallet tooling; this server holds no keys.

Input Schema

{
  "type": "object",
  "properties": {
    "rail": {
      "type": "string",
      "enum": [
        "mpp",
        "x402",
        "package",
        "card"
      ],
      "description": "Payment rail; all rails when omitted."
    }
  },
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools