规格驱动开发
STDIO规范驱动开发MCP服务器提供系统化软件开发工作流工具
规范驱动开发MCP服务器提供系统化软件开发工作流工具
Spec-Driven Development MCP Server - An MCP server that provides spec-driven development custom slash commands as MCP tools
bunx sdd-mcp@latest
npx sdd-mcp@latest
# With Bun (Recommended) bun install sdd-mcp # With npm npm install sdd-mcp
This server provides the following spec-driven development tools:
# With bunx (Recommended) bunx sdd-mcp@latest # With npx npx sdd-mcp@latest
You can invoke the above tools from MCP clients. Each tool:
See individual template files (commands/*.md) for details.
Here's a complete workflow for developing a new feature with spec-driven development:
Use MCP tool: steering
This creates project-wide context documents (product.md, tech.md, structure.md) in .kiro/steering/.
Use MCP tool: spec-init
Parameters: "Implement user authentication with JWT tokens and refresh token rotation"
This creates:
.kiro/specs/user-authentication/spec.json (metadata).kiro/specs/user-authentication/requirements.md (template)Use MCP tool: spec-requirements
Parameters: user-authentication
AI analyzes the project and generates comprehensive requirements in requirements.md.
Human Review Required: Review and approve the requirements.
Use MCP tool: spec-design
Parameters: user-authentication
AI creates technical design document in design.md based on approved requirements.
Human Review Required: Review and approve the design.
Quick tip: Use spec-design user-authentication -y to auto-approve requirements and skip the interactive prompt.
Use MCP tool: spec-tasks
Parameters: user-authentication
AI breaks down the design into concrete implementation tasks in tasks.md.
Human Review Required: Review and approve the tasks.
Quick tip: Use spec-tasks user-authentication -y to auto-approve previous phases.
Use MCP tool: spec-impl
Parameters: user-authentication
AI implements the feature following Test-Driven Development methodology.
Optional: Specify task numbers: spec-impl user-authentication 1,2,3 to implement specific tasks.
Use MCP tool: spec-status
Parameters: user-authentication
View current phase, approval status, and implementation progress.
Use MCP tool: spec-feedback
Parameters: {"feature_name":"user-authentication","mode":"report"}
This produces a JSON report and Markdown summary describing the feedback items that need to be reflected in the specification set.
After the report is reviewed, apply the changes directly to the spec documents:
Use MCP tool: spec-feedback
Parameters: {"feature_name":"user-authentication","mode":"apply","report_path":"feedback/20251013-120000-user-authentication-feedback.json"}
The apply prompt guides you to update requirements.md, design.md, tasks.md, and spec.json so the official documentation stays in sync with the agreed feedback.
Use MCP tool: validate-design
Parameters: user-authentication
Interactive design quality review with recommendations.
Use MCP tool: validate-gap
Parameters: user-authentication
Analyze gaps between requirements and existing codebase.
# Show help (bunx recommended) bunx sdd-mcp@latest --help # or with npx npx sdd-mcp@latest --help # Show version bunx sdd-mcp@latest --version # Enable debug mode bunx sdd-mcp@latest --debug
If you maintain global instruction files for Codex or Claude Code agents (for example ~/.codex/AGENTS.md), include the following guidance so the assistants reliably choose sdd-mcp tools:
spec-init → spec-requirements → spec-design → spec-tasks → spec-impl, and remind the agent to run spec-status before advancing phases.steering, steering-custom) should be refreshed whenever context feels stale, and that validate tools (validate-design, validate-gap) close the loop before shipping.Use MCP tool: spec-impl {"feature_name":"<feature-name>"} so the agent knows the exact invocation syntax..kiro/ directory for outputs and approvals after each phase to keep humans in control of the process.bun install
bun run dev
bun run build
# Run tests bun test # Run tests in watch mode bun run test:watch # Run tests with coverage bun run test:coverage
# Lint bun run lint # Lint and fix bun run lint:fix # Format code bun run format
| OS | Support | 
|---|---|
| macOS | Supported | 
| Linux | Supported | 
| WSL2 (Windows) | Supported | 
| Native Windows | Not supported | 
To convert positional argument placeholders ($ARGUMENTS, $1, $2) to named placeholders ({{project_description}}, {{feature_name}}) in template files:
bun run migrate:templates
This script will:
version field to frontmatter (if not specified)This project is based on cc-sdd by Gota Lab.
The command templates (commands/*.md) are adapted from cc-sdd under the MIT License.
MIT - See LICENSE for details