| Crates.io | spec-kit-mcp |
| lib.rs | spec-kit-mcp |
| version | 0.1.0 |
| created_at | 2025-10-25 22:22:41.437986+00 |
| updated_at | 2025-10-25 22:22:41.437986+00 |
| description | MCP server for GitHub Spec-Kit - enables AI coding assistants to use spec-driven development |
| homepage | https://github.com/lsendel/spec-kit-mcp |
| repository | https://github.com/lsendel/spec-kit-mcp |
| max_upload_size | |
| id | 1900737 |
| size | 327,929 |
MCP server that enables AI coding assistants to use spec-driven development practices via the GitHub Spec-Kit toolkit.
cargo or npxZero installation, always latest version:
# Just add to your .mcp.json (see Configuration below)
npx @speckit/mcp@latest
For Rust developers or offline use:
cargo install spec-kit-mcp
uv tool install specify-cli or pip install specify-cliAdd to your Claude Code .mcp.json:
{
"mcpServers": {
"spec-kit": {
"type": "stdio",
"command": "npx",
"args": ["@speckit/mcp@latest"],
"env": {}
}
}
}
Or if installed via cargo:
{
"mcpServers": {
"spec-kit": {
"type": "stdio",
"command": "spec-kit-mcp",
"args": [],
"env": {}
}
}
}
The MCP server exposes 5 spec-kit tools for the complete workflow:
speckit_initInitialize a new spec-kit project with proper structure.
{
"project_name": "my-project",
"project_path": "."
}
speckit_constitutionCreate project governing principles and development standards.
{
"principles": "Simplicity, Performance, Security",
"constraints": "Must support Python 3.11+",
"output_path": "./speckit.constitution"
}
speckit_specifyDefine requirements and user stories (the "what").
{
"requirements": "User authentication system with OAuth2 support",
"user_stories": "As a user, I want to login with Google...",
"output_path": "./speckit.specify"
}
speckit_planCreate a technical implementation plan (the "how").
{
"spec_file": "./speckit.specify",
"tech_stack": "Rust + Tokio",
"output_path": "./speckit.plan"
}
speckit_tasksGenerate actionable task lists from the plan.
{
"plan_file": "./speckit.plan",
"breakdown_level": "medium",
"output_path": "./speckit.tasks"
}
Here's a complete workflow using Claude Code:
User: Initialize a new spec-kit project called "user-auth"
Claude: [Uses speckit_init tool]
✓ Project initialized at ./user-auth
User: Create a constitution focusing on security and simplicity
Claude: [Uses speckit_constitution tool]
✓ Constitution created at ./speckit.constitution
User: Specify requirements for OAuth2 authentication
Claude: [Uses speckit_specify tool]
✓ Specification created at ./speckit.specify
User: Create a technical plan using Rust and OAuth2 libraries
Claude: [Uses speckit_plan tool]
✓ Technical plan created at ./speckit.plan
User: Generate detailed tasks
Claude: [Uses speckit_tasks tool]
✓ Task list created at ./speckit.tasks
Found 15 actionable tasks
AI Agent (Claude Code, Cursor, etc.)
↓
MCP Protocol (JSON-RPC 2.0 over stdio)
↓
Spec-Kit MCP Server (Rust/Tokio)
↓
Tool Registry & Dispatcher
↓
Spec-Kit CLI Integration Layer
↓
Spec-Kit Python CLI (subprocess)
↓
File System (speckit.* artifacts)
git clone https://github.com/yourusername/spec-kit-mcp.git
cd spec-kit-mcp
cargo build --release
cargo test
# With default settings
cargo run
# With custom log level
cargo run -- --log-level debug
# With custom CLI path
cargo run -- --cli-path /path/to/specify
# With custom timeout
cargo run -- --timeout 600
spec-kit-mcp/
├── src/
│ ├── main.rs # Binary entry point
│ ├── lib.rs # Library root
│ ├── mcp/ # MCP protocol implementation
│ │ ├── types.rs # JSON-RPC types
│ │ ├── protocol.rs # Protocol handler
│ │ ├── transport.rs # Stdio transport
│ │ └── server.rs # MCP server
│ ├── speckit/ # Spec-kit CLI integration
│ │ ├── cli.rs # Command execution
│ │ └── errors.rs # Error types
│ └── tools/ # MCP tools
│ ├── mod.rs # Tool registry
│ ├── init.rs # speckit_init tool
│ ├── constitution.rs # speckit_constitution tool
│ ├── specify.rs # speckit_specify tool
│ ├── plan.rs # speckit_plan tool
│ └── tasks.rs # speckit_tasks tool
├── Cargo.toml # Rust package manifest
└── README.md # This file
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
git checkout -b feature/my-featurecargo testcargo clippycargo fmtgit commit -m "feat: add new feature"speckit_implement, speckit_clarify, speckit_analyze, speckit_checklistError: spec-kit CLI not found!
Please install it with: uv tool install specify-cli
Solution: Install spec-kit CLI:
# Using uv (recommended)
uv tool install specify-cli
# Or using pip
pip install specify-cli
Solution: Upgrade to Python 3.11 or later:
# Check version
python3 --version
# Install Python 3.11+ (macOS with Homebrew)
brew install python@3.11
Solution: Ensure the binary is executable:
chmod +x $(which spec-kit-mcp)
Q: Do I need to install spec-kit separately? A: Yes, the MCP server requires the spec-kit Python CLI to be installed.
Q: Can I use this without Claude Code? A: Yes! It works with any MCP-compatible AI coding assistant.
Q: Does this work offline? A: Yes, if installed via cargo. The npx version requires internet for initial download.
Q: How does this compare to using spec-kit directly? A: This MCP server enables AI agents to use spec-kit automatically, streamlining the workflow.
This project is dual-licensed under:
You may choose either license for your use.
Built with Rust | Production Ready | Open Source