mdflow MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MDFLOW_PROJECT_ROOT | No | Absolute path to the project mdflow should open by default. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| project_registerA | Register an existing directory as an mdflow project. This creates only .mdflow/project.json and is idempotent when the descriptor already exists. |
| project_mapA | Read a compact project map with architecture coverage, ordered Plans, Chain paths, explicit integration gates, and source-sync status without loading entity bodies. |
| decision_listA | Read the compact project-scoped Decision index. Bodies, rationale, alternatives, and consequences are omitted; use decision_open or entity_open(type=decision) for one record. |
| decision_openB | Open one architecture Decision. Returns its rationale, alternatives, consequences, scope, supersession, and compact History. |
| chain_code_streamB | Extract a contract-first stream along an architectural Chain. The default returns symbols, signatures, source status, line ranges, and contracts; use mode=slice only for an explicit bounded implementation slice. |
| source_syncB | Scan current files for bound symbols without loading source into the response. Reports moved, changed, missing, or ambiguous bindings and affected Blocks/Chains. |
| source_binding_suggestA | Suggest source bindings for a Block from AST symbols and project semantics. Suggestions are read-only; use source_binding_accept to persist an explicitly chosen candidate. |
| source_binding_acceptB | Persist explicitly selected AST source binding candidates for a Block. Every candidate is re-resolved against current source before a SourceRef is created. |
| block_sealA | Seal a verified Block implementation as complete. Requires valid current SourceBindings and a fresh passed direct Checkpoint; an executionId, when supplied, must be a successful receipt cited by that Checkpoint. |
| run_commandB | Run one project-local command and return only a redacted, compressed terminal summary. Raw stdout/stderr never enters the MCP response; use this gateway for tests, builds, and mutation verification. |
| checkpoint_refresh_candidatesB | List stale checkpoints that a recorded execution receipt can refresh. Does not auto-pass checkpoints; it only maps changed bindings onto retest_required items. |
| log_sanitizeA | Sanitize build, test, or terminal command outputs. Strips ANSI noise, collapses routine compiler stdout, and isolates actionable failure stack traces to protect context window from token flooding. |
| block_code_mutateB | Replace one already-bound AST symbol body. Not a general editor: new files, new symbols, tests, and multi-file edits should use the host editor, then source_sync and source_binding_accept. |
| foundation_plan_createA | Generate one Foundation Plan from every non-deprecated unimplemented Block. Because this is an explicit implementation/verification Plan, the operation creates missing atomic Block checkpoints, direct Block PlanChanges, dependency-ordered parallel steps, Chain integration gates, and a final Plan acceptance gate in one transaction; plain architecture-only create_block does not. |
| context_for_taskB | Get a budgeted Markdown context pack for the current development task. Use at task start and expand only selected refs. |
| plan_contextA | Read one Plan as a compact hierarchical development document: overview, ordered ChainScopes, inline Block/Link/Chain changes, checkpoint gates, and exact source refs. This is the primary read before implementing a Plan. |
| timeline_viewA | Read the unified project Timeline: execution phases, ordered plans (P0 > P1 > P2), and current active cursor (nowDoing, nextUp, lastFinished). |
| timeline_syncC | Synchronize development cursor and active focus across conversations. Updates nowDoing, nextUp, and active step in the timeline. |
| step_advanceA | Advance the active step of a Plan to complete, automatically updating progress and pointing nowDoing to the next step. |
| changes_sinceB | Read only graph/checkpoint mutations after a known change sequence. Use this for live synchronization and compact read-back instead of reloading the project. |
| change_set_revertB | Create a new reverse ChangeSet for a safe, fully reversible update-only ChangeSet. Original History is preserved; stale or unsupported changes are rejected instead of partially reverted. |
| entity_openC | Open one Block, Chain, Link, Plan, or Decision with only relevant details and recent History. |
| checkpoint_listB | List checkpoints by status, target, Plan or ChainScope, including standalone checkpoints that are not referenced by any Plan. Use this for a compact verification inbox instead of opening every entity. |
| graph_searchB | Search graph entities and source paths without loading the entire project. |
| graph_mutateB | Atomically create or patch Blocks, project-scoped Decisions, global Links, Chain paths, independent Plans, atomic Checkpoints, Background scopes, Decision scopes, and source refs. Decisions are not Canvas Blocks and never enter Block/Chain/Plan coverage. A plain create_block records architecture only; use create_checkpoint in the same ChangeSet when a requirement, Plan, Chain gate, or explicit verification request makes the check necessary. Link kinds are flows_to, calls, reads, writes, depends_on, implements, validates, constrains, and supersedes. Keep each call small and provide expectedRevision for updates. |
| graph_patchA | Apply a compact mdflow/1 Markdown-like patch. The server expands it into the same atomic ChangeSet used by graph_mutate, preserves omitted fields, and can create an atomic Block checkpoint with checkpoint=auto. |
| graph_flowB | Declare architectural flows and pipelines using natural arrow expressions like 'block:A -> block:B -> block:C' or 'A -[calls]-> B'. Automatically creates or updates links without complex JSON crafting. |
| architecture_link_suggestA | Suggest high-confidence architectural links for an architecture Block based on AST source imports and layered conventions. |
| architecture_connectC | Connect two architecture Blocks with a validated Link in one simple call without crafting manual operations. |
| checkpoint_recordC | Create or update a checkpoint with evidence. Passed checkpoints are the only basis for healthy completion states. |
| graph_validateC | Validate global graph references, Chain paths, Plan targets, Background scopes, contracts, and checkpoint-backed completion. |
| graph_statusC | Inspect project architecture health, live drift detection, isolated blocks, ghost blocks with code, and pending verification gates. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |