An MCP (Model Context Protocol) server that wraps OpenClaude (or the official Claude Code CLI) safely, providing job/session management and handling permission requests over standard I/O (stdio).
This allows you to integrate Claude capabilities into any MCP-compatible client like Gemini CLI or Copilot CLI, securely proxying their interactive prompts into manageable MCP tool requests.
- Sync & Async Execution: Choose between quick synchronous runs or long-running asynchronous jobs.
- Permission Bridging: Surfaces interactive permission prompts (like running
Bashcommands or modifying files) as MCP tools, allowing the caller client to approve or deny them. - Session Continuity: Resume conversations using native transcript persistence.
- Health Checks: Built-in doctor report to verify installation and detect issues.
- Dual Engine Support: Wrap the open-source
openclaude(default) or the officialclaude(Claude Code CLI).
By default, the MCP server is configured to use the openclaude engine.
You can switch the underlying execution engine between openclaude and the original claude (Claude Code CLI) by running the server file directly with the --set-engine flag:
node dist/index.js --set-engine claudeOr to switch back to OpenClaude:
node dist/index.js --set-engine openclaudeThis command will save the preference to your global configuration file and can be run standalone or alongside the MCP server startup.
- Clone this repository and run
npm install. - Build the project with
npm run build. - Configure your preferred CLI client to use this MCP server over
stdio.
npm test: Run the full test suite (Vitest).npm run dev: Run the server in development mode.npm run typecheck: Run TypeScript compiler checks.