Sdd MCP server
io.github.juanklagos/sdd-mcp·v2.8.0·21 starsSpec-Driven Development workflow: specs, plans, gates, status and logbook tools. Bilingual EN/ES.
21 stars108 downloads/wk
Reviews
Write oneNobody has reviewed Sdd yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Sdd tools (38, 11 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
sdd_add_taskAppend one unchecked task (- [ ] text) to a spec's tasks.md, right after the last existing checkbox (atomic write, same primitive as sdd_set_task_done), and return the updated task list with line numbers.
sdd_append_project_logAppend content to bitacora/global/PROJECT_LOG.md.
sdd_approve_specSurgically fill the existing approval block of a spec.md: Estado -> Aprobado, approval date -> today, approver -> given name, evidence when provided (always wins) or when the line is empty. Fails clearly when the block is missing.
sdd_board_connectConnect two existing board cards with an optional labeled edge and persist specs/board.canvas. Idempotent for identical edges.
sdd_board_readRead the visual SDD Builder board: the specs/board.canvas layout (JSON Canvas) plus every spec with its approval status and task progress.
sdd_board_writewrite actionReplace the specs/board.canvas layout (JSON Canvas: nodes + edges). Only layout is stored; markdown files are never touched by this tool.
sdd_check_driftSpec↔code drift (spec 025) as a direct answer: did the code a spec governs change AFTER its approval date? One spec (specId) or every spec (omitted). States: clean, drifted (with offending commits), unscoped (no File scope declared), unknown (not approved / no git). Same computeSpecDrift rule the board and dashboard use.
sdd_check_gateVerify whether implementation can proceed under SDD rules.
sdd_check_policywrite actionRun the multi-agent policy check (sdd.policy.yaml blocks, agent rule files aligned with the canonical operating system) WITHOUT running the full gate. Paired with scripts/check-sdd-policy.sh: same messages, same codes. The gate embeds this check; this tool answers it on its own.
sdd_check_versionCompare an installed sidecar against this server's version WITHOUT writing anything: which files the framework would repair, which user-owned files diverged from the new reference, and which are missing. `upToDate` is false when content differs even if the version number matches — a tampered gate has survived a reinstall before.
sdd_create_specwrite actionCreate the next numbered spec folder from the template.
sdd_create_workspacewrite actionCreate a runnable SDD workspace inside the recommended default folder ./www/<project-name>.
sdd_gate_summaryOne-call gate semaphore: runs the SDD gate check plus the structural validation and groups every message by the spec it belongs to (the same data the SDD Builder chip and per-card badges show). Includes advisory dependencyWarnings from the board's typed edges (approved spec depending on a not-approved one).
sdd_generate_roadmapGenerate docs/roadmap.mmd and docs/roadmap.md from specs/INDEX.md.
sdd_generate_statusGenerate STATUS.md from the current project specs and logbook.
sdd_install_sidecarInstall the compact spec/ sidecar into an EXISTING external project directory (the recommended layout for real projects outside this template), via scripts/install-spec-sidecar.sh. After this, every other tool works against that projectRoot. Refuses the template root, like every tool here.
sdd_legacy_discoveryScan an existing codebase for route/API and user-flow signals and write analysis/legacy-discovery/ (evidence files + report with suggested first specs). TypeScript port of scripts/legacy-discovery.sh — no bash, no ripgrep needed. The entry point for adapting a project that already has code (Case 2 of the guides).
sdd_lint_earsLint acceptance criteria against the EARS skeleton (CUANDO/SI/MIENTRAS … EL SISTEMA DEBERÁ … / WHEN/IF/WHILE … THE SYSTEM SHALL …) plus vague-word checks. Pure and advisory — the same validateEarsCriterion the Builder uses; results are suggestions, never blockers. No filesystem access.
sdd_list_specsList numbered specs and their approval status.
sdd_move_taskSwap one task with the nearest task above/below it in tasks.md, skipping non-task lines (atomic write). 'Move to the end' is repeated 'down'. Returns the updated task list with line numbers.
sdd_next_requestClaim the oldest pending AI-assist request published by the SDD Builder (pending -> in_progress) and return it with its full context: target field, its current text, and the user's instruction. Returns { request: null } when the queue is empty — polling also records agent presence, which is what the builder shows as 'agent connected'. Answer with sdd_respond_request; never write the spec files you
sdd_read_bitacoraRead the project logbook: without fileName, list the markdown files of one bitácora folder (handoffs, decisiones, diaria, global — sorted, so the last one is the latest); with fileName, return that file's content. The read counterpart of sdd_write_handoff/sdd_write_decision/sdd_write_daily_log/sdd_append_project_log.
sdd_read_spec_documentRead one document of a numbered spec bundle (spec.md, plan.md, tasks.md, research.md or history.md) as raw markdown. The read counterpart of sdd_approve_spec/sdd_update_spec_sections, for agents without filesystem access (HTTP/Desk).
sdd_read_tasksRead the checkbox tasks of a spec's tasks.md with their line numbers and done state.
sdd_record_user_consentRecord explicit user consent before implementation starts. Pass specId so the consent is bound to that spec; without it the entry is a legacy, markerless line that only covers specs approved before it.
sdd_remove_taskwrite actionDelete one task checkbox line from tasks.md; every other line survives byte for byte (atomic write). Returns the updated task list with line numbers.
sdd_rename_taskReplace the text of one task checkbox line in tasks.md, preserving its indentation and done mark (atomic write, same primitive as sdd_set_task_done). Returns the updated task list with line numbers.
sdd_respond_requestAttach a proposal to a claimed AI-assist request (in_progress -> answered). The proposal is plain text for the target field; for structure-idea and review-spec requests it is exactly the JSON the instruction asks for, with no markdown around it. A review-spec answer is a list of findings anchored to the spec sections — findings, never a rewritten spec. It is NOT written to any spec file: the user
sdd_score_specScore a spec bundle 0-100 with grade (A/B/C/D) and improvement notes: required files present, spec sections, plan signals (milestones/dependencies/risks), task breakdown, research rationale, dated history. One spec (specId) or every spec (omitted). Heuristics-parity port of scripts/score-spec.sh.
sdd_set_task_doneToggle one checkbox line in a spec's tasks.md (surgical edit, atomic write) and return the updated tasks.
sdd_update_spec_sectionswrite actionReplace ONLY the content under the guided-editor headings of a spec.md (user story, acceptance scenarios, EARS criteria, requirements, spec properties, success criteria, out of scope — the full template) preserving everything else, the approval block included. Tolerant to the EN/ES headings of the canonical repo template (specs/_template/spec.md).
sdd_update_spec_statuswrite actionUpdate the status, priority and/or owner cells of ONE spec's row in specs/INDEX.md (and refresh its updated date). The only write INDEX accepts besides appending a new row — until now a status change meant editing the table by hand. Fails when the spec has no row.
sdd_upgradeBring an installed SDD sidecar up to the version of this server. Framework-owned files (the gate, validators, root resolver) are repaired; files the user owns (sdd.policy.yaml, specs/_template/*, logbook templates) are NEVER written unless named in applyPreserved. Call with dryRun: true first — it reports what would change and writes nothing. An already-current sidecar performs zero writes.
sdd_validateValidate the SDD structure and required files of a project.
sdd_write_daily_logwrite actionCreate or replace a daily log entry in bitacora/diaria.
sdd_write_decisionwrite actionCreate or replace a decision file in bitacora/decisiones.
sdd_write_handoffwrite actionCreate or replace a handoff file in bitacora/handoffs.
sdd_write_spec_documentwrite actionWrite the FULL content of one spec bundle document (spec.md, plan.md, tasks.md, research.md or history.md), atomically. The low-level counterpart of sdd_read_spec_document; prefer sdd_update_spec_sections for structured edits of spec.md. Any name outside the five fails without touching the filesystem.
Public scan report
scanner v0.1.10 · 2026-10-31 · same rubric, same numbers if you re-run it
- Code scan40 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 62 days ago12/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
How Sdd compares
Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 88/100
- higher than 75% of 48,255 servers
- Tools
- 38
- the typical server has 7
- Tools that change things
- 29%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 21
- more than 91% of 28,688 servers
- Downloads a week
- 108
- more than 65% of 12,191 servers with a package
What its tools let an agent do: 27 read · 11 change
Install Sdd in Claude Code, Cursor or VS Code
Runs npx -y @juanklagos/sdd-mcp on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add sdd-mcp -- npx -y @juanklagos/sdd-mcp
What the publisher says
From the Sdd repository's README, as published. We do not edit it. Read it on GitHub
🌱 Spec-Driven Development Template
Learn Spec-Driven Development, then use it on real projects.One rule: no code until you approve a written spec. A script checks that rule every time you run it, and prints exactly what it looked at.
🇺🇸 English · 🇪🇸 Español
Non-technical start · Quickstart · AI agent start · Commands · Community
What is this?
Spec-Driven Development (SDD) means writing and approving a clear specification before any code exists. What you decided ends up in a file, instead of buried in a chat you will close and never find again. By 2026 it is how most people build software with AI agents.
This repo does double duty.
It is a school: a bilingual (EN/ES) path that starts from zero, with guides, an interactive course and a tutor you can talk to. You do not need to know how to program to get through it.
It is also a toolkit for real work: scripts that check the rule, instruction files your AI assistant reads, a connector so your AI tool can run the workflow itself (MCP, the Model Context Protocol), and a single spec/ folder you add to a project that already has code — without moving any of it.
The step-by-step commands come from GitHub Spec Kit. This repo adds the guides, the checks and the templates on top of them.
The flow in action — create a spec, validate, pass the gate (regenerated on every release):
What changes in practice: decisions stop living in chat history and move into specs/. The gate stays closed until spec.md and plan.md exist, agree, and you record your consent — a script checks that, not somebody's memory. A new teammate or a new agent lands in a folder layout they already recognize. And bitacora/ keeps the session log, so six months later you can still find out why something was done the way it was.
Want the industry map? Read SDD in 2026: state of the art and how this template compares.
Choose your door
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Sdd: common questions
- Is Sdd MCP server safe?
- Yes, by our scan: it is graded A (88/100). Read the Sdd safety report
- How do I install Sdd?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Sdd need an API key?
- No secret keys are declared. It reads 2 settings from the environment.
- Is Sdd maintained?
- The last commit was 66 days ago (2026-08-30). The latest release is v2.8.0.
- How does Sdd compare with other MCP servers?
- safety score 88/100 (higher than 75% of 48,255 servers); tools 38 (the typical server has 7); tools that change things 29% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.