MCP Hub
Back to servers

Specky

An MCP server for Spec-Driven Development that transforms natural language ideas and meeting transcripts into structured, production-grade specifications using EARS notation. It automates a 7-phase pipeline to generate project artifacts like requirements, architecture designs, and task lists directly to disk.

glama
Updated
Mar 21, 2026

Specky

The open-source MCP server for Spec-Driven Development (SDD).

The fun name, the serious engine.

Version License Node MCP Tools

Created by Paula Silva (@paulanunes85) | Americas Software GBB


What is Specky?

Specky is an MCP server that transforms natural language project ideas — or meeting transcripts — into production-grade specifications. It enforces EARS notation (Easy Approach to Requirements Syntax), maintains a state machine across 7 pipeline phases, and writes real files to disk.

You ──→ AI Assistant ──→ Specky (17 tools) ──→ .specs/ files on disk
        (Copilot/Claude)                       CONSTITUTION.md
                                               SPECIFICATION.md
                                               DESIGN.md
                                               TASKS.md
                                               ANALYSIS.md

What is MCP?

MCP (Model Context Protocol) is an open standard that lets AI assistants call external tools. Think of it like USB — a universal plug between any AI and any tool. Specky is a "device" that speaks MCP, giving Copilot and Claude the ability to create structured specification files.

Key Features

  • 17 MCP tools for the full specification lifecycle
  • EARS notation validation with 6 pattern types and improvement suggestions
  • 7-phase pipeline with state machine enforcement
  • Meeting transcript → full spec — VTT, SRT, TXT, MD formats
  • Power Automate + OneDrive integration for automated workflows
  • Quality gates with traceability matrix and coverage analysis
  • Atomic file writes — safe, no corruption on crash
  • Auto-steering — scans your codebase to tailor discovery questions
  • Zero external dependencies — runs entirely local, no API calls
  • GitHub Copilot agents + Claude Code commands included

Two Ways to Use

ModeHowBest For
InteractiveConversation with AI, step by stepNew projects, learning SDD
TranscriptFeed a meeting recording, get full specExisting meetings, automation

Quick Start

npx (recommended)

npx specky

npm global install

npm install -g specky
specky

Docker

docker compose up
# Server starts on http://localhost:3200

Setup

VS Code (GitHub Copilot)

Create or update .vscode/mcp.json:

{
  "servers": {
    "specky": {
      "command": "npx",
      "args": ["-y", "specky"],
      "env": {
        "SDD_WORKSPACE": "${workspaceFolder}"
      }
    }
  }
}

Claude Code

# Quick setup (one command):
claude mcp add specky npx -y specky --env SDD_WORKSPACE=$(pwd)

Or manually add to MCP settings:

{
  "mcpServers": {
    "specky": {
      "command": "npx",
      "args": ["-y", "specky"],
      "env": {
        "SDD_WORKSPACE": "/path/to/your/project"
      }
    }
  }
}

Claude Desktop

Add to claude_desktop_config.json:

OSConfig File Location
macOS~/Library/Application Support/Claude/claude_desktop_config.json
Linux~/.config/Claude/claude_desktop_config.json
Windows%APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "specky": {
      "command": "npx",
      "args": ["-y", "specky"],
      "env": {
        "SDD_WORKSPACE": "/path/to/your/project"
      }
    }
  }
}

Meeting Transcript to Specs (Auto Pipeline)

One command. Full specification from a Teams/Zoom meeting.

/sdd:transcript meeting.vtt my-project

Or call the tool directly:

{
  "name": "sdd_auto_pipeline",
  "arguments": {
    "file_path": "meeting.vtt",
    "project_name": "my-project"
  }
}

What happens automatically:

  1. Parses the VTT/SRT/TXT/MD transcript
  2. Extracts participants, topics, decisions, action items
  3. Generates EARS requirements from meeting content
  4. Creates all 6 spec files in one call:
FileContent
CONSTITUTION.mdProject charter with principles from the meeting
SPECIFICATION.mdEARS requirements extracted from decisions and discussions
DESIGN.mdArchitecture overview based on topics discussed
TASKS.mdImplementation tasks from requirements + action items
ANALYSIS.mdTraceability matrix and quality gate
TRANSCRIPT.mdClean markdown version of the meeting

Supported formats:

FormatSourceExtension
WebVTTMicrosoft Teams.vtt
SubRipZoom.srt
Plain textOtter.ai, manual notes.txt
MarkdownAny structured notes.md

Power Automate + OneDrive Integration

For fully automated meeting-to-spec workflows:

Teams Meeting → Power Automate → OneDrive/Transcripts/ → sdd_batch_transcripts → .specs/

Power Automate flow:

  1. Trigger: "When a Teams meeting recording is available"
  2. Action: Get the meeting transcript
  3. Action: Convert to Markdown
  4. Action: Save to OneDrive/Transcripts/{meeting-title}.md

Specky picks up from there:

{
  "name": "sdd_batch_transcripts",
  "arguments": {
    "transcripts_dir": "~/OneDrive/Transcripts"
  }
}

Each transcript in the folder becomes its own numbered feature spec package (001-sprint-planning/, 002-architecture-review/, etc.) with 6 files each.


Pipeline Overview

sdd_init → sdd_discover → sdd_write_spec → sdd_clarify → sdd_write_design → sdd_write_tasks → sdd_run_analysis

Each phase produces a Markdown artifact in .specs/001-your-feature/:

PhaseToolOutput
Initsdd_initCONSTITUTION.md
Discoversdd_discover7 structured questions (JSON)
Specifysdd_write_specSPECIFICATION.md
Clarifysdd_clarify5 disambiguation questions (JSON)
Designsdd_write_designDESIGN.md
Taskssdd_write_tasksTASKS.md
Analyzesdd_run_analysisANALYSIS.md + gate decision

Tool Reference

Pipeline Tools (8)

ToolDescriptionR/W
sdd_initCreates .specs/ directory, writes CONSTITUTION.md, initializes state machineWrite
sdd_discoverReturns 7 tailored discovery questions based on your project ideaRead
sdd_write_specValidates EARS notation and writes SPECIFICATION.mdWrite
sdd_clarifyIdentifies ambiguous requirements, returns disambiguation questionsRead
sdd_write_designWrites DESIGN.md with Mermaid diagrams, ADRs, and API contractsWrite
sdd_write_tasksWrites TASKS.md with gates, parallel markers, and traceabilityWrite
sdd_run_analysisGenerates traceability matrix, returns APPROVE/CHANGES_NEEDED/BLOCKWrite
sdd_advance_phaseValidates prerequisites and advances the state machineWrite

Utility Tools (6)

ToolDescriptionR/W
sdd_get_statusReturns current phase, completion %, files on disk, next actionRead
sdd_get_templateReturns raw template with {{placeholders}} intactRead
sdd_write_bugfixWrites BUGFIX_SPEC.md (not gated by state machine)Write
sdd_check_syncCompares spec requirements vs code references, reports driftRead
sdd_scan_codebaseScans project structure, detects tech stack for auto-steeringRead
sdd_amendAppends amendment to CONSTITUTION.md changelogWrite

Transcript Automation Tools (3)

ToolDescriptionR/W
sdd_import_transcriptParses VTT/SRT/TXT/MD, extracts topics, decisions, requirementsRead
sdd_auto_pipelineFULL AUTOMATION: transcript → all 6 spec files in one callWrite
sdd_batch_transcriptsScan folder for transcripts, process ALL in one call (Power Automate + OneDrive)Write

EARS Notation

Specky validates all requirements against 6 EARS patterns:

PatternSyntaxExample
UbiquitousThe system shall ...The system shall log all API requests.
Event-drivenWhen X, the system shall ...When a user logs in, the system shall create a session.
State-drivenWhile X, the system shall ...While in maintenance mode, the system shall reject writes.
OptionalWhere X, the system shall ...Where dark mode is enabled, the system shall use dark theme.
UnwantedIf X, then the system shall ...If the database is unreachable, then the system shall retry.
ComplexCombination of aboveWhile online, when a message arrives, the system shall notify.

GitHub Copilot Agents

Specky ships with 4 GitHub Copilot custom agents in .github/agents/:

AgentRoleTools
@spec-engineerFull pipeline orchestratorAll 17 tools
@design-architectArchitecture and design7 design tools
@task-plannerTask decomposition5 task tools
@spec-reviewerQuality audit and analysis7 analysis tools

Claude Code Commands

CommandPurpose
/sdd:specStart specification workflow
/sdd:designCreate architecture design
/sdd:tasksBreak down into implementation tasks
/sdd:analyzeRun quality gate analysis
/sdd:bugfixCreate bugfix specification
/sdd:transcriptConvert meeting transcript to full spec (VTT/SRT/TXT/MD)
/sdd:onedriveBatch process all transcripts from OneDrive folder

Environment Variables

VariableDefaultDescription
SDD_WORKSPACEprocess.cwd()Workspace root for file operations
PORT3200HTTP port (with --http flag)

HTTP Mode

For remote deployment or MCP Inspector testing:

# Direct
node dist/index.js --http

# Docker
docker compose up

The server listens on http://localhost:3200/mcp for Streamable HTTP transport.


Project Structure

.specs/
  001-your-feature/
    CONSTITUTION.md      # Project charter, principles, constraints
    SPECIFICATION.md     # EARS requirements with acceptance criteria
    DESIGN.md            # Architecture, Mermaid diagrams, ADRs
    TASKS.md             # Implementation tasks with gates
    ANALYSIS.md          # Traceability matrix, quality gate
  .sdd-state.json        # Pipeline state (phase, timestamps)

Comparison with Alternatives

FeatureSpeckyManual SpecsKiroTraditional
MCP nativeYesNoYesNo
EARS notationYesManualNoNo
State machineYesNoYesNo
File generationYesManualYesManual
Quality gatesYesManualYesNo
Open sourceMITN/AProprietaryVaries
GitHub Copilot agentsYesNoNoNo
Claude Code commandsYesNoNoNo

How It Works Inside

┌─────────────────────────────────────────────────────────────┐
│                    SPECKY MCP SERVER                        │
│                                                             │
│  Transport: stdio (default) or HTTP (:3200)                 │
│  Protocol:  JSON-RPC 2.0 (MCP standard)                    │
│                                                             │
│  ┌─── 17 Tools ───────────────────────────────────────────┐ │
│  │  Pipeline (8)  │  Utility (6)  │  Transcript (3)       │ │
│  └────────────────┴───────────────┴───────────────────────┘ │
│                          │                                  │
│  ┌─── 6 Services ────────────────────────────────────────┐  │
│  │  FileManager       │ StateMachine   │ TemplateEngine   │  │
│  │  EarsValidator     │ CodebaseScanner│ TranscriptParser  │  │
│  └────────────────────┴────────────────┴─────────────────┘  │
│                          │                                  │
│  ┌─── 7 Templates ──────────────────────────────────────┐   │
│  │  constitution │ specification │ design │ tasks        │   │
│  │  analysis     │ bugfix        │ sync-report           │   │
│  └───────────────┴───────────────┴───────────────────────┘  │
└─────────────────────────────────────────────────────────────┘

Key design principle: Tools are thin (validate input, call service, format output). Services are fat (all business logic). FileManager owns all disk I/O.


Documentation

DocumentPurpose
GETTING-STARTED.mdStep-by-step tutorial from zero to first spec
CONTRIBUTING.mdHow to add tools, templates, and services
PUBLISH.mdHow to publish to GitHub, npm, and Docker

Development

# Clone and setup
git clone https://github.com/paulasilvatech/specky.git
cd specky
npm install

# Build
npm run build

# Development mode (auto-reload)
npm run dev

# Verify MCP handshake
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}' | node dist/index.js 2>/dev/null

# Clean build artifacts
npm run clean

License

MIT License - see LICENSE for details.


Created by Paula Silva (@paulanunes85) | Americas Software GBB

Specky — The fun name, the serious engine.

Reviews

No reviews yet

Sign in to write a review