Claude Mcp Bridge

io.github.hampsterx由 GitHub 账号 hampsterx 发布v0.7.2更新于 Oct 24, 2026

Wraps Claude Code CLI as MCP tools: query, search, structured, ping, listSessions.

发布方自己的服务:Claude Platform Docs

概览

AI 生成的概览

把 Claude Code CLI 封装为 MCP 工具,让助手执行 Claude 提示、网页搜索和符合 schema 的 JSON 输出,并支持会话续接与费用上限。

可以做什么
  • 带文件上下文和图片执行提示,可续接会话、调整推理强度并设置预算上限
  • 通过 Claude 的 WebSearch 和 WebFetch 工具联网搜索,返回带来源的综合答案
  • 按给定 JSON Schema 生成结构化输出
  • 检查 CLI 版本、认证方式与模型配置
  • 列出活跃会话及其轮次和累计费用
  • 每次响应附带耗时、模型、会话 ID 和 token 用量等元数据
适用场景
适合 MCP 客户端没有 shell 访问权限(如 Cursor、Windsurf、VS Code、Claude Desktop)但仍想使用 Claude Code 能力的场景,或需要结构化 JSON、可续接会话、并发控制和单次调用费用上限时。有 shell 的终端代理可直接调用 CLI。
运行要求
通过 npx 在本地运行,需要已安装 Claude Code CLI 并在 PATH 中(或用 CLAUDE_CLI_PATH 指定)。认证方式为 Claude 订阅登录(默认),或仅在 CLAUDE_BRIDGE_USE_API_KEY 设为 1 时转发 ANTHROPIC_API_KEY。可选变量可调整模型、推理强度、并发数和预算。
安装前请注意
启用 API key 模式后按次计费,CLAUDE_MAX_BUDGET_USD 可限制单次花费且仅在该模式下生效。子进程工具集默认只读,但放宽 CLAUDE_QUERY_TOOLS、CLAUDE_STRUCTURED_TOOLS 或 CLAUDE_SEARCH_TOOLS(例如设为 default)会在所传工作目录中授予 Bash、Write 和 Edit 能力。搜索会把查询发送给 Anthropic 的网页工具。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Claude Mcp Bridge,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

claude-mcp-bridge

[npm version] [npm downloads] [CI] [License: MIT] [Node.js] [TypeScript] [MCP] [Available on CodeGuilds]

MCP server that wraps Claude Code CLI as a subprocess, exposing its capabilities as Model Context Protocol tools.

Works with any MCP client: Codex CLI, Gemini CLI, Cursor, Windsurf, VS Code, or any tool that speaks MCP.

Do you need this?

If you're in a terminal agent (Codex CLI, Gemini CLI) with shell access, call Claude Code CLI directly:

bash
# Analyze specific filesclaude -p --bare --tools Read -- "Analyze src/utils/parse.ts for edge cases"
# With budget capclaude -p --bare --max-budget-usd 0.50 "Is this retry logic sound?"

--bare skips hooks, memory, and plugins for clean subprocess use. --tools restricts which tools Claude can use at all; --allowed-tools only pre-approves permission and leaves everything else, including Bash, still reachable. --max-budget-usd prevents runaway costs.

--tools is variadic, so end the list with -- (or another flag) before the prompt. Without it the prompt is read as one more tool name and the CLI exits with "Input must be provided".

For code review, see Code review with this CLI.

Use this MCP bridge instead when:

  • Your client has no shell access (Cursor, Windsurf, Claude Desktop, VS Code)
  • You need structured output with native --json-schema validation
  • You need session resume across calls (--resume SESSION_ID)
  • You need concurrency management and security hardening
  • You want cost metadata surfaced in MCP responses

Quick Start

bash
npx claude-mcp-bridge

Prerequisites

  • Claude Code CLI installed and on PATH
  • Authentication (one of):
    • Subscription (default): claude login (uses your Pro/Max plan, no API credits needed)
    • API key: set ANTHROPIC_API_KEY + CLAUDE_BRIDGE_USE_API_KEY=1 (billed per use via console.anthropic.com)

Codex CLI

Add to ~/.codex/config.json:

json
{  "mcpServers": {    "claude-bridge": {      "command": "npx",      "args": ["-y", "claude-mcp-bridge"]    }  }}

Gemini CLI

Add to ~/.gemini/settings.json:

json
{  "mcpServers": {    "claude-bridge": {      "command": "npx",      "args": ["-y", "claude-mcp-bridge"]    }  }}

Cursor / Windsurf / VS Code

Add to your MCP settings:

json
{  "claude-bridge": {    "command": "npx",    "args": ["-y", "claude-mcp-bridge"],    "env": {      "ANTHROPIC_API_KEY": "sk-ant-...",      "CLAUDE_BRIDGE_USE_API_KEY": "1"    }  }}

Tools

ToolDescription
queryExecute prompts with file context, session resume, effort control, and budget caps. Supports text and images. For code review, see Code review with this CLI.
searchWeb search via Claude CLI's WebSearch and WebFetch tools. Returns synthesized answers with sources.
structuredJSON Schema validated output via Claude CLI's native --json-schema.
pingHealth check with CLI version, auth method, capabilities, and model config.
listSessionsList active sessions with cumulative cost, turn count, and timestamps.

query

Execute a prompt with optional file context. Supports session resume via sessionId, effort control (low/medium/high/max), and budget caps (maxBudgetUsd). Images (.png, .jpg, .gif, .webp, .bmp) up to 5MB each are passed to Claude's Read tool.

Key parameters: prompt (required), files, model (default sonnet), sessionId, effort, maxBudgetUsd, workingDirectory, timeout (default 60s).

search

Web search powered by Anthropic's WebSearch tool via Claude CLI. Returns synthesized answers with source URLs.

Key parameters: query (required), model (default sonnet), maxResponseLength, maxBudgetUsd, timeout (default 120s).

structured

Generate JSON conforming to a provided schema using Claude CLI's native --json-schema flag. Returns clean JSON in the first content block, metadata in a separate block so JSON parsing isn't broken.

Key parameters: prompt (required), schema (required, JSON string, max 20KB), files, model (default sonnet), sessionId, maxBudgetUsd, timeout (default 60s).

ping

No parameters. Returns CLI version, auth method (subscription/api-key/none), configured models, capabilities, and server version.

listSessions

No parameters. Returns active sessions with metadata: sessionId, model, createdAt, lastUsedAt, turnCount, totalCostUsd.

All tools attach execution metadata (_meta) with durationMs, model, sessionId, totalCostUsd, and token breakdowns. See DESIGN.md for details.

Configuration

Models

VariableDefaultDescription
CLAUDE_DEFAULT_MODELShared default for all tools
CLAUDE_QUERY_MODELsonnetDefault for query
CLAUDE_STRUCTURED_MODELsonnetDefault for structured
CLAUDE_SEARCH_MODELsonnetDefault for search
CLAUDE_FALLBACK_MODELhaikuFallback on quota exhaustion (none to disable)

Model resolution: explicit parameter > tool-specific env var > CLAUDE_DEFAULT_MODEL > built-in default.

Runtime

VariableDefaultDescription
CLAUDE_MAX_CONCURRENT3Max concurrent subprocess spawns
CLAUDE_CLI_PATHclaudePath to CLI binary
CLAUDE_MAX_BUDGET_USDGlobal cost cap in USD (per call)
ANTHROPIC_API_KEYAPI key (only forwarded when CLAUDE_BRIDGE_USE_API_KEY=1)
CLAUDE_BRIDGE_USE_API_KEYSet to 1 to forward ANTHROPIC_API_KEY to the subprocess (default: subscription auth)

Effort

VariableDefaultDescription
CLAUDE_SEARCH_EFFORTmediumDefault effort for search
CLAUDE_QUERY_EFFORTDefault effort for query

Tools

Each spawned subprocess gets an explicit built-in toolset. The defaults are read-only, so Bash, Write and Edit are not granted unless you widen them below.

VariableDefaultDescription
CLAUDE_QUERY_TOOLSRead Glob GrepBuilt-in tools for query
CLAUDE_STRUCTURED_TOOLSRead Glob GrepBuilt-in tools for structured
CLAUDE_SEARCH_TOOLSWebSearch WebFetchBuilt-in tools for search

Accepts a comma or space separated list, default for the CLI's full built-in set, or an empty value for no tools. Widening these gives the subprocess real capability in the working directory you pass it. See SECURITY.md § Tool Sandboxing.

Choosing a Claude Code MCP server

You need...Consider
Structured output, effort/budget control, session resume, cost metadataThis bridge
Multi-tool orchestration (read, grep, edit, bash as separate MCP tools)mcp-claude-code
Session continuity with async executionclaude-mcp
Maintained lightweight wrapper@kunihiros/claude-code-mcp
Native Claude Code MCP (built-in, no wrapper)claude mcp serve (docs)

Performance

Claude Code CLI has minimal startup overhead. Wall time is dominated by model inference and any agentic exploration.

ScenarioTypical time
Trivial prompt (sonnet)5-10s
Web search + synthesis15-30s

Cost metadata (totalCostUsd, token breakdowns) is returned in _meta on every response.

Bridge family

Two MCP servers, same architecture, different underlying CLIs. Each wraps a terminal agent as a subprocess and exposes it as MCP tools. Pick the one that matches your model provider, or run both for cross-model workflows.

claude-mcp-bridgecodex-mcp-bridge
CLIClaude CodeCodex CLI
ProviderAnthropicOpenAI
Toolsquery, search, structured, ping, listSessionscodex, search, query, structured, ping, listSessions
Code reviewUse Claude Code built-ins directly (not via this bridge), or claude -p for non-Claude-Code hostscodex review --base <ref> (native) or codex tool with caller-supplied prompt
Structured outputNative --json-schema (no Ajv)Ajv validation
Session resumeNative --resumeSession IDs with multi-turn
Budget capsNative --max-budget-usdNot supported
Effort control--effort low/medium/high/maxNot supported
Cold start~1-2s<100ms (inference dominates)
Authclaude login (default) or ANTHROPIC_API_KEY + opt-inOPENAI_API_KEY
CostSubscription (default) or API credits (opt-in)Pay-per-token
Concurrency3 (configurable)3 (configurable)
Model fallbackAuto-retry with fallback modelAuto-retry with fallback model

Both share: subprocess env isolation, path sandboxing, output redaction, FIFO concurrency queue, MCP tool annotations, _meta response metadata, progress heartbeats.

Code review with this CLI

The reviewer prompt is supplied by the caller. The bridge does not bundle review prompts (see ADR-001).

  • In Claude Code (interactive REPL): use the built-in /review, /security-review, /ultrareview. REPL-only; not reachable via claude -p or this bridge.
  • Through this bridge (query / structured): pass the review prompt as plain text. Slash commands (built-in or user-installed ~/.claude/commands/) do not resolve through the bridge, the isolation flags (--bare on the API-key path, --setting-sources "" on the subscription path) block all skill resolution by design. Tracked upstream: anthropics/claude-code#37207.
  • Direct claude -p (no bridge): user skills resolve as /skill-name when no isolation flags suppress them. For subprocess-isolated review use the hardened invocation below.

Route based on where you are:

  • Already in Claude Code? Type /review, /security-review, or /ultrareview. Skip the rest of this section.
  • Calling from another MCP host (Cursor, Codex CLI, Gemini CLI, Claude Desktop)? Slash commands and skills are not reachable through the bridge. Pass your review prompt as plain text to query / structured, or invoke claude -p directly per below.

Direct claude -p invocation (subprocess-isolated)

For shell-equipped consumers (terminal agents, CI, BYOS skills), invoke the CLI directly with hardened isolation flags:

bash
claude -p \  --permission-mode plan \  --bare \  --add-dir <repo-root> \  --strict-mcp-config \  --mcp-config '{"mcpServers":{}}' \  --no-session-persistence \  --max-budget-usd 0.50 \  "<your review prompt + diff or file references>"
  • --permission-mode plan: read-only.
  • --bare: strips parent's hooks, plugins, auto-memory, and CLAUDE.md autoload.
  • --add-dir <repo-root>: makes the repo's CLAUDE.md / AGENTS.md available where the diff warrants it.
  • --strict-mcp-config --mcp-config '{"mcpServers":{}}': blocks parent's MCP servers from leaking in. The inner mcpServers key is required; the schema rejects bare '{}'.
  • --no-session-persistence: no session files for one-off reviews.
  • --max-budget-usd: per-call cost cap.

Claude Code skill template

For Claude Code users who want a reusable command, drop this into ~/.claude/commands/review-claude.md:

markdown
---description: Code review via subprocess-isolated claude -p---
Run code review on the diff between origin/main and HEAD.
```bashclaude -p \  --permission-mode plan \  --bare \  --add-dir "$(git rev-parse --show-toplevel)" \  --strict-mcp-config \  --mcp-config '{"mcpServers":{}}' \  --no-session-persistence \  --max-budget-usd 0.50 \  "Review the diff below for bugs, missing error handling on user input, tests modified to silence failures, and security issues (injection, missing auth checks, secret leaks). For each finding cite file:line, severity, and a suggested fix. Skip style/formatting.
$(git diff origin/main...HEAD)"```

Representative review prompt

A starting point; adapt freely:

text
Review the following diff:
<diff content>
Look for:- Bugs that would surface in production- Missing error handling on user-supplied input- Tests modified to silence failures rather than verify behaviour- Security issues (injection, missing auth checks, secret leaks)
For each finding cite file:line, severity (high/medium/low), and a suggested fix.Skip style/formatting; assume an autoformatter handles those.

Development

bash
npm installnpm run build        # Compile TypeScriptnpm run dev          # Watch modenpm test             # Run tests (vitest)npm run lint         # ESLintnpm run typecheck    # tsc --noEmitnpm run smoke        # Smoke test against live CLI

Further reading

  • DESIGN.md - Architecture, sessions, cost tracking, response metadata, progress notifications
  • SECURITY.md - Environment isolation, path sandboxing, output redaction, tool sandboxing
  • CHANGELOG.md - Release history

License

MIT

来源:README.md,提交 de2b9b1

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

2
  1. v0.7.2最新Oct 18, 2026
  2. v0.7.1Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Claude 集成