Developers / MCP

Every AI model inside the AI you already use

One MCP URL and your key, and every model on RelaySwitch is a tool inside Claude Code, Cursor, Codex, Cline, OpenCode or any client that speaks MCP: ask any model, ask several at once for a second opinion, search the web, embed and transcribe, and make images, video, speech and music with the files back in the chat. Paid by card or in USDT, USDC, BTC, ETH, SOL, no KYC.

454Models as tools
304Chat models
135Image, video and speech models
$10Minimum top-up
Connect

One line in your client

Streamable HTTP with the key as a Bearer header, the shape the Claude Code docs describe. The server card at https://api.relayswitch.io/mcp/server-card says the same to a client that reads cards.

Claude Code

bash
1claude mcp add --transport http relayswitch https://api.relayswitch.io/mcp \
2 --header "Authorization: Bearer $RELAYSWITCH_KEY"

.cursor/mcp.json

json
1// .cursor/mcp.json
2{
3 "mcpServers": {
4 "relayswitch": {
5 "url": "https://api.relayswitch.io/mcp",
6 "headers": { "Authorization": "Bearer sk-relay-live-..." }
7 }
8 }
9}

Cline

json
1// Cline > MCP Servers > Configure
2{
3 "mcpServers": {
4 "relayswitch": {
5 "type": "streamableHttp",
6 "url": "https://api.relayswitch.io/mcp",
7 "headers": { "Authorization": "Bearer sk-relay-live-..." },
8 "autoApprove": ["list_media_models", "media_model", "media_quote", "generation", "generations"]
9 }
10 }
11}

OpenCode

json
1// opencode.json
2{
3 "$schema": "https://opencode.ai/config.json",
4 "mcp": {
5 "relayswitch": {
6 "type": "remote",
7 "url": "https://api.relayswitch.io/mcp",
8 "enabled": true,
9 "oauth": false,
10 "headers": { "Authorization": "Bearer {env:RELAYSWITCH_KEY}" }
11 }
12 }
13}

Codex: ~/.codex/config.toml

toml
1[mcp_servers.relayswitch]
2url = "https://api.relayswitch.io/mcp"
3bearer_token_env_var = "RELAYSWITCH_KEY"

Hermes Agent

yaml
1# ~/.hermes/config.yaml
2mcp_servers:
3 relayswitch:
4 url: "https://api.relayswitch.io/mcp"
5 headers:
6 Authorization: "Bearer sk-relay-live-..."

Any client: list the tools

bash
1curl https://api.relayswitch.io/mcp \
2 -H "Authorization: Bearer $RELAYSWITCH_KEY" \
3 -H "Content-Type: application/json" \
4 -H "Accept: application/json, text/event-stream" \
5 -d '{"jsonrpc": "2.0", "id": 1, "method": "tools/list"}'
Tools

15 tools, one key

One tool per kind of model the catalog sells. 5 answer without a key, so a client can read models and prices first; the rest run on the key your client sends.

ToolWhat it doesKey
list_modelsEvery chat, embedding, rerank and transcription model with its type, the tool that runs it and its price.none
list_media_modelsEvery image, video, speech, music and 3D model with its price per unit at each setting.none
media_modelOne media model’s settings (every parameter, its values, range and default) and price tiers.none
estimateWhat a chat request costs on every model before it is sent.none
proofThe daily real-model check: stable, changed, failed or unchecked, per model.none
chatA conversation to any chat model, with a system prompt, images for the models that see them, and web search.Bearer
compareThe same question to 2 to 5 models at once: every answer side by side with its cost and time.Bearer
searchOne web search: titles, URLs, snippets and dates, up to 10 results.Bearer
embedText to vectors with any embedding model, up to 64 texts a call.Bearer
rerankUp to 100 documents ordered by relevance to a query.Bearer
transcribeSpeech in an audio or video file at a URL to text, or translated into English.Bearer
media_quoteWhat generate would charge for exactly these settings, next to the developer’s price. Nothing runs.Bearer
generateRuns any image, video, speech, music or 3D model and returns the files, a finished image inline.Bearer
generationOne generation by id, waiting for it to finish: the follow-up for a video.Bearer
generationsThe organization’s generations, newest first, with status, files and charge.Bearer

Tool names and descriptions as the server lists them at tools/list; the OpenAPI document covers the HTTP routes behind them.

A second opinion

Ask several models the same question, from inside the chat

compare sends one question to two to five models at once and returns every answer with its cost and time. Priced live for a 2,000-token question and a 1,000-token answer from each.

ModelInput / MOutput / MThis answer
Gemini 3.1 Pro Previewgemini-3.1-pro-preview$1.20$7.20$0.0096
Grok 4.6grok-4.6$0.60$1.80$0.003
DeepSeek V4 Pro 0423deepseek-v4-pro$0.792$2.376$0.004
One compare call$0.0166

Each model bills its own tokens; a model that fails is reported and not charged.

text
1compare { "models": ["gemini-3.1-pro-preview", "grok-4.6", "deepseek-v4-pro"],
2 "prompt": "Is this migration safe to run on a live table? Answer yes or no, then why." }
A whole shot

Picture, clip, voice-over, without leaving the chat

Prices read from the catalog at render, at the setting named in each row. The agent quotes first, then runs, then passes each file into the next tool.

StepModelSettingPriceDeveloper’s list
Picturegenerate, 2K, one imageNano Banana 2nano-banana-2resolution 2K$0.056 per image$0.101
Clip from that picturegenerate with image_urls, 720pVeo 3.1 Fastveo-3.1-fastresolution 720p$0.48 per generation$0.80
UpscalegenerateImage Upscalerimage-upscalerscale 2$0.002 per image—
Voice-overgenerate, per 1,000 charactersEleven v3 (text to speech)elevenlabs-v3any$0.10 per 1,000 characters—

A clip model that takes image_urls animates the picture generate just made; a file URL from this API is all it needs. A failed step is refunded in full.

text
1# What the agent sends, tool by tool. Every URL is a file on this API, kept 30 days.
2media_quote { "model": "nano-banana-2", "input": { "prompt": "a red paper boat on a calm pond, morning light", "resolution": "2K" } }
3generate { "model": "nano-banana-2", "input": { "prompt": "...", "resolution": "2K" } }
4 -> gen_…, 1 image inline + https://api.relayswitch.io/v1/files/2026-11-03/gen_…/0.png
5generate { "model": "veo-3.1-fast", "input": { "prompt": "the boat drifts, ripples spread", "image_urls": ["https://api.relayswitch.io/v1/files/…/0.png"], "resolution": "720p" }, "wait_seconds": 120 }
6 -> still running: generation { "id": "gen_…", "wait_seconds": 120 } until it answers with the mp4
7generate { "model": "elevenlabs-v3", "input": { "text": "A paper boat, and the morning it set out." } }
8generations { "limit": 10 } # everything the key's organization made, newest first

Two details make this work as a loop rather than a hand-off. A finished image comes back as image content, so the model that asked for it sees the result and can ask for a different one before spending on the clip. And every output is a URL on this API for 30 days, so the next tool call takes it as an input with no upload step; the media API guide shows the same routes from a script.

Recipes

Four saved chains, one command each

The server also lists four MCP prompts. Pick one and your agent gets the whole chain as a script: price every step and say the total, then generate and pass each file to the next tool. Getting a recipe is free; the tools it runs bill your key.

RecipeWhat it chainsArgumentsAt the defaults
Picture to clippicture_to_clipA picture on nano-banana-2, then veo-3.1-fast animates it from its URL; generation waits for the clip.picture, motion, aspect_ratio, image_model, video_model, max_usd$0.5202
Product shot setproduct_shot_setOne product prompt in 1:1, 4:5, 9:16 and 16:9 on nano-banana-2 at 2K, the shots run side by side.product, ratios, model, resolution, max_usd$0.224
Clip with voice-overclip_with_voiceoverA veo-3.1-fast clip and elevenlabs-v3 reading your script, made at once; with a shell, ffmpeg joins them.scene, script, voice, aspect_ratio, video_model, voice_model, max_usd$0.48 + $0.10 per 1,000 characters
Upscale and animateupscale_and_animateimage-upscaler doubles the image, then veo-3.1-fast animates the sharper copy.image_url, motion, scale, aspect_ratio, video_model, max_usd$0.482

Every argument is optional: a recipe run bare takes the picture, script or image from the conversation. max_usd stops the agent before the first generate if the quotes add up to more. Prices read from the catalog at render.

Claude Code: describe it, then run the recipe

text
1# Say what you want in the chat, then run the recipe with no arguments:
2> a red paper boat on a calm pond at sunrise, vertical for a story
3> /mcp__relayswitch__picture_to_clip
4# or pick "relayswitch:picture_to_clip (MCP)" from the / menu

Any client: read a recipe, no key needed

bash
1curl https://api.relayswitch.io/mcp \
2 -H "Content-Type: application/json" \
3 -H "Accept: application/json, text/event-stream" \
4 -d '{"jsonrpc": "2.0", "id": 1, "method": "prompts/get",
5 "params": {"name": "picture_to_clip",
6 "arguments": {"picture": "a red paper boat on a calm pond", "aspect_ratio": "9:16"}}}'

Claude Code lists each recipe in its / menu and passes arguments as single words, so say what you want in the chat first and run the command bare. A client with a prompt menu shows the arguments as fields. Either way the agent quotes before it spends, and a failed step is refunded in full.

Against a suite

A creative suite in your AI, not another app

Runway facts from runway.com and its API reference, read 2026-11-03.

RelaySwitch MCPRunway
Where you workInside the AI client you already run: Claude Code, Cursor, Codex, Cline, OpenCode, any MCP clientRunway’s own app (Runway Creative) and its developer API
ModelsEvery model on the key: 304 chat, 15 embedding, rerank and transcription, and 135 image, video, speech and 3D models from 20 developersRunway’s own models and partner models in its API (25 video ids listed on image_to_video)
PricePer image, second, clip or thousand characters, read live, next to the developer’s list price where one is on recordCredits bought on a plan or in the developer portal, priced per second in credits
Before you spendmedia_quote gives the exact charge for the settings; nothing runsThe task answer carries an estimated cost once it is created
AccountAn email address; card or crypto; no identity checkA Runway account
Failed runRefunded in full, automaticallyPer Runway’s terms
Runway’s modelsGen-4.5 is on the key as runway-gen-4.5Gen-4.5 and Gen-4 Turbo
Guides

Set it up in your client, or swap in for a server you use

Setup
Claude Code MCP

Add every AI model to Claude Code with one claude mcp add command: GPT, Gemini, Grok and DeepSeek second opinions, web search, images, video and speech on one key.

Setup
Codex MCP

Add every AI model to OpenAI Codex with four lines of config.toml: second opinions from Claude, Gemini and Grok, web search, images and video, on one prepaid key.

Setup
Cursor MCP

Add every AI model to Cursor with one mcp.json entry: ask GPT, Gemini, Grok or DeepSeek from Agent mode, search the web, make images and video, on one prepaid key.

Setup
Claude Desktop MCP

Add every AI model to Claude Desktop as a custom connector with a request header, or through mcp-remote: second opinions, web search, images and video on one key.

Setup
OpenCode MCP

Add every AI model to OpenCode with one remote MCP entry in opencode.json: second opinions, web search, embeddings, images and video on one prepaid key.

Setup
VS Code MCP

Add every AI model to VS Code and GitHub Copilot agent mode with one MCP entry: second opinions, web search, images and video, on one prepaid key.

Setup
Gemini CLI MCP

Add every AI model to Gemini CLI or Antigravity CLI with one MCP entry: ask Claude, GPT or Grok for a second opinion, search the web, make images and video.

Setup
Windsurf MCP

Add every AI model to Windsurf, now Devin Desktop, with one MCP entry: second opinions from GPT, Gemini and Grok, web search, images and video on one key.

Setup
Cline MCP

Add every AI model to Cline with one streamableHttp entry: second opinions from GPT, Gemini and Grok, web search, images and video, on one prepaid key.

Alternative
OpenRouter MCP alternative

OpenRouter’s MCP server next to this one: OAuth with a key that expires in 7 days there, a Bearer key that works in any MCP client here, with compare, search and video.

Alternative
Zen MCP alternative

A hosted alternative to Zen MCP (PAL): ask Gemini, GPT, Grok and DeepSeek from Claude Code or Cursor on one prepaid key. No local install, no key per provider.

Alternative
Web search MCP

A hosted web search MCP server for Claude Code, Cursor and Codex: titles, URLs, snippets and dates per search, on the same key that runs every model. No install.

Model
Nano Banana MCP

Generate and edit images with Nano Banana 2, Pro and Lite from Claude Code or Cursor through a hosted MCP server. One prepaid key, priced per image, no Gemini account.

Model
ElevenLabs MCP

Text to speech and music with ElevenLabs v3, Turbo 2.5 and ElevenLabs Music from Claude Code or Cursor through a hosted MCP server, on the key that runs every model.

Model
DeepSeek MCP

Call DeepSeek V4 Pro, V4 Flash and R1 from Claude Code, Cursor or Codex through a hosted MCP server: chat, compare against other models, priced per token on one key.

Model
Grok MCP

Call Grok 4.6, 4.5 and 4.3 from Claude Code, Cursor or Codex through a hosted MCP server: chat, web search and compare on one prepaid key, no xAI account.

Model
Gemini MCP server

Call Gemini 3.1 Pro, Gemini 3 Flash and the Nano Banana image models from Claude Code or Cursor through a hosted MCP server, on one prepaid key with no Google account.

FAQs

The MCP server: questions

Models, billing and what the client sees.

Open the console

A key in under a minute

Get a key

Or email hello@relayswitch.io

Every AI model as a tool in your AI

From $10 by card or in USDT, USDC, BTC, ETH, SOL. Prepaid per token or per unit, failed runs refunded. No KYC.

Join on Telegram