MCP Worktree Voting Server
Enables parallel implementation of tasks using git worktrees, allowing you to create multiple variants of a solution, evaluate them side-by-side, and select the best one.
README
MCP Git Worktree Workflows
An MCP (Model Context Protocol) server that implements automated parallel development using git worktrees.
🚀 Key Features
- Voting Workflow: Intelligently ranks and selects the highest-quality implementation
- Ad Hoc Workflow: Quick single-worktree creation for simple tasks
- Orchestration Workflow: Break complex tasks into subtasks with coordinated execution
- Clean Workflow: Automatic cleanup of unsuccessful variants
Installation
- Install dependencies:
uv add fastmcp # or pip install fastmcp
- Add the server to Claude Code:
Option A: Using Claude Code CLI (Recommended)
# For project-specific use
claude mcp add worktree-workflows python /path/to/mcp-servers/worktree_workflows.py
# For global use across all projects
claude mcp add --scope user worktree-workflows python /path/to/mcp-servers/worktree_workflows.py
Option B: Manual Configuration
Add to your MCP configuration file:
{
"mcpServers": {
"worktree-workflows": {
"command": "python",
"args": ["/path/to/mcp-servers/worktree_workflows.py"]
}
}
}
- Restart Claude Code or use
/mcpcommand to reconnect
🔄 Workflow Options
1. Voting Pattern (Multiple Implementations)
create_voting_worktrees(
task="Rewrite the README.md with better examples",
num_variants=5,
target_repo="lombardi" # Optional: specify repository
)
2. Ad Hoc Single Worktree
create_adhoc_worktree(
task="Fix the login bug in auth.js",
target_repo="my-app" # Optional
)
3. Orchestrated Subtasks
create_orchestrated_worktrees(
task="Implement user authentication system",
subtasks=[
"Create database models for users and sessions",
"Build authentication API endpoints",
"Implement JWT token generation and validation",
"Create login/logout UI components",
"Add authentication middleware and route protection"
],
target_repo="my-app" # Optional
)
📊 Evaluation Metrics
The system automatically evaluates implementations using:
- Code Changes (30 points): Has meaningful modifications
- Test Success (50 points): Tests pass successfully
- File Impact (up to 20 points): Number of files modified
- Quality Heuristics: Additional scoring based on implementation patterns
🛠️ Available Tools
Core Voting Workflow
create_voting_worktrees: Creates worktrees and starts automated executionlist_sessions: Monitor all active sessions and their progressevaluate_implementations: Get detailed ranking and evaluation of all variantsauto_select_best: Automatically choose and finalize the best implementationfinalize_best: Manually select a specific implementationcleanup_session: Force cleanup of sessions
Additional Workflows
create_adhoc_worktree: Single worktree for quick taskscreate_orchestrated_worktrees: Multiple worktrees for coordinated subtasks
Utility Functions
get_worktree_info: Inspect specific worktree detailsmark_implementation_complete: Manually mark implementations as done
💡 Example Use Cases
Voting Pattern
Perfect for:
- Architecture Exploration: Try different design patterns simultaneously
- Library Comparison: Implement with various frameworks/libraries
- Algorithm Optimization: Test multiple approaches to performance problems
- UI/UX Variants: Create different interface implementations
Ad Hoc Tasks
Great for:
- Bug Fixes: Quick isolation and resolution
- Small Features: Rapid implementation without overhead
- Experiments: Try ideas without affecting main branch
Orchestrated Development
Ideal for:
- Large Features: Break down and parallelize development
- System Refactoring: Coordinate multiple related changes
- API Development: Build endpoints, models, and tests in parallel
🎯 Quick Start Examples
Example 1: Voting Pattern
# 1. Start automated voting session
create_voting_worktrees(
task="Add Redis caching to the user service with error handling",
num_variants=3
)
# 2. Check progress (Claude is working automatically)
list_sessions()
# Returns: "2/3 complete, 3/3 executed"
# 3. View results and rankings
evaluate_implementations(session_id="xyz789")
# Shows ranked implementations with scores
# 4. Auto-select winner and merge
auto_select_best(session_id="xyz789", merge_to_main=true)
# Merges best implementation, cleans up others
Example 2: Quick Fix
# Create single worktree for a bug fix
create_adhoc_worktree(
task="Fix null pointer exception in user profile component"
)
# Claude starts immediately in new Terminal window
Example 3: Feature Development
# Break down complex feature into subtasks
create_orchestrated_worktrees(
task="Add real-time notifications",
subtasks=[
"Set up WebSocket server infrastructure",
"Create notification database schema and models",
"Build notification API endpoints",
"Implement frontend notification component",
"Add notification preferences to user settings"
]
)
# 5 Terminal windows open, each with Claude working on a subtask
⚡ Performance Notes
- Concurrent Execution: All Claude instances run in parallel
- Automatic Cleanup: Failed/low-quality implementations are removed
- Resource Efficient: Only keeps the winning implementation
- Fast Evaluation: Uses git diff stats and automated test detection
- Smart Naming: Worktrees include task description for easy identification
🔧 Advanced Features
Worktree Naming
- Branches and directories now include task descriptions
- Format:
{session-id}-{task-slug}-{variant} - Example:
abc123-fix-login-bug-var1
Origin/Main Support
- Ad hoc worktrees always branch from
origin/main - Ensures clean starting point for isolated tasks
- Automatically fetches latest changes
Terminal Integration
- Automatically spawns Terminal windows (macOS)
- Each worktree gets its own Claude session
- No manual terminal management required
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。