MCP server for Spec-Kit Plus โ connect any AI agent to spec-driven development
Project description
๐ ๏ธ Spec-Kit Plus MCP Server
MCP (Model Context Protocol) server that wraps Spec-Kit Plus tools so any AI IDE or CLI (Qwen, Gemini, Claude Code, Cursor, etc.) can use it globally.
๐ฆ What This Is
This MCP server acts as a bridge between AI agents and the Spec-Kit Plus CLI (specifyplus), enabling spec-driven development workflows across any MCP-compatible AI tool.
User (in any AI IDE/CLI)
โ
โผ
MCP Protocol
โ
โผ
speckit-plus-mcp/
server.py โ MCP Server
โ
โผ
specifyplus CLI โ Spec-Kit Plus (sp init, sp.plan, sp.tasks, etc.)
โ Prerequisites
# Install specifyplus (the CLI being wrapped)
pip install specifyplus
# Install MCP Python SDK
pip install "mcp[cli]"
๐ Installation
-
Clone or download this repository
-
Install dependencies:
cd speckit-plus-mcp pip install -e .
-
Configure your AI agent (see below)
๐ง Configuration
Qwen CLI
Create ~/.qwen/settings.json:
{
"mcpServers": {
"speckit-plus": {
"command": "python",
"args": ["/ABSOLUTE/PATH/TO/speckit-plus-mcp/server.py"],
"env": {
"PYTHONPATH": "."
}
}
}
}
โ ๏ธ Replace
/ABSOLUTE/PATH/TO/with your actual path.
Gemini CLI
Create ~/.gemini/settings.json:
{
"mcpServers": {
"speckit-plus": {
"command": "python",
"args": ["/ABSOLUTE/PATH/TO/speckit-plus-mcp/server.py"]
}
}
}
Claude Code
Create ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"speckit-plus": {
"command": "python",
"args": ["/ABSOLUTE/PATH/TO/speckit-plus-mcp/server.py"]
}
}
}
Cursor / VS Code (with MCP extension)
Add to .cursor/mcp.json inside your project:
{
"mcpServers": {
"speckit-plus": {
"command": "python",
"args": ["/ABSOLUTE/PATH/TO/speckit-plus-mcp/server.py"]
}
}
}
๐งช Testing
Test the server runs correctly:
cd speckit-plus-mcp
python server.py
You should see: Running MCP server 'speckit-plus'
Test inside Qwen CLI:
qwen
Then type /mcp โ you should see:
speckit-plus: CONNECTED
Tools: speckit_init, speckit_check, speckit_specify, speckit_plan ...
๐ Available Tools
| Tool | Description |
|---|---|
speckit_init |
Initialize a new Spec-Kit Plus project for any AI agent |
speckit_check |
Verify all required tools are installed |
speckit_constitution |
Set project governing principles |
speckit_specify |
Write requirements specification (WHAT to build) |
speckit_clarify |
Run structured clarification before planning |
speckit_plan |
Generate technical plan with tech stack (HOW to build) |
speckit_tasks |
Break plan into ordered task list |
speckit_implement |
Execute all tasks to build the full project |
speckit_workflow_guide |
Get complete step-by-step workflow instructions |
๐ Usage Example
In your AI agent (Qwen, Claude, etc.):
Use speckit_init to create a project called "todo-app" for qwen,
then show me the workflow guide.
Complete Workflow:
-
Initialize project:
speckit_init(project_name="my-app", ai_agent="qwen") -
Set principles:
/sp.constitution Enforce clean code, testing, and performance -
Write specification:
/sp.specify Build a task manager with Kanban boards and user assignments -
Clarify gaps (recommended):
/sp.clarify -
Technical plan:
/sp.plan Use FastAPI, PostgreSQL, React, Docker -
Generate tasks:
/sp.tasks -
Build the project:
/sp.implement
๐ฏ Supported AI Agents
- qwen
- claude
- gemini
- copilot
- cursor
- windsurf
- opencode
- codex
- amp
๐ Output Files
After running the workflow, you'll find these files in .specify/:
.specify/
โโโ memory/
โ โโโ constitution.md โ Your project principles
โโโ specs/
โโโ 001-feature/
โโโ spec.md โ Requirements & user stories
โโโ plan.md โ Technical implementation plan
โโโ tasks.md โ Ordered task list
โโโ data-model.md โ Database schema
๐๏ธ How It Works
AI Agent (Qwen/Gemini/Claude)
โ
โ speaks MCP protocol
โผ
server.py (MCP server)
โ
โ calls subprocess
โผ
specifyplus CLI (sp commands)
โ
โ reads/writes
โผ
.specify/ folder
(spec.md, plan.md, tasks.md)
โ
โ used by
โผ
AI Agent builds the project
MCP = Model Context Protocol โ a standard that lets any AI agent talk to any tool server. This server.py IS the bridge between the AI and Spec-Kit Plus.
๐ License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file speckit_plus_mcp-0.1.0.tar.gz.
File metadata
- Download URL: speckit_plus_mcp-0.1.0.tar.gz
- Upload date:
- Size: 8.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9706ecd7d4945448f7546ede901c53b8087cc5d05415bbc871d1bcdba9b056ea
|
|
| MD5 |
6320c7dcad49ef4d7b84f8c21042c742
|
|
| BLAKE2b-256 |
4796493feb5ddba7e47ba053536f7f9ce3b73bf1e698682d3241e66d29e45e45
|
File details
Details for the file speckit_plus_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: speckit_plus_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 16.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
28e117f95ea6d246e40fac87acec77a1ee1af8f98db5ec280283ebdb0893af7d
|
|
| MD5 |
cbcece85c01d4495600b6cdb857ee555
|
|
| BLAKE2b-256 |
67f22d6682d1b547c135313981b4a07543d29a8161707d9c66b74cf4ceef48e7
|