webbridge mcp
Supports Cloudflare as one of the anonymous web-chat providers for single-shot text tasks such as ask, rewrite, summarize, translate, and classify.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@webbridge mcpsummarize this: Remote work boosts focus but can blur work-life boundaries."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
webbridge
Two surfaces over free web-chat providers, plus a metered path for a paid account.
/v1/messages: Anthropic Messages API, for a harness that pointsANTHROPIC_BASE_URLat a local port.webbridge mcp: an MCP server on stdio, for text tasks: ask, rewrite, summarize, translate, classify.
Both sit on the same drivers, so a provider added once works on both.
Status
Working: the wire contract, the Codex driver, the generic browser driver, the g4f driver, and the pacing and budget controls. 53 tests pass.
Measured 2026-10-24: five providers answer anonymously, which are ChatGPT, Gemini, GLM, Cloudflare and Yqcloud. Two consecutive turns return real text. Tool calls are reliable only on the Codex driver, because the free providers decline the tool framing on some calls.
Related MCP server: Relay MCP
Day to day
Free path, the common one: single-shot text work through MCP or through a
script that calls /v1/messages with no tools. That path returns text every
time. It cannot carry an agent loop, because ChatGPT's web UI refuses tool
framing on some calls and the anonymous account has a message limit.
Paid path: the Codex driver speaks a real tool API, so it can carry Claude Code on a metered account.
Layout
webbridge/
config.py settings, pacing, daily budget, kill switch
anthropic.py Anthropic request/response/SSE types
translate.py Anthropic <-> neutral turns, tool-call protocol
mcp_server.py MCP text tools over the same drivers
drivers/
base.py Driver protocol
codex.py sanctioned OAuth -> Codex Responses API
browser.py generic DOM driver, one YAML profile per site
g4f_client.py anonymous providers through the g4f library
sites/ one YAML profile per web chat provider
server.py FastAPI app
docs/
design.md intent, goals, anti-goals, wire contract
live-probes.md measured per-site results for the browser driver
g4f-driver.md measured providers, limits, timeouts
tests/ 35 tests
tools/ probe and end-to-end scriptsRun against a free provider (MCP)
webbridge providers # what answers anonymously
webbridge mcp --site Gemini # stdio server for an MCP clientA client config looks like this:
{
"mcpServers": {
"webbridge": {
"command": "/path/to/venv/bin/python",
"args": ["-m", "webbridge.cli", "mcp", "--site", "Gemini"],
"env": { "PYTHONPATH": "/path/to/webbridge" }
}
}
}The tools are ask, rewrite, summarize, translate and classify.
Run against a free provider (HTTP)
webbridge serve --driver g4f --site ChatGPT --port 8787Then point a script at it:
ANTHROPIC_BASE_URL=http://127.0.0.1:8787 \
ANTHROPIC_API_KEY=webbridge-local \
your-script.shRun against a primary account (sanctioned)
Log in with the Codex CLI once. The driver reuses ~/.codex/auth.json and
refreshes it in place.
codex login
webbridge serve --driver codex --port 8787Point the real Claude Code binary at it. The claude on PATH is a launcher that rewrites ANTHROPIC_BASE_URL, so exec
the versioned binary.
ANTHROPIC_BASE_URL=http://127.0.0.1:8787 \
ANTHROPIC_API_KEY=webbridge-local \
"$(ls -d ~/.local/share/claude/versions/* | tail -1)"Run against a web chat UI (browser)
webbridge sites
webbridge serve --driver browser --site zai --headless
webbridge login --site deepseek # saved login, headedA profile is one YAML file:
name: mysite
url: https://example.com/chat
composer: "textarea"
response: "[class*='markdown']"
submit_key: Enter
requires_login: false
headless_ok: false
gates:
- "button:has-text('Continue')"The login is saved under ~/.webbridge/profiles/<site>/saved-login and copied
into each run, so two servers never fight over one Chromium profile.
Safety
The pacer runs before any upstream call: one concurrent request, 20 per minute,
a 400-request daily budget, a one-second minimum gap, and up to 750 ms of
jitter. An exhausted budget returns 429 rate_limit_error and never reaches the
network. Creating ~/.webbridge/KILL returns 503.
Run one bridge at a time. g4f adopts any running CDP browser it finds, including one it did not start.
Tests
python -m pytest tests -qLive probes need network and are not part of the suite:
python tools/two_turn.py --driver g4f --provider ChatGPTThis server cannot be deployed
Maintenance
Related MCP Connectors
- QuallaaOAuthcom.quallaa
Talk to your public-facing AI from any MCP client — Claude, ChatGPT, Cursor, Cline, Windsurf.
Real-time chat for AI agents. Claude Code, Cursor, Cline and Codex join channels over MCP.
Remote streamable-HTTP MCP server running on a single Cloudflare Worker. Your assistant gets live Airbnb, Amazon, Booking.com, Google Flights, Maps and Reddit data, social search on X, Instagram and TikTok, the Meta Ad Library, and image/video generation without any keys. Connect your own accounts to let it send WhatsApp or Telegram messages, work an IMAP inbox, manage Meta Ads campaigns and publish to X and LinkedIn. OAuth 2.1 with PKCE; stored credentials are AES-256-GCM encrypted.
Text generation over MCP: prose, emails, blog outlines, SQL, humanizing, text diffs, fake data.
Related MCP Servers
AlicenseNot gradedqualityBmaintenanceLocal stdio bridge to the hosted PoYo MCP server, enabling discovery and execution of AI models via chat, generation tasks, and agent skills.1MIT- AlicenseBqualityFmaintenanceEnables local MCP clients to manage messaging workflows via stdio: list and read chats/messages, send messages, react to messages, manage typing/read state, and handle contact cards and requests.1637 npmMIT
- AlicenseAqualityAmaintenanceEnables MCP clients to drive ChatGPT's web interface through a built-in persistent browser, requiring only a single manual login. Prompts are sent through temporary incognito chats and the captured answer text is returned as tool results, along with live model listing, login/status probing, and optional HTTP transport.83Apache 2.0
- AlicenseNot gradedqualityAmaintenanceEnables MCP-compatible applications to manage local and cloud language models, run text generation and chat, generate embeddings, and perform web search and content fetching.561 npmAGPL 3.0