@aidemd-mcp/server
MCP serverAI & modelsGive your AI the AIDE methodology, a structured way to run development work through .aide spec files. This community-made add-on lets your AI set up AIDE in a project, then find, read, create, and check those spec files as it works. It reveals information in stages, so your AI pulls in context only when it needs it.
Unavailable. This server has no hosted endpoint yet, so Ahel can't serve it.
Ahel cannot run this one yet; its page stays here for reference.
What your AI can do with it
- Scan a project and map out where its .aide spec files live
- Read spec files with their type identified as intent, research, plan, or todo
- Create new spec files that automatically follow the AIDE naming rules
- Check spec files for problems like orphaned or missing specs
- Compare a project's AIDE files against the canonical versions
- Look up a function's signature and documentation without opening the whole file
Getting started
- Read the source or reference documentation for what it needs to run.
- Check this page for availability before you add it to a pipeline on Ahel.
From the project's README
As published by aidemd-mcp/server in README.md.
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.
Features
- Project-wide spec discovery with a progressive disclosure tree that surfaces intent, research, and QA specs at every level of your codebase
- One-command project bootstrap via
aide_init— wires methodology docs, pipeline commands, and this MCP server into your project in a single guided flow - Automatic naming convention enforcement —
aide_scaffoldhandles the.aide/intent.aiderename rules so you never create conflicting specs - Guarded pipeline cleanup via
aide_cleanup— removes a closed module's plan, todo and brief only when every checkbox is checked, and refuses with the exact open items otherwise - Health-check validation via
aide_validate— detects orphaned specs, missing descriptions, broken links, and naming conflicts before they cause drift - Code introspection via
aide_inspect— returns JSDoc, signatures, and kind for named symbols without opening files, giving agents Tier 2 progressive disclosure for code - Upgrade drift detection via
aide_upgrade— compares your project's AIDE methodology artifacts against canonical versions and writes updates per-category - Runtime brain entry-point via
aide_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 is
Installation
Quick Start (Claude Code)
Pick a launch mode — init asks, recommends global, and never switches an existing entry.
Global — pick it on a personal machine: reliable startup, stays on the installed version.
npm i -g @aidemd-mcp/server
aidemd-mcp init
Local — pick it for shared repos and cloud/CI: pinned to one exact version that /aide:upgrade moves forward.
npx -y @aidemd-mcp/server@0.11.1 init
--mode global|local skips the question (non-interactive runs default to local).
This command:
- Merges the AIDE MCP server entry into
.mcp.json - Writes the bundled brain config template to
.aide/config/brain.aide(the brain location stays unset until/aide:brain configfills it and writes the brain MCP entry) - Writes every pipeline slash command to
.claude/commands/aide/ - Installs 10 canonical pipeline agents to
.claude/agents/aide/and thekanban-maintainerboard agent to.claude/agents/kanban/ - Installs skills (
study-playbook,brain,aide,aide-handoff,kanban,aide-brain-author) to.claude/skills/ - Installs the methodology docs hub to
.aide/docs/ - Writes the
aide-treelauncher to.aide/bin/aide-tree.mjs - Adds an AIDE badge to
README.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 <integration> 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.
Syncing brain.aide to .mcp.json
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:
Global:
aidemd-mcp sync
Local (use the version your aide entry pins):
npx -y @aidemd-mcp/server@0.11.1 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.
Manual Configuration
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.
Claude Code
Global — recommended on your own machine. 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"
}
}
}
Local, pinned — for shared repos and cloud/CI:
claude mcp add aide -- npx -y @aidemd-mcp/server@0.11.1
Or add to your project's .mcp.json:
{
"mcpServers": {
"aide": {
"command": "npx",
"args": ["-y", "@aidemd-mcp/server@0.11.1"]
}
}
}
[!NOTE] The Quick Start command above handles this automatically for Claude Code users.
Claude Desktop
Config file locations:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Global — recommended on your own machine (after npm i -g @aidemd-mcp/server):
{
"mcpServers": {
"aide": {
"command": "aidemd-mcp"
}
}
}
Local, pinned — for shared repos and cloud/CI:
{
"mcpServers": {
"aide": {
"command": "npx",
"args": ["-y", "@aidemd-mcp/server@0.11.1"]
}
}
}
[!NOTE] Claude Desktop does not inherit the terminal PATH. If you use nvm or Homebrew to manage Node,
npxmay not be found. Runwhich npxin your terminal to get the absolute path and replace"npx"with it in the config above.
Claude Desktop requires a full quit-and-reopen after any config change.
Cursor
Add to ~/.cursor/mcp.json:
Global — recommended on your own machine (after npm i -g @aidemd-mcp/server):
{
"mcpServers": {
"aide": {
"command": "aidemd-mcp"
}
}
}
Local, pinned — for shared repos and cloud/CI:
{
"mcpServers": {
"aide": {
"command": "npx",
"args": ["-y", "@aidemd-mcp/server@0.11.1"]
}
}
}
VS Code / Copilot
Add to .vscode/mcp.json:
Global — recommended on your own machine (after npm i -g @aidemd-mcp/server):
{
"servers": {
"aide": {
"command": "aidemd-mcp"
}
}
}
Local, pinned — for shared repos and cloud/CI:
{
"servers": {
"aide": {
"command": "npx",
"args": ["-y", "@aidemd-mcp/server@0.11.1"]
}
}
}
[!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.
Windsurf
Add to ~/.windsurf/mcp.json:
Global — recommended on your own machine (after npm i -g @aidemd-mcp/server):
{
"mcpServers": {
"aide": {
"command": "aidemd-mcp"
}
}
}
Local, pinned — for shared repos and cloud/CI:
{
"mcpServers": {
"aide": {
"command": "npx",
"args": ["-y", "@aidemd-mcp/server@0.11.1"]
}
}
}
Tools
aide_discover
Scan the project for .aide spec files and return a progressive disclosure tree map showing each spec's type, location, and summary.
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).
aide_read
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.aidefile to read.
aide_scaffold
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.aidefile(s) will be created.type(string, required): Type of.aidefile to create. One of:intent,research,both,todo,plan.
aide_cleanup
Remove a closed module's pipeline ephemerals — brief.aide, todo.aide and plan.aide — and nothing else. The preconditions are enforced in code. Where the module has a plan.aide, every plan checkbox must be checked and a todo.aide, if present, must be fully checked. Where it has no plan.aide, a fully checked todo.aide is removed on its own, while a brief.aide (removed only together with its plan), a todo.aide with no checkboxes, or a folder with no ephemerals is refused. 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.allowEmptyPlan(boolean, optional): Let aplan.aidewith no checkboxes pass. Overrides nothing else, and has no effect where there is noplan.aide.
aide_inspect
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).
aide_validate
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, and missing frontmatter descriptions.
Inputs:
path(string, optional): Subdirectory to validate. Defaults to the entire project when omitted.
aide_info
Boot-time precondition reporter. Returns two independent fields the orchestrator branches on separately: outdated (an array of stale AIDE artifact keys, comparing the project's versions.json against the shipped manifest), and brain (a { status, name?, hints } object reporting whether the project's brain.aide config is wired into .mcp.json). brain.status is a closed five-status union: ok | no-brain-aide | brain-aide-invalid | no-mcp-entry | mcp-drift, derived by comparing .aide/config/brain.aide against .mcp.json — no disk path validation. brain-aide-invalid means the file is present but unusable and carries a fault: either missing-sections (naming the required sections that are absent) or malformed (with a reason, which also covers a file that cannot be read). name is the user-declared label from brain.aide; it is absent on no-brain-aide and brain-aide-invalid. /aide:brain config is the recovery for both no-brain-aide and brain-aide-invalid. hints is an array of candidate vault locations the orchestrator can surface during recovery.
Inputs:
(none)
aide_brain
On-demand brain entry-point tool. Call this when you need to reach the brain mid-task — do NOT call it on every /aide boot. Boot-time brain precondition state is already reported by aide_info.brain.status; firing aide_brain at boot duplicates that work unnecessarily.
Returns { status, instructions } — exactly two fields. No backend, no connector, no name. status mirrors aide_info.brain.status (ok | no-brain-aide | brain-aide-invalid | no-mcp-entry | mcp-drift). instructions is always non-empty: on ok it is the verbatim body of the selected section (orientation or config, per the optional kind input) from the user's .aide/config/brain.aide (no server substitution); on the failure states it carries remediation prose. no-brain-aide and brain-aide-invalid both route to /aide:brain config; brain-aide-invalid is composed from the detector's fault — either the missing required sections, named, or the malformed reason (including a file that is present but unreadable, which is never reported as absent). no-mcp-entry and mcp-drift tell the user to run sync with the launcher their aide entry uses (aidemd-mcp sync or npx -y @aidemd-mcp/server@<version> sync).
Inputs:
(none)
aide_init
Bootstrap the AIDE development environment into a project using a guided one-at-a-time wizard. On the first call (no category), returns a summary of every step with status and detected framework. On subsequent calls (with category), writes all pending files for that category to disk and returns a manifest.
Inputs:
framework(string, optional): Force a specific framework instead of auto-detecting. One of:claude,cursor,windsurf,copilot.path(string, optional): Custom project root path. Defaults to the server working directory.category(string, optional): Write allwould-createfiles for this category and return a manifest. One of:framework,methodology,commands,agents,skills,mcp,brain,ide,readme. Omit on the first call to get a metadata-only summary.aideMode(string, optional): Launch mode for the aide MCP entry,global(recommended) orlocal. Pass withcategory=mcp.brainMode(string, optional): Launch mode for the brain template's launcher,globalorlocal. Pass withcategory=brain.
aide_upgrade
Compare the AIDE methodology artifacts in this project against canonical versions and return a structured diff grouped by category. On the first call (no category), returns a lightweight summary of every category with drift status. On subsequent calls (with category), writes all diffed or missing files for that category to disk and returns a manifest.
Inputs:
framework(string, optional): Force a specific framework instead of auto-detecting. One of:claude,cursor,windsurf,copilot.path(string, optional): Custom project root path. Defaults to the server working directory.category(string, optional): Write all drifted or missing files for this category and return a manifest. One of:pointer-stub,methodology-docs,version-metadata,commands,agents,skills,mcp,ide,readme. Omit on the first call to get a metadata-only summary.
Getting Started
After adding the server to your MCP client, ask your agent to run aide_init to bootstrap the AIDE methodology into your project. This installs the methodology docs, scaffolds pipeline commands, and wires everything up.
Then try: "Scaffold an intent spec for my authentication module" — the agent will use aide_discover to map your project and aide_scaffold to create the spec in the right place with the right naming conventions.
Development
npm install
npm run build
npm test
License
Tools it gives your AI (9)
| Tool | What it does |
|---|---|
| aide_discover | Scan for .aide spec files in this project. Returns a tree map of where specs live, following progressive disclosure. Without a path: returns a lightweight project-wide map — file locations and... |
| aide_read | Read an .aide spec file with full context. Returns the file content, its classified type (intent/research/plan/todo), related specs in the same directory, and links found in the content (relative... |
| aide_scaffold | Create new .aide spec files with automatic naming convention enforcement. Handles the naming rules: intent specs are .aide by default, but become intent.aide when research.aide exists in the same... |
| aide_validate | Health check for .aide spec files in the project. Detects orphaned specs (in folders with no orchestrator), missing specs (orchestrators with 3+ helper imports but no .aide), naming conflicts (.aide... |
| aide_upgrade | Compare the AIDE methodology artifacts in this project against the canonical versions and return structured JSON results grouped by category. |
| aide_info | Boot-time reporter called by the orchestrator at startup. Returns two independent top-level fields that the orchestrator must branch on separately: **`outdated` (array of stale artifact keys) —... |
| aide_brain | On-demand brain entry-point tool. Call this when you need to reach the brain mid-task — do NOT call it on every /aide boot. |
| aide_init | Bootstrap the AIDE development environment into a project. Returns structured JSON for agent consumption — not prose. The tool uses a two-call pattern for progressive disclosure: **First call (no... |
| aide_inspect | Return JSDoc, signature, and kind for a named symbol without opening the full file — Tier 2 progressive disclosure for code. |
Signals
- GitHub stars
- 3
- Last commit
- May 2026
- Weekly downloads
- 131
- Tools captured
- 9
Advanced
- Delivery
- server MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
- Item type
- mcp-server
- Key
io-github-aidemd-mcp-server- Source
- github.com/aidemd-mcp/server
More in AI & models
MCP server · upstash
More in AI & modelsAdButler
MCP server · adbutler
More in AI & modelsatom-mcp-server
MCP server · a7om-ai
More in AI & modelsottasia
MCP server · aiweather-anurag
More in AI & modelsCurrents
MCP server · currents-dev
More in AI & modelsunphurl
MCP server · 123ergo
More in AI & models