OneOver MCP server

One key. GPT, Gemini, Grok, and Claude for second opinions, plus image, video, and audio generation, inside Claude Code, Cursor, VS Code, or any MCP client.

1. Get a key

  1. Sign in at oneover.com, open the developer dashboard, and choose Create key.

  2. Copy the oo_live_… value. It is shown once.

  3. A new key includes chat, images, video, audio, usage, files, apps, assets, jobs, and webhooks. It does not include billing, so create_topup stays hidden, or code, so Code Studio build tools return a scope error.

  4. Store it as an env var: export ONEOVER_API_KEY=oo_live_...

2. Add it to your client

Claude Code

claude mcp add --transport http oneover https://api.oneover.com/functions/v1/mcp \
  --header "Authorization: Bearer $ONEOVER_API_KEY"

Add --scope user to use it in every project. Check with claude mcp list, or /mcp inside a session.

Or install the plugin, which also adds a skill that tells Claude when to use OneOver:

/plugin marketplace add jonruppel/oneover-claude-plugin
/plugin install oneover@oneover

Cursor

.cursor/mcp.json (project) or ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "oneover": {
      "url": "https://api.oneover.com/functions/v1/mcp",
      "headers": { "Authorization": "Bearer oo_live_YOUR_KEY" }
    }
  }
}

VS Code

Copilot agent mode reads .vscode/mcp.json:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "oneover-key",
      "description": "OneOver API key",
      "password": true
    }
  ],
  "servers": {
    "oneover": {
      "type": "http",
      "url": "https://api.oneover.com/functions/v1/mcp",
      "headers": { "Authorization": "Bearer ${input:oneover-key}" }
    }
  }
}

Windsurf

~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "oneover": {
      "serverUrl": "https://api.oneover.com/functions/v1/mcp",
      "headers": { "Authorization": "Bearer oo_live_YOUR_KEY" }
    }
  }
}

Claude Desktop

claude_desktop_config.json only starts local programs. It does not call a remote URL with a bearer header.

Claude.ai and the Anthropic directory use OAuth. Add https://api.oneover.com/functions/v1/mcp. OneOver asks you to sign in, then mints a key that does not include billing or code.

The Desktop config file still needs a bridge. On macOS it is ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "oneover": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://api.oneover.com/functions/v1/mcp",
        "--header",
        "Authorization:${ONEOVER_AUTH}"
      ],
      "env": { "ONEOVER_AUTH": "Bearer oo_live_YOUR_KEY" }
    }
  }
}

Restart Claude Desktop after saving.

Check that it works

This needs no key. The response lists the tool names (create_topup is absent until the key has billing):

curl -s -X POST https://api.oneover.com/functions/v1/mcp \
  -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Then, with a key, ask the client to call list_models. A catalog means the header and the key are working.

3. Tools

Live tools/list returns 18 tools without a billing scope, and 19 with one.

ToolRequired argsWhat it does
chatmodel, messagesStateless chat with any text model (GPT, Gemini, Grok, Claude, and others)
list_models—Models your key can use now. Call this instead of hard-coding ids
generate_imagemodel, promptImage from a prompt. Optional negative_prompt, aspect_ratio, resolution_tier (1k, 2k, 4k)
generate_videomodelAsync video job. Returns request_id. Optional prompt, duration, resolution, aspect_ratio, generate_audio, reference_image (base64)
check_videorequest_idPoll video status
generate_audiomodel, promptSpeech or music
get_jobrequest_idPoll any generation job
create_run—Start a durable run that keeps going after the client disconnects
get_runrun_idRead a run and the events after a cursor
run_appapp_id, promptRun a Play app
list_assets—API-generated library assets
get_usage—Credit balance and usage
build_createpromptStart a Code Studio build. Needs the code scope
build_iteratebuild_project_id, promptFollow-up instruction on a build. Needs code
build_statusbuild_project_idrunning, complete, failed, or stopped. Needs code
build_get_filesbuild_project_idRead build files. Needs code
build_stopbuild_idStop a running build and keep the files. Needs code
build_publishbuild_project_idUnlisted share link at oneover.com/p/{slug}. Needs code
create_topup—Off by default. Needs the billing scope. Returns a Stripe Checkout URL (credits_5, credits_10, or credits_20) and spends money. Confirm with the user first

Video is async: call generate_video, then poll check_video or get_job until status is complete or failed. Builds work the same way: build_create, then build_status.

Protocol: the server negotiates 2025-11-25, 2025-06-18, 2025-03-26, and 2024-11-05, and answers with the version the client requested.

4. Prompts to try

5. Costs

Calls spend credits from the key's organization. Image and video cost more than chat. $5 buys 500 credits, $10 buys 1,000, and $20 buys 2,000. Pro includes 1,400 credits a month.

6. Common errors

Errors use a JSON envelope with code and request_id. Include the request id when writing to support. See errors.md.

What you seeLikely cause
unauthorized or invalid_key (401) on tools/callMissing key, a typo, or the header is not Authorization: Bearer oo_live_…
scope_denied (403)The key is missing the scope. create_topup needs billing (new keys do not have it). Build tools need code (new keys do not have it)
insufficient_credits (402)The organization is out of credits. Buy a pack in the app
rate_limit_exceeded (429)Per-key limit. Standard keys allow 60 requests a minute. See Retry-After and X-RateLimit-*
Unknown modelCall list_models. Availability changes
Desktop shows the server but no toolsThe remote URL was pasted into claude_desktop_config.json. Use the mcp-remote block above
tools/list works and tools/call does notListing is public. Calls need a key

Links

OpenAPI · llms.txt · Server card · MCP Registry: com.oneover/mcp

Markdown