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 Worktree Voting Server
An MCP (Model Context Protocol) server that implements automated parallel development using git worktrees. Creates multiple implementations of the same task simultaneously, automatically evaluates them, and selects the best one.
🚀 Key Features
- Fully Automated: Claude automatically executes in each worktree
- Parallel Execution: All implementations run concurrently for speed
- Smart Evaluation: Automatic code analysis, test execution, and quality scoring
- Best Selection: Intelligently ranks and selects the highest-quality implementation
- 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-voting python /path/to/mcp-servers/mcp_worktree_voting.py
# For global use across all projects
claude mcp add --scope user worktree-voting python /path/to/mcp-servers/mcp_worktree_voting.py
Option B: Manual Configuration
Add to your MCP configuration file:
{
"mcpServers": {
"worktree-voting": {
"command": "python",
"args": ["/path/to/mcp-servers/mcp_worktree_voting.py"]
}
}
}
- Restart Claude Code or use
/mcpcommand to reconnect
🔄 Automated Workflow
1. Create Session (Everything Starts Here)
create_voting_session(
repository=lombardi
task="Rewrite the README.md ",
num_variants=5
)
What happens automatically:
- Creates 5 git worktrees with separate branches
- Launches Claude in each worktree with
--add-dirflag - Claude implements the task in parallel across all worktrees
- Evaluates each implementation (code changes, tests, quality metrics)
- Ranks implementations by quality score
2. Monitor Progress
list_sessions()
Shows execution status: 3/5 complete, 5/5 executed
3. Review Evaluations
evaluate_implementations(session_id="abc12345")
Returns detailed analysis:
- Ranked implementations by quality score
- Code metrics: files changed, lines added/removed
- Test results: pass/fail status for each variant
- Recommendation: Best implementation identified
4. Auto-Select Best Implementation
auto_select_best(
session_id="abc12345",
merge_to_main=true
)
Automatically selects highest-scoring implementation and merges it.
📊 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 Workflow
create_voting_session: 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 implementation
Manual Control (Optional)
get_worktree_info: Inspect specific worktree detailsmark_implementation_complete: Manually mark implementations as donefinalize_best: Manually select a specific implementationcleanup_session: Force cleanup of sessions
💡 Example Use Cases
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
- API Design: Explore different endpoint structures
- Database Integration: Try various ORM approaches or query strategies
🎯 Quick Start Example
# 1. Start automated voting session
create_voting_session(
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
⚡ 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
推荐服务器
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 模型以安全和受控的方式获取实时的网络信息。