claude-code-mcp
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., "@claude-code-mcp start a background task to analyze project structure"
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.
Claude Code MCP Async Server
Asynchronous MCP wrapper for Claude Code CLI
Enable Claude Code to spawn child Claude Code sessions for parallel task execution.
Features
✅ Async execution - Start tasks in background, continue working
✅ Multi-instance parallelism - Run multiple Claude Code sessions simultaneously
✅ Automatic cleanup - No zombie processes
✅ Zero config - Works out of the box
✅ Cross-platform - Supports Windows, Linux, and macOS
✅ CI/CD ready - GitHub Actions workflows included
Related MCP server: claude-code
Quick Start
🚀 Install with UVX
Zero configuration - just run:
uvx claudecode-mcp-async-windowsConfigure Claude Code
Add to your ~/.claude/settings.json:
{
"mcpServers": {
"claude-code-mcp": {
"command": "uvx",
"args": ["claudecode-mcp-async-windows"],
"env": {}
}
}
}Restart Claude Code
Reload or restart Claude Code to load the MCP server.
Usage Examples
🚀 Async Execution (Game Changer!)
Start a long task and continue working immediately:
You:
Please analyze the entire project code and generate a comprehensive technical report
Claude: I'll analyze your entire project and generate a technical report. This is a large task, so I'll start it asynchronously...
✅ Task Started (Task ID: abc12345) You can continue working on other things while it runs in the background!
You: (Continue working immediately)
While the report is generating, help me write some unit tests
Claude: Sure! Let me write those unit tests for you...
You: (A few minutes later)
Can you check if the report task is finished?
Claude: ✅ Report Complete!
[View Detailed Technical Report]
Project structure analysis
Code quality assessment
Performance optimization recommendations
Security audit results
⚡ Parallel Execution
Run multiple tasks simultaneously:
You:
I need to do three things at once:
Generate unit tests for utils.py
Refactor database.py to use async/await
Add type hints to all functions in api.py
Claude: I'll start all three tasks in parallel!
🔄 Task 1 Started (Task ID: task1) - Generating unit tests 🔄 Task 2 Started (Task ID: task2) - Refactoring database code 🔄 Task 3 Started (Task ID: task3) - Adding type hints
All tasks are running in parallel...
You: (Later)
Are all three tasks finished?
Claude: ✅ All Complete!
✅ Task 1: Unit tests for utils.py generated
✅ Task 2: database.py refactored to async mode
✅ Task 3: Type hints added to api.py functions
🎯 Quick Sync Tasks
For simple immediate tasks:
You:
Write a Python function to validate email addresses
Claude:
import re
def validate_email(email):
pattern = r'^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$'
return re.match(pattern, email) is not None
# Usage examples
print(validate_email("user@example.com")) # True
print(validate_email("invalid-email")) # False✅ Task Complete!
Why Async?
Problem: Claude Code blocks the parent session while running.
Solution: This MCP server spawns child Claude Code processes that run in the background.
Benefits:
🚀 Start a task and continue working immediately
⚡ Run multiple tasks in parallel
🎯 No blocking, no waiting
🧹 Automatic process cleanup
Troubleshooting
Server not showing up?
Use absolute path in config
Linux/macOS: Run
chmod +x claudecode_mcp_async_server.pyRestart Claude Code
Task stuck in "running"?
Wait a moment, large tasks take time
Check task files:
Linux/macOS:
ls -la /tmp/claude_code_tasks/Windows:
dir %TEMP%\claude_code_tasks\
View logs:
Linux/macOS:
tail -f /tmp/claude_code_mcp_debug.logWindows:
type %TEMP%\claude_code_mcp_debug.log
Platform-specific notes:
Windows: Automatic process cleanup (no zombie processes)
POSIX: Uses SIGCHLD handler for process cleanup
All platforms: Uses platform-appropriate temp directories
Requirements
Python 3.6+
Claude Code CLI installed
Development
Building from Source
Using uv (recommended):
# Install uv if you haven't already
pip install uv
# Build the package
uv build
# Install locally
uv pip install dist/*.whl --systemGitHub Actions
This project includes automated workflows:
Test Workflow (
.github/workflows/test.yml)Runs on: Windows, Linux, macOS
Python versions: 3.8, 3.9, 3.10, 3.11, 3.12
Triggered on: push to main/develop/claude branches, pull requests
Actions:
Build with
uvRun import tests
Lint with flake8, black, isort
Publish Workflow (
.github/workflows/publish.yml)Builds distribution packages using
uvPublishes to PyPI on release
Uploads to GitHub Releases
Supports TestPyPI for testing
Publishing to PyPI
Option 1: Automatic (GitHub Release)
Create a new release on GitHub
Workflow automatically builds and publishes to PyPI
Option 2: Manual (TestPyPI)
Go to Actions → Publish to PyPI
Run workflow manually
Set
test_pypitotruefor TestPyPI
Setting up PyPI Publishing:
Configure trusted publishing in your PyPI project settings
Add environment
pypito your GitHub repositoryNo API tokens needed (uses OIDC)
License
MIT License
Questions? Open an issue on GitHub.
Available Tools
3 toolsclaude_code_check_resultA
Check the status of an async Claude Code task. Returns running/completed status and the result if available.
Inputs: task_id (required).
claude_code_executeB
Execute Claude Code synchronously with full control over parameters. Returns the result after completion. Common usage: prompt="your task", working_dir="/path/to/project"
Inputs: prompt (required), model, timeout, working_dir, +3 more.
claude_code_execute_asyncA
Start a Claude Code task in the background and return immediately with a task_id. Use claude_code_check_result to retrieve the result later. This allows you to continue working while Claude Code runs.
Inputs: prompt (required), model, working_dir, output_format, +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 3 tools
The three tools have clearly distinct purposes: synchronous execution, asynchronous execution, and result polling. An agent can easily select the right tool based on whether it wants to wait or run in the background.
All tools share the claude_code_ prefix and follow a snake_case imperative verb style: check_result, execute, execute_async. The family is predictable and consistent.
With only three tools, each serves a distinct and necessary function for the server's purpose. The count is well-scoped and not padded with redundant operations.
The server covers the full execution lifecycle: start a task synchronously, start a task asynchronously, and check the result of an async task. There are no obvious dead ends or missing core operations for this focused domain.
Maintenance
Related MCP Connectors
Let your AI sessions talk to each other — messaging, tasks, sessions, and alerts
Build Apps and run code in 30 languages — sandboxed, with persistent sessions for agent loops.
Stand up ops from Cursor/Claude/Codex; fleets keep running after your session ends.
Work on your own computers from Claude or ChatGPT: run commands, edit and search files.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables asynchronous and parallel execution of Claude Code tasks across multiple sessions, allowing users to start background tasks and continue working immediately without blocking.1-
- AlicenseNot gradedqualityDmaintenanceEnables Codex to delegate tasks to Claude Code, allowing Claude to investigate, edit, and verify changes in the repository with background job management.1 npmMIT
- AlicenseAqualityDmaintenanceEnables asynchronous and parallel execution of Gemini CLI tasks within Claude Code, allowing background task management and multi-instance parallelism.34MIT
- AlicenseAqualityBmaintenanceEnables Codex and Claude Code to delegate implementation, research, debugging, and long-log work to DeepSeek Harness, then observe, continue, or cancel those sessions without leaving the primary workflow.153MIT