mcpField
U
UberLLM

UberLLM

Remote
uberllm.devAI & Agents0Updated 3d ago

About UberLLM

UberLLM is a hosted MCP server and model API marketplace for people building with AI models. One key provides access to chat, image, video, music and speech models, with model discovery, price quotes and account balance tools.

Key features

  1. 01Discover models and live prices
  2. 02Quote request costs
  3. 03Generate and edit images
  4. 04Start and track video jobs
  5. 05Check account balance

Use cases

  1. 01Compare available models before a request
  2. 02Estimate cost before generating content
  3. 03Create images or start video generation
  4. 04Check prepaid balance and job status

MCP support

The hosted Streamable HTTP MCP server exposes tools to list and inspect models, quote costs, generate or edit images, manage video jobs and check balances. Calls are billed like the corresponding API requests.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://api.uberllm.dev/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

All endpoints
Streamable HTTPhttps://api.uberllm.dev/mcpAuth required

Tools

Details

From the project README

UberLLM

UberLLM

UberLLM is an API marketplace for AI models: chat, image, video, music and speech. You call one OpenAI- and Anthropic-compatible API with one key. Each request is served by a third-party inference provider for that model, and costs what that provider charged for it.

  • No UberLLM fee on requests. Adding credit by card costs 5.5% + $0.50.
  • Prepaid. Accounts start at $0; a request that fails is not billed.
  • Base URL: https://api.uberllm.dev/v1 (OpenAI) or https://api.uberllm.dev (Anthropic).
  • Models and live prices: https://uberllm.dev/models
  • Docs: https://uberllm.dev/docs

This repository holds the public tooling: plugins for Claude Code and Codex, the uberllm agent skill, the Claude Code installer with its checksums, and copy-paste setup for SDKs and MCP clients.

Get a key

Sign in at https://uberllm.dev with your email (a code is sent, no password), add credit, and create a key in Dashboard → Keys. Keys start with ull_.

Install in your coding agent

This repository is a Claude Code plugin, a Codex plugin and an Agent Skill. Each one adds UberLLM's hosted MCP server (https://api.uberllm.dev/mcp, Streamable HTTP) and/or the uberllm skill, which knows how to set UberLLM up, pick a model and make images and videos. Nothing to build or run locally: the server is hosted, and it authenticates with your key as Authorization: Bearer ull_....

MCP tools: list_models, get_model, quote, generate_image, edit_image, start_video, get_job, wait_job, balance. A tool call is billed exactly like the same API request. Full reference: https://uberllm.dev/docs/mcp

Claude Code plugin (MCP server + skill). Inside Claude Code:

/plugin marketplace add PSA-Team-source/uberllm
/plugin install uberllm@uberllm

Claude Code asks for your API key when the plugin is enabled and keeps it in your system's credential store. Set or change it later with claude plugin configure uberllm.

Codex plugin (MCP server + skill):

codex plugin marketplace add PSA-Team-source/uberllm
codex plugin add uberllm@uberllm
export UBERLLM_API_KEY=ull_...   # the MCP server reads the key from here

Skill only (Claude Code, Codex, Cursor, OpenCode and other agents that read Agent Skills), via skills.sh:

npx skills add PSA-Team-source/uberllm

MCP server only, Claude Code:

claude mcp add --transport http uberllm https://api.uberllm.dev/mcp --header "Authorization: Bearer ull_..."

Cursor (~/.cursor/mcp.json) and other clients that take a URL:

{
  "mcpServers": {
    "uberllm": {
      "url": "https://api.uberllm.dev/mcp",
      "headers": { "Authorization": "Bearer ull_..." }
    }
  }
}

VS Code (.vscode/mcp.json; VS Code asks for the key once and stores it):

{
  "inputs": [
    { "type": "promptString", "id": "uberllm-key", "description": "UberLLM API key (ull_...)", "password": true }
  ],
  "servers": {
    "uberllm": {
      "type": "http",
      "url": "https://api.uberllm.dev/mcp",
      "headers": { "Authorization": "Bearer ${input:uberllm-key}" }
    }
  }
}

Claude Desktop (Settings → Developer → Edit Config), through mcp-remote:

{
  "mcpServers": {
    "uberllm": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://api.uberllm.dev/mcp", "--header", "Authorization:${UBERLLM_AUTH}"],
      "env": { "UBERLLM_AUTH": "Bearer ull_..." }
    }
  }
}

The server is listed in the official MCP Registry as dev.uberllm/mcp (server.json).

OpenAI SDK

from openai import OpenAI

client = OpenAI(base_url="https://api.uberllm.dev/v1", api_key="ull_...")
r = client.chat.completions.create(
    model="deepseek/deepseek-v4-flash",
    messages=[{"role": "user", "content": "Say hello in five words."}],
)
print(r.choices[0].message.content)

Anthropic SDK

from anthropic import Anthropic

client = Anthropic(base_url="https://api.uberllm.dev", api_key="ull_...")
m = client.messages.create(
    model="anthropic/claude-haiku-4.5",
    max_tokens=100,
    messages=[{"role": "user", "content": "Say hello in five words."}],
)
print(m.content[0].text)

Any chat model in the catalog works on both APIs. Model ids are the ids on https://uberllm.dev/models.

Vercel AI SDK

import { createOpenAICompatible } from "@ai-sdk/openai-compatible";
import { generateText } from "ai";

const uberllm = createOpenAICompatible({
  name: "uberllm",
  apiKey: process.env.UBERLLM_API_KEY,
  baseURL: "https://api.uberllm.dev/v1",
  includeUsage: true,
});

const { text } = await generateText({
  model: uberllm("deepseek/deepseek-v4-flash"),
  prompt: "Say hello in five words.",
});

Streaming, tool calls and images: https://uberllm.dev/docs/ai-sdk

Claude Code

By hand (3 steps)
  1. Create a key in Dashboard → Keys.

  2. Save it to a file only you can read:

    mkdir -p ~/.uberllm && chmod 700 ~/.uberllm
    printf '%s\n' 'ull_your_key' > ~/.uberllm/key && chmod 600 ~/.uberllm/key
    
  3. Add this to ~/.claude/settings.json (every project) or <project>/.claude/settings.local.json (one project):

    {
      "apiKeyHelper": "cat ~/.uberllm/key",
      "env": {
        "ANTHROPIC_BASE_URL": "https://api.uberllm.dev",
        "CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY": "1"
      }
    }
    
With the installer

install/claude-code.sh (macOS, Linux) and install/claude-code.ps1 (Windows) are byte-for-byte the files served at https://uberllm.dev/install/. They sign you in through the browser, save the key to a mode-600 file, merge ANTHROPIC_BASE_URL and an apiKeyHelper into your Claude Code settings (backing the file up first), and make one test request. --uninstall reverts it.

Read it, check it, then run it:

curl -fsSL https://uberllm.dev/install/claude-code.sh -o claude-code.sh
shasum -a 256 claude-code.sh   # compare with install/SHA256SUMS
less claude-code.sh
sh claude-code.sh              # add --project for this project only
FileSHA-256
claude-code.shf5aa1c4610992d8f4ecc1b1cd777bc731c5fad9da6a38cac46989834b194d66c
claude-code.ps160d631b48e60a2e3f17e5eee19136d47a255f143627986e86b6ceb379858a3b9

If the file you downloaded does not match the sum above, do not run it, and tell us at [email protected].

Details: https://uberllm.dev/docs/claude-code

Support

[email protected] · Privacy · Terms

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.