Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
MCP server that teaches any AI agent the AIDE methodology via progressive disclosure
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"server": {
"command": "npx",
"args": [
"-y",
"@aidemd-mcp/server"
]
}
}
}Run this in your terminal
claude mcp add server -- npx -y @aidemd-mcp/serverPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"server": {
"command": "npx",
"args": [
"-y",
"@aidemd-mcp/server"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"server": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@aidemd-mcp/server"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account aidemd-mcp, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.15.0) reached the registry 9 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, Toggl 2.0
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Toggl 2.0 MCP server for tasks, projects, time entries, and workspace operations.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
MCP server that brings intent-driven development to any AI-powered IDE. Manage .aide spec files that live next to your code — the domain context that architects plan from, implementors build from, and QA validates against.
Learn more at aidemd.dev.
aide_init — wires methodology docs, pipeline commands, and this MCP server into your project in a single guided flowaide_scaffold handles the .aide / intent.aide rename rules so you never create conflicting specsaide_cleanup — removes a closed module's plan, todo and brief only when every checkbox is checked, and refuses with the exact open items otherwiseaide_validate — detects orphaned specs, missing descriptions, broken links, and naming conflicts before they cause driftaide_inspect — returns JSDoc, signatures, and kind for named symbols without opening files, giving agents Tier 2 progressive disclosure for codeaide_upgrade — compares your project's AIDE methodology artifacts against canonical versions and writes updates per-categoryaide_brain — on-demand tool that returns ready-to-execute prose telling the agent which MCP tools to call and how to reach whatever brain backend is wired, without the agent knowing which backend it isRun the installer from your project's root:
npx -y @aidemd-mcp/server@0.15.0 init
This command:
npm i -g @aidemd-mcp/server); if the install fails, it says so and writes nothing.mcp.json, launched by its global command aidemd-mcp.aide/config/brain.aide (the brain location stays unset until /aide:brain config fills it and writes the brain MCP entry).claude/commands/aide/.claude/agents/aide/ (the pipeline agents plus aide-upgrader, which /aide:upgrade runs to migrate the project's own files) and the kanban-maintainer board agent to .claude/agents/kanban/study-playbook, brain, aide, aide-handoff, kanban, aide-brain-author) to .claude/skills/.aide/docs/aide-tree launcher to .aide/bin/aide-tree.mjsREADME.md (appends if not present)All operations are additive — files that already exist are never overwritten. Safe to re-run at any time.
init asks for no brain location, path or token, and rejects backend flags such as --vault-path. --brain picks the bundled template (today only obsidian, the default).
After running, open Claude Code and run /aide. On the first run it routes to /aide:brain config, which fills the brain location in .aide/config/brain.aide, writes the brain MCP entry through sync, and seeds the brain. Anything else init could not finish is named in its closing follow-up list.
Run this after editing .aide/config/brain.aide — for example, when you update the brain path argument in mcpServerConfig.args or rename the brain in the name field:
aidemd-mcp sync
sync reads .aide/config/brain.aide, copies mcpServerConfig verbatim into .mcp.json under the fixed brain key, and writes the name field as the server label. Every other key in mcpServers (including your aide entry and any personal MCP integrations) is left byte-identical. If a legacy obsidian key is present it is removed in the same write. The command is idempotent — running it twice produces the same .mcp.json bytes, and the second invocation prints already in sync without touching the file. Exit code is 0 on success (including the no-change case), 1 on a missing or malformed brain.aide or invalid .mcp.json, and 2 on --help.
Example output after updating the brain path in mcpServerConfig.args:
Read .aide/config/brain.aide
Wrote brain MCP entry into .mcp.json command: mcpvault args: [D:/notes/new-brain] Done.
If you use a client other than Claude Code, or prefer to configure manually, add the server entry to your client's MCP config file.
Install once, then register:
npm i -g @aidemd-mcp/server
claude mcp add aide -- aidemd-mcp
Or add to your project's .mcp.json:
{
"mcpServers": { "aide": { "command": "aidemd-mcp" } } }
[!NOTE]
The Quick Start command above handles this automatically for Claude Code users.
Config file locations:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonAfter npm i -g @aidemd-mcp/server:
{
"mcpServers": { "aide": { "command": "aidemd-mcp" } } }
[!NOTE]
Claude Desktop does not inherit the terminal PATH. If you use nvm or Homebrew to manage Node,
aidemd-mcpmay not be found. Runwhich aidemd-mcpin your terminal to get the absolute path and use it as the command in the config above.
Claude Desktop requires a full quit-and-reopen after any config change.
Add to ~/.cursor/mcp.json:
After npm i -g @aidemd-mcp/server:
{
"mcpServers": { "aide": { "command": "aidemd-mcp" } } }
Add to .vscode/mcp.json:
After npm i -g @aidemd-mcp/server:
{
"servers": { "aide": { "command": "aidemd-mcp" } } }
[!NOTE]
VS Code / Copilot uses
"servers"as the root key, not"mcpServers". Using the wrong root key causes the server to silently fail to load.
Add to ~/.windsurf/mcp.json:
After npm i -g @aidemd-mcp/server:
{
"mcpServers": { "aide": { "command": "aidemd-mcp" } } }
Scan the project for .aide spec files and return a progressive disclosure tree map showing each spec's type, location, and summary. A plan or todo list carries its status inline, e.g. [plan: approved], and a reviewed spec its alignment.
Inputs:
path (string, optional): Subdirectory to drill into. When provided, the response opens with the ancestor chain — the cascading intent lineage from root to target, each ancestor showing its description and alignment status — followed by the detailed subtree with summaries and warnings. When omitted, returns a shallow project-wide map (locations and types only).Read an .aide spec file with full context, returning the file content, its classified type (intent/research/plan/todo), related specs in the same directory, and links found in the content.
Inputs:
path (string, required): Path to the .aide file to read.Create new .aide spec files with automatic naming convention enforcement. Handles the rename rules: intent specs are .aide by default but become intent.aide when research.aide exists in the same folder; creating a research.aide auto-renames any existing .aide to intent.aide.
Inputs:
directory (string, required): Directory where the .aide file(s) will be created.type (string, required): Type of file to create. One of: intent, research, both, todo, plan, session. session always writes the project's session record at .aide/session.aide, whatever directory says.It never overwrites: a file that already exists is skipped and reported. New intent specs start alignment: unreviewed; new plans and todo lists start status: proposed.
Remove a closed module's pipeline ephemerals — brief.aide, todo.aide and plan.aide — and nothing else. The preconditions are enforced in code. Each file it would remove must record a closed status: completed (and every checkbox really checked) or abandoned; a file from before statuses existed passes when every checkbox is checked. Anything still proposed or approved is refused. A brief.aide is removed only together with its plan, and an abandoned plan takes its brief with it. Where there is no plan.aide, a closed todo.aide is removed on its own. A refusal removes nothing and names each unchecked item with its file and line. It never touches intent specs, code or .aide/session.aide, and it refuses paths outside the project. Cross-platform with no shell, so cleanup needs no rm permission — allow the tool by name.
Inputs:
path (string, required): Module folder that holds the ephemerals, relative to the project root.dryRun (boolean, optional): Report what would be removed, or what blocks removal, without removing anything. For inspection only — the real call is already safe.Read or change one governed frontmatter value of an AIDE file, leaving every other byte as it was. Intent specs carry alignment (unreviewed, aligned, misaligned). Plans, briefs and todo lists carry status, moving proposed → approved → completed, or to abandoned; completed and abandoned are final, completed needs every item checked, and a revised approved file drops back to proposed. The tool enforces the allowed moves and refuses the session record, research specs, non-AIDE files and paths outside the project. It never decides when a value changes — the aligner, QA, the user's approval or a discard do.
Inputs:
path (string, required): The AIDE file, relative to the project root.field (string, optional): alignment or status. Omit with value to read.value (string, optional): The new value.Return the JSDoc block, signature, and kind for a named function, method, class, interface, or type alias in the workspace — Tier 2 progressive disclosure for code. Agents can understand a symbol's contract without opening the file.
Inputs:
name (string, required): Symbol name to look up.file (string, optional): Restrict search to a single file (relative to project root).Run a health check on .aide spec files in the project. Detects orphaned specs, missing specs, naming conflicts (.aide and intent.aide in the same folder), broken links, orphaned research files, missing frontmatter descriptions, unparsable frontmatter, and intent specs whose alignment is missing or not a known value.
Inputs:
path (string, optional): Subdirectory to validate. Defaults to the entire proOnly the beginning is shown; read the rest in the repo