claude-mcp-bridge 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +135 -268
- package/dist/descriptions.d.ts +1 -1
- package/dist/descriptions.d.ts.map +1 -1
- package/dist/descriptions.js +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/tools/ping.d.ts +2 -0
- package/dist/tools/ping.d.ts.map +1 -1
- package/dist/tools/ping.js +10 -2
- package/dist/tools/ping.js.map +1 -1
- package/dist/tools/review.d.ts +9 -0
- package/dist/tools/review.d.ts.map +1 -1
- package/dist/tools/review.js +50 -12
- package/dist/tools/review.js.map +1 -1
- package/dist/utils/env.d.ts +6 -1
- package/dist/utils/env.d.ts.map +1 -1
- package/dist/utils/env.js +12 -2
- package/dist/utils/env.js.map +1 -1
- package/dist/utils/errors.d.ts.map +1 -1
- package/dist/utils/errors.js +8 -6
- package/dist/utils/errors.js.map +1 -1
- package/dist/utils/git.d.ts +22 -0
- package/dist/utils/git.d.ts.map +1 -1
- package/dist/utils/git.js +40 -0
- package/dist/utils/git.js.map +1 -1
- package/dist/utils/spawn.d.ts +6 -0
- package/dist/utils/spawn.d.ts.map +1 -1
- package/dist/utils/spawn.js +6 -0
- package/dist/utils/spawn.js.map +1 -1
- package/package.json +1 -1
- package/dist/utils/retry.d.ts +0 -9
- package/dist/utils/retry.d.ts.map +0 -1
- package/dist/utils/retry.js +0 -29
- package/dist/utils/retry.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
# claude-mcp-bridge
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/claude-mcp-bridge)
|
|
4
|
-
[](https://www.npmjs.com/package/claude-mcp-bridge)
|
|
5
|
+
[](https://github.com/hampsterx/claude-mcp-bridge/actions/workflows/ci.yml)
|
|
6
|
+
[](https://opensource.org/licenses/MIT)
|
|
7
|
+
[](https://nodejs.org/)
|
|
8
|
+
[](https://www.typescriptlang.org/)
|
|
9
|
+
[](https://modelcontextprotocol.io/)
|
|
8
10
|
|
|
9
|
-
MCP server that wraps [Claude Code CLI](https://github.com/anthropics/claude-code) as a subprocess, exposing
|
|
11
|
+
MCP server that wraps [Claude Code CLI](https://github.com/anthropics/claude-code) as a subprocess, exposing its capabilities as [Model Context Protocol](https://modelcontextprotocol.io/) tools.
|
|
10
12
|
|
|
11
|
-
Works with any MCP client: Codex CLI, Gemini CLI, Cursor, Windsurf, VS Code, or any tool that speaks
|
|
13
|
+
Works with any MCP client: Codex CLI, Gemini CLI, Cursor, Windsurf, VS Code, or any tool that speaks MCP.
|
|
12
14
|
|
|
13
15
|
## Do you need this?
|
|
14
16
|
|
|
15
|
-
If you're in a terminal agent (Codex CLI, Gemini CLI) with shell access,
|
|
17
|
+
If you're in a terminal agent (Codex CLI, Gemini CLI) with shell access, call Claude Code CLI directly:
|
|
16
18
|
|
|
17
19
|
```bash
|
|
18
20
|
# Quick review of current diff
|
|
@@ -38,340 +40,205 @@ claude -p --bare --max-budget-usd 0.50 "Is this retry logic sound?"
|
|
|
38
40
|
- You need concurrency management and security hardening
|
|
39
41
|
- You want cost metadata surfaced in MCP responses
|
|
40
42
|
|
|
41
|
-
##
|
|
43
|
+
## Quick Start
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
npx claude-mcp-bridge
|
|
47
|
+
```
|
|
42
48
|
|
|
43
49
|
### Prerequisites
|
|
44
50
|
|
|
45
|
-
- Node.js >= 18
|
|
46
51
|
- [Claude Code CLI](https://github.com/anthropics/claude-code) installed and on PATH
|
|
47
52
|
- Authentication (one of):
|
|
48
|
-
- **Subscription
|
|
49
|
-
- **API key**: set `ANTHROPIC_API_KEY` (billed per use via console.anthropic.com)
|
|
50
|
-
|
|
51
|
-
### From source
|
|
52
|
-
|
|
53
|
-
```bash
|
|
54
|
-
git clone https://github.com/hampsterx/claude-mcp-bridge.git
|
|
55
|
-
cd claude-mcp-bridge
|
|
56
|
-
npm install
|
|
57
|
-
npm run build
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
### MCP client configuration
|
|
53
|
+
- **Subscription** (default): `claude login` (uses your Pro/Max plan, no API credits needed)
|
|
54
|
+
- **API key**: set `ANTHROPIC_API_KEY` + `CLAUDE_BRIDGE_USE_API_KEY=1` (billed per use via console.anthropic.com)
|
|
61
55
|
|
|
62
|
-
|
|
56
|
+
### Codex CLI
|
|
63
57
|
|
|
58
|
+
Add to `~/.codex/config.json`:
|
|
64
59
|
```json
|
|
65
60
|
{
|
|
66
61
|
"mcpServers": {
|
|
67
|
-
"claude-
|
|
68
|
-
"command": "
|
|
69
|
-
"args": ["
|
|
70
|
-
"env": {
|
|
71
|
-
"ANTHROPIC_API_KEY": "sk-ant-..."
|
|
72
|
-
}
|
|
62
|
+
"claude-bridge": {
|
|
63
|
+
"command": "npx",
|
|
64
|
+
"args": ["-y", "claude-mcp-bridge"]
|
|
73
65
|
}
|
|
74
66
|
}
|
|
75
67
|
}
|
|
76
68
|
```
|
|
77
69
|
|
|
78
|
-
|
|
70
|
+
### Gemini CLI
|
|
79
71
|
|
|
72
|
+
Add to `~/.gemini/settings.json`:
|
|
80
73
|
```json
|
|
81
74
|
{
|
|
82
75
|
"mcpServers": {
|
|
83
|
-
"claude-
|
|
84
|
-
"command": "
|
|
76
|
+
"claude-bridge": {
|
|
77
|
+
"command": "npx",
|
|
78
|
+
"args": ["-y", "claude-mcp-bridge"]
|
|
85
79
|
}
|
|
86
80
|
}
|
|
87
81
|
}
|
|
88
82
|
```
|
|
89
83
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
### `query`
|
|
93
|
-
|
|
94
|
-
Execute a prompt via Claude Code CLI with optional file context and session resume.
|
|
95
|
-
|
|
96
|
-
```json
|
|
97
|
-
{
|
|
98
|
-
"prompt": "Explain the error handling in this file",
|
|
99
|
-
"files": ["src/utils/errors.ts"],
|
|
100
|
-
"model": "sonnet",
|
|
101
|
-
"workingDirectory": "/path/to/repo",
|
|
102
|
-
"timeout": 60000,
|
|
103
|
-
"maxBudgetUsd": 0.50
|
|
104
|
-
}
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
| Parameter | Type | Default | Description |
|
|
108
|
-
|-----------|------|---------|-------------|
|
|
109
|
-
| `prompt` | string | (required) | The prompt to send to Claude |
|
|
110
|
-
| `files` | string[] | | File paths relative to workingDirectory (text or images) |
|
|
111
|
-
| `model` | string | `sonnet` | Model alias or full Claude model name |
|
|
112
|
-
| `sessionId` | string | | Session ID to resume a multi-turn conversation |
|
|
113
|
-
| `noSessionPersistence` | boolean | | Disable session persistence for one-off calls |
|
|
114
|
-
| `workingDirectory` | string | `cwd` | Working directory for file resolution and CLI execution |
|
|
115
|
-
| `timeout` | number | 60000 | Timeout in ms (120000 for image queries) |
|
|
116
|
-
| `maxResponseLength` | number | | Soft limit on response length in words |
|
|
117
|
-
| `maxBudgetUsd` | number | | Cost cap in USD |
|
|
118
|
-
| `effort` | string | | `low`, `medium`, `high`, or `max` |
|
|
119
|
-
|
|
120
|
-
Supports images (.png, .jpg, .jpeg, .gif, .webp, .bmp) up to 5MB each. Text files are inlined into the prompt; image paths are passed to Claude's Read tool.
|
|
121
|
-
|
|
122
|
-
### `structured`
|
|
123
|
-
|
|
124
|
-
Generate JSON that conforms to a provided JSON Schema using Claude CLI's native `--json-schema` validation.
|
|
84
|
+
### Cursor / Windsurf / VS Code
|
|
125
85
|
|
|
86
|
+
Add to your MCP settings:
|
|
126
87
|
```json
|
|
127
88
|
{
|
|
128
|
-
"
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
89
|
+
"claude-bridge": {
|
|
90
|
+
"command": "npx",
|
|
91
|
+
"args": ["-y", "claude-mcp-bridge"],
|
|
92
|
+
"env": {
|
|
93
|
+
"ANTHROPIC_API_KEY": "sk-ant-...",
|
|
94
|
+
"CLAUDE_BRIDGE_USE_API_KEY": "1"
|
|
95
|
+
}
|
|
96
|
+
}
|
|
132
97
|
}
|
|
133
98
|
```
|
|
134
99
|
|
|
135
|
-
|
|
136
|
-
|-----------|------|---------|-------------|
|
|
137
|
-
| `prompt` | string | (required) | What to generate or extract |
|
|
138
|
-
| `schema` | string | (required) | JSON Schema as a JSON string (max 20KB) |
|
|
139
|
-
| `files` | string[] | | Text file paths to include as context (no images) |
|
|
140
|
-
| `model` | string | `sonnet` | Model alias or full model name |
|
|
141
|
-
| `sessionId` | string | | Session ID to resume |
|
|
142
|
-
| `noSessionPersistence` | boolean | | Disable session persistence |
|
|
143
|
-
| `workingDirectory` | string | `cwd` | Working directory for file resolution |
|
|
144
|
-
| `timeout` | number | 60000 | Timeout in ms |
|
|
145
|
-
| `maxBudgetUsd` | number | | Cost cap in USD |
|
|
146
|
-
|
|
147
|
-
Returns clean JSON in the first content block. Metadata (model, session, cost) in a separate content block so JSON parsing isn't broken.
|
|
148
|
-
|
|
149
|
-
### `review`
|
|
100
|
+
## Tools
|
|
150
101
|
|
|
151
|
-
|
|
102
|
+
| Tool | Description |
|
|
103
|
+
|------|-------------|
|
|
104
|
+
| **query** | Execute prompts with file context, session resume, effort control, and budget caps. Supports text and images. |
|
|
105
|
+
| **review** | Agentic code review. Claude explores the repo with Read, Grep, Glob, and git commands. Quick diff-only mode available. |
|
|
106
|
+
| **search** | Web search via Claude CLI's WebSearch and WebFetch tools. Returns synthesized answers with sources. |
|
|
107
|
+
| **structured** | JSON Schema validated output via Claude CLI's native `--json-schema`. |
|
|
108
|
+
| **ping** | Health check with CLI version, auth method, capabilities, and model config. |
|
|
109
|
+
| **listSessions** | List active sessions with cumulative cost, turn count, and timestamps. |
|
|
152
110
|
|
|
153
|
-
|
|
111
|
+
### query
|
|
154
112
|
|
|
155
|
-
|
|
113
|
+
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.
|
|
156
114
|
|
|
157
|
-
|
|
158
|
-
{
|
|
159
|
-
"base": "main",
|
|
160
|
-
"focus": "security and error handling",
|
|
161
|
-
"workingDirectory": "/path/to/repo",
|
|
162
|
-
"maxBudgetUsd": 1.00
|
|
163
|
-
}
|
|
164
|
-
```
|
|
115
|
+
Key parameters: `prompt` (required), `files`, `model` (default `sonnet`), `sessionId`, `effort`, `maxBudgetUsd`, `workingDirectory`, `timeout` (default 60s).
|
|
165
116
|
|
|
166
|
-
|
|
167
|
-
|-----------|------|---------|-------------|
|
|
168
|
-
| `uncommitted` | boolean | `true` | Review uncommitted changes (staged + unstaged) |
|
|
169
|
-
| `base` | string | | Base branch/ref to diff against (overrides uncommitted) |
|
|
170
|
-
| `focus` | string | | Review focus area (e.g. "security", "error handling") |
|
|
171
|
-
| `quick` | boolean | `false` | Use quick (diff-only) mode instead of agentic |
|
|
172
|
-
| `model` | string | `opus` | Model alias or full model name |
|
|
173
|
-
| `sessionId` | string | | Session ID to resume |
|
|
174
|
-
| `noSessionPersistence` | boolean | | Disable session persistence |
|
|
175
|
-
| `workingDirectory` | string | `cwd` | Repository root |
|
|
176
|
-
| `timeout` | number | 300000 / 120000 | 5min (agentic) or 2min (quick) |
|
|
177
|
-
| `maxResponseLength` | number | | Soft limit on response length in words |
|
|
178
|
-
| `maxBudgetUsd` | number | | Cost cap in USD |
|
|
179
|
-
| `effort` | string | `high` | `low`, `medium`, `high`, or `max` |
|
|
117
|
+
### review
|
|
180
118
|
|
|
181
|
-
|
|
119
|
+
Two modes:
|
|
120
|
+
- **Agentic** (default): Claude runs inside the repo with Read, Grep, Glob, and git commands. It diffs, reads files, follows imports, and checks tests. Timeout auto-scales from diff size.
|
|
121
|
+
- **Quick** (`quick: true`): Diff-only review, no repo exploration. Faster and cheaper.
|
|
182
122
|
|
|
183
|
-
|
|
123
|
+
Key parameters: `uncommitted` (default true), `base`, `focus`, `quick`, `model` (default `opus`), `effort` (default `high`), `maxBudgetUsd`, `workingDirectory`, `timeout`.
|
|
184
124
|
|
|
185
|
-
|
|
125
|
+
### search
|
|
186
126
|
|
|
187
|
-
|
|
188
|
-
{
|
|
189
|
-
"query": "What changed in MCP SDK v1.12?",
|
|
190
|
-
"maxResponseLength": 500
|
|
191
|
-
}
|
|
192
|
-
```
|
|
127
|
+
Web search via Claude CLI's WebSearch and WebFetch tools. Returns synthesized answers with source URLs.
|
|
193
128
|
|
|
194
|
-
|
|
195
|
-
|-----------|------|---------|-------------|
|
|
196
|
-
| `query` | string | (required) | Search query or question |
|
|
197
|
-
| `model` | string | `sonnet` | Model alias or full model name |
|
|
198
|
-
| `sessionId` | string | | Session ID to resume |
|
|
199
|
-
| `noSessionPersistence` | boolean | | Disable session persistence |
|
|
200
|
-
| `workingDirectory` | string | `cwd` | Working directory for the CLI |
|
|
201
|
-
| `timeout` | number | 120000 | Timeout in ms |
|
|
202
|
-
| `maxResponseLength` | number | | Soft limit on response length in words |
|
|
203
|
-
| `maxBudgetUsd` | number | | Cost cap in USD |
|
|
204
|
-
| `effort` | string | `medium` | `low`, `medium`, `high`, or `max` |
|
|
129
|
+
Key parameters: `query` (required), `model` (default `sonnet`), `maxResponseLength`, `maxBudgetUsd`, `timeout` (default 120s).
|
|
205
130
|
|
|
206
|
-
###
|
|
131
|
+
### structured
|
|
207
132
|
|
|
208
|
-
|
|
133
|
+
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.
|
|
209
134
|
|
|
210
|
-
|
|
211
|
-
[
|
|
212
|
-
{
|
|
213
|
-
"sessionId": "abc-123",
|
|
214
|
-
"model": "sonnet",
|
|
215
|
-
"createdAt": 1712700000000,
|
|
216
|
-
"lastUsedAt": 1712703600000,
|
|
217
|
-
"turnCount": 5,
|
|
218
|
-
"totalCostUsd": 0.23
|
|
219
|
-
}
|
|
220
|
-
]
|
|
221
|
-
```
|
|
135
|
+
Key parameters: `prompt` (required), `schema` (required, JSON string, max 20KB), `files`, `model` (default `sonnet`), `sessionId`, `maxBudgetUsd`, `timeout` (default 60s).
|
|
222
136
|
|
|
223
|
-
|
|
137
|
+
### ping
|
|
224
138
|
|
|
225
|
-
|
|
139
|
+
No parameters. Returns CLI version, auth method (subscription/api-key/none), configured models, capabilities, and server version.
|
|
226
140
|
|
|
227
|
-
|
|
141
|
+
### listSessions
|
|
228
142
|
|
|
229
|
-
|
|
230
|
-
cliFound: true
|
|
231
|
-
version: 2.1.92 (Claude Code)
|
|
232
|
-
authMethod: subscription
|
|
233
|
-
subscriptionType: max
|
|
234
|
-
defaultModel: sonnet
|
|
235
|
-
fallbackModel: haiku
|
|
236
|
-
serverVersion: 0.1.0
|
|
237
|
-
nodeVersion: v22.22.0
|
|
238
|
-
maxConcurrent: 3
|
|
239
|
-
capabilities: bareMode=true, jsonOutput=true, jsonSchema=true, sessionResume=true
|
|
240
|
-
```
|
|
143
|
+
No parameters. Returns active sessions with metadata: `sessionId`, `model`, `createdAt`, `lastUsedAt`, `turnCount`, `totalCostUsd`.
|
|
241
144
|
|
|
242
|
-
|
|
145
|
+
All tools attach execution metadata (`_meta`) with `durationMs`, `model`, `sessionId`, `totalCostUsd`, and token breakdowns. See [DESIGN.md](DESIGN.md) for details.
|
|
243
146
|
|
|
244
147
|
## Configuration
|
|
245
148
|
|
|
246
|
-
All configuration is through environment variables. None are required if Claude CLI is on PATH and you're authenticated (via `claude login` or `ANTHROPIC_API_KEY`).
|
|
247
|
-
|
|
248
|
-
### Authentication
|
|
249
|
-
|
|
250
|
-
The bridge supports two auth methods, matching Claude Code CLI:
|
|
251
|
-
|
|
252
|
-
| Method | Setup | Billing |
|
|
253
|
-
|--------|-------|---------|
|
|
254
|
-
| **Subscription** | `claude login` (OAuth) | Pro/Max plan (included) |
|
|
255
|
-
| **API key** | Set `ANTHROPIC_API_KEY` | Pay-per-use (console.anthropic.com) |
|
|
256
|
-
|
|
257
|
-
If `ANTHROPIC_API_KEY` is set, it takes priority over subscription auth. To use your subscription instead, unset the API key.
|
|
258
|
-
|
|
259
149
|
### Models
|
|
260
150
|
|
|
261
151
|
| Variable | Default | Description |
|
|
262
152
|
|----------|---------|-------------|
|
|
263
153
|
| `CLAUDE_DEFAULT_MODEL` | | Shared default for all tools |
|
|
264
|
-
| `CLAUDE_QUERY_MODEL` | `sonnet` | Default
|
|
265
|
-
| `CLAUDE_STRUCTURED_MODEL` | `sonnet` | Default
|
|
266
|
-
| `CLAUDE_SEARCH_MODEL` | `sonnet` | Default
|
|
267
|
-
| `CLAUDE_REVIEW_MODEL` | `opus` | Default
|
|
268
|
-
| `CLAUDE_FALLBACK_MODEL` | `haiku` | Fallback on quota exhaustion (
|
|
154
|
+
| `CLAUDE_QUERY_MODEL` | `sonnet` | Default for query |
|
|
155
|
+
| `CLAUDE_STRUCTURED_MODEL` | `sonnet` | Default for structured |
|
|
156
|
+
| `CLAUDE_SEARCH_MODEL` | `sonnet` | Default for search |
|
|
157
|
+
| `CLAUDE_REVIEW_MODEL` | `opus` | Default for review |
|
|
158
|
+
| `CLAUDE_FALLBACK_MODEL` | `haiku` | Fallback on quota exhaustion (`none` to disable) |
|
|
269
159
|
|
|
270
|
-
Model resolution
|
|
160
|
+
Model resolution: explicit parameter > tool-specific env var > `CLAUDE_DEFAULT_MODEL` > built-in default.
|
|
271
161
|
|
|
272
|
-
###
|
|
162
|
+
### Runtime
|
|
273
163
|
|
|
274
164
|
| Variable | Default | Description |
|
|
275
165
|
|----------|---------|-------------|
|
|
276
|
-
| `
|
|
277
|
-
| `
|
|
278
|
-
| `CLAUDE_QUERY_EFFORT` | | Default effort for query tool |
|
|
166
|
+
| `CLAUDE_MAX_CONCURRENT` | `3` | Max concurrent subprocess spawns |
|
|
167
|
+
| `CLAUDE_CLI_PATH` | `claude` | Path to CLI binary |
|
|
279
168
|
| `CLAUDE_MAX_BUDGET_USD` | | Global cost cap in USD (per call) |
|
|
169
|
+
| `ANTHROPIC_API_KEY` | | API key (only forwarded when `CLAUDE_BRIDGE_USE_API_KEY=1`) |
|
|
170
|
+
| `CLAUDE_BRIDGE_USE_API_KEY` | | Set to `1` to forward `ANTHROPIC_API_KEY` to the subprocess (default: subscription auth) |
|
|
280
171
|
|
|
281
|
-
###
|
|
172
|
+
### Effort
|
|
282
173
|
|
|
283
174
|
| Variable | Default | Description |
|
|
284
175
|
|----------|---------|-------------|
|
|
285
|
-
| `
|
|
286
|
-
| `
|
|
287
|
-
| `
|
|
288
|
-
|
|
289
|
-
##
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
|
323
|
-
|
|
324
|
-
| `
|
|
325
|
-
|
|
|
326
|
-
|
|
|
327
|
-
|
|
|
328
|
-
|
|
|
329
|
-
|
|
|
330
|
-
|
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
All tools also declare [MCP annotations](https://modelcontextprotocol.io/specification/2025-06-18/server/tools#annotations) (`readOnlyHint`, `destructiveHint`, `idempotentHint`, `openWorldHint`) so clients can make informed permission and safety decisions.
|
|
334
|
-
|
|
335
|
-
## Sessions
|
|
336
|
-
|
|
337
|
-
Session state is tracked in-memory across calls. When a tool returns a `sessionId` in `_meta`, pass it back on subsequent calls to resume the conversation via Claude CLI's `--resume` flag.
|
|
338
|
-
|
|
339
|
-
- **Cumulative cost**: `totalCostUsd` in `_meta` is the cost for that call only. Cumulative cost across turns is tracked per-session and visible via `listSessions`
|
|
340
|
-
- **Reset**: Pass `resetSession: true` on the query tool to clear stored state and start fresh
|
|
341
|
-
- **TTL**: Sessions expire after 24 hours of inactivity
|
|
342
|
-
- **Capacity**: LRU eviction at 100 sessions (oldest by `lastUsedAt` is evicted)
|
|
343
|
-
- **Ephemeral**: Session state is in-memory only, lost on server restart
|
|
344
|
-
|
|
345
|
-
## Progress notifications
|
|
346
|
-
|
|
347
|
-
Query, review, and search tools emit MCP [`notifications/progress`](https://modelcontextprotocol.io/specification/2025-06-18/server/utilities/progress) during subprocess execution when the client provides a `progressToken` in the request's `_meta`. Heartbeats fire every 15 seconds with elapsed time. Notifications are fire-and-forget; clients that don't support progress notifications are unaffected.
|
|
348
|
-
|
|
349
|
-
## Concurrency
|
|
350
|
-
|
|
351
|
-
Requests are queued with a FIFO scheduler. Default: 3 concurrent Claude CLI processes. If all slots are busy, new requests wait up to 30 seconds before being rejected. Timed-out processes are killed with SIGTERM, then SIGKILL after 5 seconds. On Unix, the entire process group is killed to clean up child processes.
|
|
176
|
+
| `CLAUDE_REVIEW_EFFORT` | `high` | Default effort for review |
|
|
177
|
+
| `CLAUDE_SEARCH_EFFORT` | `medium` | Default effort for search |
|
|
178
|
+
| `CLAUDE_QUERY_EFFORT` | | Default effort for query |
|
|
179
|
+
|
|
180
|
+
## Choosing a Claude Code MCP server
|
|
181
|
+
|
|
182
|
+
| You need... | Consider |
|
|
183
|
+
|-------------|----------|
|
|
184
|
+
| Structured output, effort/budget control, session resume, cost metadata | This bridge |
|
|
185
|
+
| Multi-tool orchestration (read, grep, edit, bash as separate MCP tools) | [mcp-claude-code](https://github.com/SDGLBL/mcp-claude-code) |
|
|
186
|
+
| Session continuity with async execution | [claude-mcp](https://github.com/zhendalf/claude-mcp) |
|
|
187
|
+
| Maintained lightweight wrapper | [@kunihiros/claude-code-mcp](https://github.com/KunihiroS/claude-code-mcp) |
|
|
188
|
+
| Native Claude Code MCP (built-in, no wrapper) | `claude mcp serve` ([docs](https://github.com/anthropics/claude-code)) |
|
|
189
|
+
|
|
190
|
+
## Performance
|
|
191
|
+
|
|
192
|
+
Claude Code CLI has minimal startup overhead. Wall time is dominated by model inference and any agentic exploration.
|
|
193
|
+
|
|
194
|
+
| Scenario | Typical time |
|
|
195
|
+
|----------|-------------|
|
|
196
|
+
| Trivial prompt (sonnet) | 5-10s |
|
|
197
|
+
| Quick review, small diff | 15-30s |
|
|
198
|
+
| Agentic review (explores repo) | 30s to 10 min |
|
|
199
|
+
| Web search + synthesis | 15-30s |
|
|
200
|
+
|
|
201
|
+
Cost metadata (`totalCostUsd`, token breakdowns) is returned in `_meta` on every response.
|
|
202
|
+
|
|
203
|
+
## Bridge family
|
|
204
|
+
|
|
205
|
+
Three 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 multiple for cross-model workflows.
|
|
206
|
+
|
|
207
|
+
| | [claude-mcp-bridge](https://github.com/hampsterx/claude-mcp-bridge) | [gemini-mcp-bridge](https://github.com/hampsterx/gemini-mcp-bridge) | [codex-mcp-bridge](https://github.com/hampsterx/codex-mcp-bridge) |
|
|
208
|
+
|---|---|---|---|
|
|
209
|
+
| **CLI** | Claude Code | Gemini CLI | Codex CLI |
|
|
210
|
+
| **Provider** | Anthropic | Google | OpenAI |
|
|
211
|
+
| **Tools** | query, review, search, structured, ping, listSessions | query, review, search, structured, ping | codex, review, search, query, structured, ping, listSessions |
|
|
212
|
+
| **Agentic review** | Claude explores repo with Read/Grep/Glob/git | Gemini explores repo with file reads and git | Codex explores repo in full-auto mode |
|
|
213
|
+
| **Structured output** | Native `--json-schema` (no Ajv) | Ajv validation | Ajv validation |
|
|
214
|
+
| **Session resume** | Native `--resume` | Not supported | Session IDs with multi-turn |
|
|
215
|
+
| **Budget caps** | Native `--max-budget-usd` | Not supported | Not supported |
|
|
216
|
+
| **Effort control** | `--effort low/medium/high/max` | Not supported | Not supported |
|
|
217
|
+
| **Cold start** | ~1-2s | ~16s | <100ms (inference dominates) |
|
|
218
|
+
| **Auth** | `claude login` (default) or `ANTHROPIC_API_KEY` + opt-in | `gemini auth login` | `OPENAI_API_KEY` |
|
|
219
|
+
| **Cost** | Subscription (default) or API credits (opt-in) | Free tier available | Pay-per-token |
|
|
220
|
+
| **Concurrency** | 3 (configurable) | 3 (configurable) | 3 (configurable) |
|
|
221
|
+
| **Model fallback** | Auto-retry with fallback model | Not supported | Auto-retry with fallback model |
|
|
222
|
+
|
|
223
|
+
All three share: subprocess env isolation, path sandboxing, output redaction, FIFO concurrency queue, MCP tool annotations, `_meta` response metadata, progress heartbeats.
|
|
352
224
|
|
|
353
225
|
## Development
|
|
354
226
|
|
|
355
227
|
```bash
|
|
356
|
-
npm
|
|
357
|
-
npm run
|
|
358
|
-
npm
|
|
359
|
-
npm
|
|
360
|
-
npm run
|
|
361
|
-
npm run
|
|
228
|
+
npm install
|
|
229
|
+
npm run build # Compile TypeScript
|
|
230
|
+
npm run dev # Watch mode
|
|
231
|
+
npm test # Run tests (vitest)
|
|
232
|
+
npm run lint # ESLint
|
|
233
|
+
npm run typecheck # tsc --noEmit
|
|
234
|
+
npm run smoke # Smoke test against live CLI
|
|
362
235
|
```
|
|
363
236
|
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
```bash
|
|
367
|
-
node scripts/smoke-test.mjs query ~/my-repo
|
|
368
|
-
node scripts/smoke-test.mjs structured ~/my-repo
|
|
369
|
-
node scripts/smoke-test.mjs review ~/my-repo
|
|
370
|
-
node scripts/smoke-test.mjs search
|
|
371
|
-
node scripts/smoke-test.mjs ping
|
|
372
|
-
```
|
|
237
|
+
## Further reading
|
|
373
238
|
|
|
374
|
-
|
|
239
|
+
- [DESIGN.md](DESIGN.md) - Architecture, sessions, cost tracking, response metadata, progress notifications
|
|
240
|
+
- [SECURITY.md](SECURITY.md) - Environment isolation, path sandboxing, output redaction, tool sandboxing
|
|
241
|
+
- [CHANGELOG.md](CHANGELOG.md) - Release history
|
|
375
242
|
|
|
376
243
|
## License
|
|
377
244
|
|
package/dist/descriptions.d.ts
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* Keep each description at or under 2048 bytes to avoid bloating tool listings.
|
|
8
8
|
*/
|
|
9
9
|
export declare const queryDescription = "Execute a prompt via Claude Code CLI with optional file context and session resume. Claude is an AI coding agent that can generate, analyze, refactor, and explain code.\n\nCapabilities: code generation and refactoring, code analysis and explanation, file understanding (text and images), multi-turn conversations via sessionId.\n\nCost: Default model is Sonnet (~$0.01-0.10/call). Use effort=\"low\" for simple tasks, effort=\"high\" + model=\"opus\" for complex analysis. Set maxBudgetUsd to cap per-call cost (recommended for effort=\"max\" or model=\"opus\").\n\nTips:\n- Set workingDirectory to the target repo for project-aware responses.\n- Break complex tasks into focused prompts rather than one large request.\n- Resume multi-turn conversations with sessionId from a previous response's metadata.\n- Include relevant files via the files parameter for targeted context (text files inlined in prompt, images trigger allowed-tools mode).\n- Use noSessionPersistence=true for stateless one-shot calls.";
|
|
10
|
-
export declare const reviewDescription = "Repo-aware code review powered by Claude Code CLI. Returns structured feedback on code changes with two modes:\n\n- Agentic (default): Claude explores the repo with Read, Grep, Glob, and git tools. Reads changed files, follows imports, and examines related code before reviewing. Best for thorough reviews. Default timeout:
|
|
10
|
+
export declare const reviewDescription = "Repo-aware code review powered by Claude Code CLI. Returns structured feedback on code changes with two modes:\n\n- Agentic (default): Claude explores the repo with Read, Grep, Glob, and git tools. Reads changed files, follows imports, and examines related code before reviewing. Best for thorough reviews. Default timeout: auto-scaled from diff size (3-10 minutes).\n- Quick (quick: true): Receives only the diff text. Fast single-pass review without repo exploration. Default timeout: 2 minutes.\n\nCost: Both modes default to Opus (~$0.05-0.15 quick, ~$0.25-0.50 agentic). Override with model parameter. Use maxBudgetUsd to cap cost on large diffs.\n\nTips:\n- Use the focus parameter to direct attention: \"security\", \"performance\", \"error handling\", \"test coverage\".\n- Set workingDirectory to the repo being reviewed (auto-resolves to git root).\n- Default reviews uncommitted changes (staged + unstaged). Use base to review a branch diff (e.g. base: \"main\").\n- Prefer agentic mode for important reviews, quick mode for rapid feedback during development.";
|
|
11
11
|
export declare const searchDescription = "Web search via Claude Code CLI using WebSearch and WebFetch tools. Searches the web and synthesizes a comprehensive answer with source URLs.\n\nUse for: current information, documentation lookups, API references, comparing libraries, and research questions.\n\nCost: Typically ~$0.02-0.05/search with Sonnet.\n\nTips:\n- Ask specific, focused questions for best results.\n- Results include source URLs for verification.\n- Use maxResponseLength to control response verbosity.\n- Increase timeout for complex research queries that may require multiple web fetches.";
|
|
12
12
|
export declare const structuredDescription = "Generate JSON conforming to a provided JSON Schema. Uses Claude CLI's native --json-schema flag for validated output (not client-side validation).\n\nUse for: data extraction from text/files, classification, entity parsing, or any task needing machine-parseable output.\n\nCost: Similar to query (~$0.01-0.10/call). Schema complexity doesn't significantly affect cost.\n\nTips:\n- Pass the JSON Schema as a JSON string in the schema parameter.\n- Schema max size: 20KB. Keep schemas focused for reliable output.\n- For extraction tasks, include source text via the files parameter or inline in the prompt.";
|
|
13
13
|
export declare const listSessionsDescription = "List active Claude CLI sessions tracked by this server. Returns session metadata (IDs, models, timing, turn counts, cumulative cost) for orchestration. Use to check available sessions before resuming with sessionId. No cost (local lookup only).";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"descriptions.d.ts","sourceRoot":"","sources":["../src/descriptions.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,eAAO,MAAM,gBAAgB,m/BAWiC,CAAC;AAE/D,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"descriptions.d.ts","sourceRoot":"","sources":["../src/descriptions.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,eAAO,MAAM,gBAAgB,m/BAWiC,CAAC;AAE/D,eAAO,MAAM,iBAAiB,mjCAWiE,CAAC;AAEhG,eAAO,MAAM,iBAAiB,wjBAUyD,CAAC;AAExF,eAAO,MAAM,qBAAqB,kmBAS2D,CAAC;AAE9F,eAAO,MAAM,uBAAuB,yPAAyP,CAAC;AAE9R,eAAO,MAAM,eAAe,qJAAqJ,CAAC"}
|
package/dist/descriptions.js
CHANGED
|
@@ -20,7 +20,7 @@ Tips:
|
|
|
20
20
|
- Use noSessionPersistence=true for stateless one-shot calls.`;
|
|
21
21
|
export const reviewDescription = `Repo-aware code review powered by Claude Code CLI. Returns structured feedback on code changes with two modes:
|
|
22
22
|
|
|
23
|
-
- Agentic (default): Claude explores the repo with Read, Grep, Glob, and git tools. Reads changed files, follows imports, and examines related code before reviewing. Best for thorough reviews. Default timeout:
|
|
23
|
+
- Agentic (default): Claude explores the repo with Read, Grep, Glob, and git tools. Reads changed files, follows imports, and examines related code before reviewing. Best for thorough reviews. Default timeout: auto-scaled from diff size (3-10 minutes).
|
|
24
24
|
- Quick (quick: true): Receives only the diff text. Fast single-pass review without repo exploration. Default timeout: 2 minutes.
|
|
25
25
|
|
|
26
26
|
Cost: Both modes default to Opus (~$0.05-0.15 quick, ~$0.25-0.50 agentic). Override with model parameter. Use maxBudgetUsd to cap cost on large diffs.
|
package/dist/index.js
CHANGED
|
@@ -230,6 +230,8 @@ server.registerTool("review", {
|
|
|
230
230
|
];
|
|
231
231
|
if (result.base)
|
|
232
232
|
textMeta.push(`Base: ${result.base}`);
|
|
233
|
+
if (result.timeoutScaled)
|
|
234
|
+
textMeta.push("Timeout: auto-scaled");
|
|
233
235
|
if (result.timedOut)
|
|
234
236
|
textMeta.push("(timed out)");
|
|
235
237
|
const text = `${result.response}\n\n---\n${textMeta.join("\n")}`;
|
|
@@ -343,6 +345,8 @@ server.registerTool("ping", {
|
|
|
343
345
|
`serverVersion: ${result.serverVersion}`,
|
|
344
346
|
`nodeVersion: ${result.nodeVersion}`,
|
|
345
347
|
`maxConcurrent: ${result.maxConcurrent}`,
|
|
348
|
+
`activeCount: ${result.activeCount}`,
|
|
349
|
+
`queueDepth: ${result.queueDepth}`,
|
|
346
350
|
`capabilities: bareMode=${result.capabilities.bareMode}, jsonOutput=${result.capabilities.jsonOutput}, jsonSchema=${result.capabilities.jsonSchema}, sessionResume=${result.capabilities.sessionResume}`,
|
|
347
351
|
];
|
|
348
352
|
return {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|