claude-wrap-mcp
claude-wrap-mcp
An MCP server that lets any MCP-capable agent
(Claude Code, Claude Desktop, Cursor, …) spawn and drive Claude Code sessions
— effectively turning Claude Code into an orchestratable sub-agent fleet. Built
on the claude-wrap library.
Requirements
Node ≥ 18
The
claudeCLI on yourPATH(the sessions run real Claude Code).claude-wrappulls the nativenode-ptyaddon, so a prebuilt binary or a C/C++ toolchain is needed at install time.Spawning headless sessions works cross-platform; attaching to visible windows is Windows-first.
Install & register
npm install -g claude-wrap-mcp
# then, in Claude Code:
claude mcp add claude-wrap -- claude-wrap-mcpOr via JSON config (.mcp.json / claude_desktop_config.json):
{
"mcpServers": {
"claude-wrap": { "command": "npx", "args": ["-y", "claude-wrap-mcp"] }
}
}Once published, it's also discoverable in the MCP Registry as io.github.Alex-Kaff/claude-wrap-mcp.
Tools
Tool | What it does |
| Start a headless session in an absolute |
| Send a prompt, wait for idle, return transcript tail + parsed state. Returns |
| Send raw input ( |
| Parsed state: busy, mode, tokens, pending permission prompt, todos, tool calls. |
| The rendered transcript lines. |
| All sessions — in-process (spawned here) and external (discovered windows). |
|
|
| Shut down an in-process session. |
Permission prompts are surfaced, not auto-bypassed: when claude_ask /
claude_status report a pending permissionPrompt, resolve it with
claude_resolve_permission.
Control models
In-process (primary): the server owns a
claude-wrapClaudeManagerand drives headless sessions directly — full parsed state and lifecycle.External (Windows-first): sessions launched elsewhere (visible windows) are discovered via the registry and driven over their pipe; parsed operations are delegated to the
claude-wrap-injectbin. Best-effort;claude_stopis declined for instances this server did not spawn.
Develop
pnpm install
pnpm --filter claude-wrap-mcp build # tsup -> dist/ (ESM + .d.ts, shebang on the bin)
pnpm --filter claude-wrap-mcp test # vitest, in-memory MCP client against fakes
pnpm --filter claude-wrap-mcp inspect # @modelcontextprotocol/inspector on the built serverLicense
MIT © Alex Kaffetzakis
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Alex-Kaff/claude-wrap-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server