Farhan Agent Bridge
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., "@Farhan Agent Bridge Ask Codex to write unit tests for utils.js and show me the result"
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.
Farhan Agent Bridge
A local Windows stdio MCP plugin for delegating a task through your existing Codex or Claude Code subscription login, then retrieving its result.
Release: 0.2.0 · License: MIT · Runtime: Node.js 20+
This repository publishes the supplied v0.2.0 plugin. It is not a copy of the separately installed v0.3.0 bridge. Google/Antigravity support is not included. This is an independent community project, not an official provider integration.
What it does
Checks installed CLI compatibility and subscription authentication.
Runs one local background task at a time across bridge processes.
Provides separate submit/result tools for Codex and Claude.
Saves prompts, results and reported usage in a local runtime directory.
Allows optional public Claude web search/fetch with
allow_web: true.
A separate authentication directory does not mean a separate account. Provider allowances remain separate; the bridge neither pools them nor provides unlimited usage. CLI cost estimates are not evidence of an additional subscription charge.
Related MCP server: codex-claude-bridge
Requirements
Windows and Node.js 20 or newer. Repository checks were run on Node.js 24.19.0.
An MCP client that supports local stdio servers, or the included plugin manifests.
The official Codex npm CLI and/or official Claude Code, separately installed and signed in through the subscription account you intend to use.
Compatible CLI flags. The bridge probes Codex
exec --ignore-user-configand Claude's safe-mode/tool-configuration support. An incompatible CLI is rejected.
This project does not bundle provider CLIs, credentials or dependencies. Provider account terms and usage limits still apply.
Installation
Clone/download the repository. Point a local stdio MCP client at:
{
"mcpServers": {
"farhan-agent-bridge": {
"command": "node",
"args": ["C:/path/to/farhan-agent-bridge/server/bridge.mjs"]
}
}
}The included .mcp.json, mcp.json, plugin.json and .codex-plugin/plugin.json
are packaging variants using ${PLUGIN_ROOT}. Import the variant supported by
your client; repository tests do not establish compatibility with every client.
Authentication and local storage
By default the runtime directory is %USERPROFILE%/.farhan-agent-bridge:
Directory | Purpose |
| Dedicated Codex sign-in/configuration |
| Dedicated Claude Code sign-in/configuration |
| Worker working directory |
| Plaintext task prompts, results and usage |
FARHAN_BRIDGE_DATA can select another runtime directory. Keep it outside the
repository. Do not upload it or place authentication state in an issue.
Use the official CLI login flows with CODEX_HOME or CLAUDE_CONFIG_DIR set to
the appropriate dedicated directory. For Claude, use the Claude subscription
login rather than API/Console authentication. The bridge does not log in for you,
accept account terms, or copy browser credentials.
Claude runtime discovery in this release looks for runtimes/claude/claude.exe
inside the runtime directory, then %USERPROFILE%/.local/bin/claude.exe.
Codex discovery looks for its npm entrypoint in the usual Windows npm directory
and PATH-related npm locations. This is Windows-oriented discovery, not a general
cross-platform installer.
Tools
Tool | Purpose |
| Check compatibility and subscription sign-in; no inference |
| Submit authorized text to Codex |
| Retrieve status, answer and usage |
| Submit text; public web access is opt-in |
| Retrieve status, answer and usage |
Call bridge_status, submit one authorized task and poll the returned task ID
until completed or failed. Queued/running is not completion. A task prompt may
contain at most 50,000 characters. Workers time out after 20 minutes; Claude also
has a 12-turn cap. The Windows computer must stay awake and online.
For a minimal live check, ask the chosen provider to reply with a fixed test
string, with no tools. Such a live check consumes provider allowance; it is not
part of npm test.
Boundaries
Codex runs in a read-only shell sandbox with ordinary user configuration ignored. Read-only does not guarantee unrelated files are unreadable. Claude receives supplied text, no shell/local-file/MCP tools, and optional public WebSearch/WebFetch. Neither worker inherits an authenticated browser through this bridge.
Several API-key and provider-override environment variables are removed. There is no configured paid API fallback, provider fallback or purchase flow. This is not a comprehensive security audit or a guarantee about future CLI behavior. Keep paid extra usage disabled in the official account and inspect usage settings. Remaining Claude allowance and its billing switch are not exposed by auth status. Administrator-managed policies may still apply.
Share only authorized context. In particular, do not send a private CV, mailbox, ledger or personal export to an employer-managed provider account. Review worker findings before applications, messages, publication or other consequential actions.
See SECURITY.md.
Development and verification
No npm dependencies are required:
npm run check
npm testThe included tests check manifest version consistency, stdio initialization, tool discovery, ping, invalid task IDs, empty/oversized prompts and unsupported methods, using a temporary data directory. They make no provider inference calls.
These checks passed for this repository preparation. Live inference, authentication, provider billing behavior, concurrency and full worker lifecycle are not covered by the included tests. Earlier local setup claims are not presented as a portable release test suite.
License
MIT, copyright 2026 Farhan Shaikh.
Available Tools
5 toolsbridge_statusARead-only
Check local Codex and Claude subscription authentication. Returns Claude account and subscription type from official auth status. No inference call. Does not return remaining Claude allowance.
Inputs: no named parameters.
get_claude_taskARead-only
Retrieve a Claude task status, final answer and usage. Cached input, cache creation and ordinary input are separate provider fields. A list-price estimate is not an actual subscription charge. Queued/running is not completion.
Inputs: task_id (required).
get_codex_taskARead-only
Retrieve status, final answer and provider-reported token usage for a previously submitted task. Do not treat queued/running as completed.
Inputs: task_id (required).
submit_claude_taskA
Delegate a user-authorized text-analysis task through official Claude Code subscription login. Optional public web research with allow_web=true. No shell, local-file, MCP, messaging or publishing tools. Uses Sonnet and checks subscription auth before each task. One shared active task, 20-minute timeout, polling required. First test: Reply exactly CLAUDE_BRIDGE_TEST_OK. Never infer allowance from token counts; no API fallback is configured.
Inputs: task (required), allow_web.
submit_codex_taskA
Delegate one user-authorized task to the locally signed-in Codex account using gpt-6.1-sol. Consumes that account allowance. Runs asynchronously in read-only mode with inherited user config disabled. No credentials or full ChatGPT memory are transferred; supply only relevant task context. First test: Reply exactly BRIDGE_TEST_OK without tools. The Windows computer must stay awake. Does not provide bulk scraping, Claude or Google access.
Inputs: task (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 5 tools
Each tool has a clearly distinct role: bridge authentication status, task submission, and task retrieval. The Codex and Claude variants are explicitly provider-scoped, so an agent can select the correct tool without ambiguity.
The task tools follow a consistent verb_provider_task pattern: submit_codex_task, get_codex_task, submit_claude_task, get_claude_task. bridge_status is a minor deviation because it omits the verb-style prefix, but the overall convention remains readable and predictable.
Five tools are well matched to a two-provider bridge: one shared status check plus submit/get pairs for Codex and Claude. Each tool has a clear purpose and there is no excessive surface area.
The surface covers the core lifecycle: checking authentication, submitting tasks, and retrieving status, answers, and usage for both providers. Missing cancellation or task-listing operations are minor gaps that do not block the primary bridge workflow.
Maintenance
Related MCP Connectors
Hosted coding agent: start, follow up on and stop tasks that can open GitHub pull requests.
Task and sprint coordination for humans and AI agents, with scoped API keys and full audit trail.
Task tracking built for coding agents. Work is leased, so two agents never take the same SubTask.
Project context, backlog tasks, and controlled workflows for coding agents. OAuth sign-in.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables Codex to offload expensive code reading, editing, and checking to a worker agent via Claude Code, supporting async jobs and long-running tasks.MIT
- AlicenseNot gradedqualityBmaintenanceEnables delegating bounded tasks from Codex to Claude Code, including read-only reviews, isolated branch edits, long-running background work, and approval handling.455 npmMIT
- AlicenseAqualityCmaintenanceEnables Codex to delegate review and implementation tasks to the local Qoder CN CLI as background jobs, with two permission tiers and polling-based status updates.5MIT
- FlicenseNot gradedqualityAmaintenanceEnables users to submit long-running Codex Desktop tasks and workflows asynchronously, poll their status, handle approvals or plans, recover from restarts, and retrieve final reports and diagnostics.-