Skip to main content
Glama

Blueprint MCP

Blueprint gives AI coding agents a durable architecture memory for your repository.

It turns a codebase into a structured project map: responsibilities, relationships, entry points, risks, and the context an agent should read before changing code.

Instead of loading an entire repository into context, an agent can focus on the parts of the system that matter for the task. Developers also get a visual frontend for exploring the generated architecture map.

Use Blueprint when you want AI coding agents to work with less guesswork, tighter context, and a clearer understanding of how your project is actually put together.

Why Blueprint?

  • Gives agents a task-focused way to understand large codebases before editing.

  • Groups the system by responsibility, data flow, and ownership boundaries.

  • Produces detailed group documentation that agents can read selectively.

  • Reduces wasted context by routing each task to the most relevant project areas.

  • Keeps the architecture memory refreshable as the repository changes.

  • Provides a visual viewer so developers can inspect the same project map.

Blueprint does not replace source code as the source of truth. It gives both agents and developers a better starting point before they inspect the source.

Related MCP server: OpenLore

Install

npm install -g blueprint-mcp

Requires Node.js 20 or newer.

Global installation makes the blueprint command available in your shell:

blueprint open --watch

If you install Blueprint only inside a project with npm install blueprint-mcp, run it through an npm script or node_modules/.bin; local npm binaries are not added to your interactive shell path automatically.

MCP Configuration

Add Blueprint to your MCP client:

{
  "mcpServers": {
    "blueprint": {
      "command": "blueprint-mcp"
    }
  }
}

Restart your MCP client after changing the configuration.

Quick Start

Open your project in the coding agent you already use, such as Codex or Claude Code, and ask it to create a Blueprint:

Create a blueprint for this project.

The agent will scan the repository, group the codebase by responsibility, and write the architecture memory for future tasks.

Blueprint writes documentation in English by default. To use another language, ask for it naturally:

Create a Turkish blueprint for this project.

What It Creates

Blueprint writes local project memory under .blueprint/:

File

Purpose

brief.md

A compact routing index agents read first.

groups/*.md

Human-readable architecture notes for each project area.

blueprint-output.json

Structured project graph for tools and viewers.

refresh-scan.json

Filesystem snapshot used for deterministic refreshes.

Teams can decide whether to commit .blueprint/ or keep it local.

Tools

Tool

Purpose

blueprint.scan

Builds file inventory and code analysis artifacts.

blueprint.group

Prepares or applies semantic file grouping.

blueprint.compose

Writes the final Blueprint output and Markdown notes.

blueprint.refresh

Refreshes Blueprint state from the current filesystem snapshot.

blueprint.group.update

Assigns unassigned files or manages empty groups after refresh.

Viewer

Blueprint includes a static viewer for exploring generated memory. Open it in watch mode while working:

blueprint open --watch

Watch mode keeps the static viewer regenerated when Blueprint memory changes. If you only want to open the viewer once, remove --watch from the command.

Language Support

Blueprint uses Tree-sitter analysis for:

  • TypeScript / JavaScript

  • Python

  • Go

  • Rust

  • Java

Other files are still included in the inventory, but deeper symbol and import analysis depends on language support.

License

MIT

Available Tools

6 tools
blueprint.composeCompose Blueprint OutputA

Compose the final frontend-ready Blueprint JSON from a grouping artifact. If the response contains assistantNextSteps with required=true and executionPolicy=must_execute_before_final_response, the assistant must execute those steps before giving the user a final answer. For hydrate-group-docs, spawn one sub-agent per target group doc when sub-agents are available; otherwise edit the target docs yourself. Do not ask the user unless the required step is impossible.

Inputs: groupingArtifactId (required), language.

blueprint.groupGroup Blueprint FilesA

Prepare mode returns a compact packet for semantic grouping; it is not the final grouping. The LLM should treat folder names as hints, not truth, and group by responsibility, runtime role, data flow, and dependencies. Prefer glob patterns like folder/** instead of enumerating files, and use exact file paths only for entry points, exceptions, or cross-cutting files. Apply mode consumes a small LLM-authored GroupingPlan and deterministically assigns files.

Inputs: mode (required), analysisArtifactId (required), plan.

blueprint.group.updateUpdate Blueprint GroupsA

Apply LLM group decisions after a Blueprint refresh. Use this tool only for assigning unassigned files to existing groups, creating a new group for unassigned files, or deleting groups that are already empty. Do not use this tool for updated files already assigned to a real group, deleted file cleanup, editing markdown memory, or rewriting blueprint-output.json manually. Validation rules: assignments[].fileId must refer to a file whose groupId is "unassigned"; assignments[].groupId must be an existing group id; newGroups[].id must not already exist; newGroups[].fileIds must all be unassigned file ids; deleteGroups[] may only contain groups with no fileIds. The tool writes .blueprint/blueprint-output.json and creates group markdown templates for new groups.

Inputs: projectRoot (required), decision (required).

blueprint.refreshRefresh Blueprint DeterministicallyA

Deterministically refresh .blueprint/blueprint-output.json from the current filesystem snapshot. The tool compares .blueprint/refresh-scan.json with a fresh full scan, writes refreshed Blueprint JSON and scan state, and returns the maintenance prompt the assistant should follow. It does not send raw git diffs to the assistant. Use blueprint.group.update afterwards only for unassigned files or empty group decisions, then update affected group Markdown docs.

Inputs: projectRoot (required), dryRun, changedPaths, ignore, +2 more.

blueprint.scanScan Blueprint ProjectC

Public tool that builds a file inventory, analyzes parseable code, and returns the analysis artifact for grouping.

Inputs: rootPath (required), ignore, includeDefaultIgnored, maxFiles.

blueprint.task_contextBuild Blueprint Task ContextB

Return a compact deterministic context slice for a natural-language task from a Blueprint output artifact.

Inputs: blueprintArtifactId (required), task (required), maxPrimaryFiles, maxSecondaryFiles, +2 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.8/5.0

    Scored across 6 tools

    Disambiguation5/5

    Each tool targets a distinct operation: compose finalizes output, group handles semantic grouping, group.update applies post-refresh decisions, refresh updates from filesystem, scan builds inventory, and task_context retrieves context. No two tools overlap in purpose.

    Naming Consistency5/5

    All tools follow a consistent 'blueprint.<verb>' or 'blueprint.<verb>.<subverb>' pattern (e.g., blueprint.compose, blueprint.group.update). The naming is predictable and hierarchical.

    Tool Count5/5

    With 6 tools covering scanning, grouping, refreshing, composing, and context retrieval, the count is well-scoped for the domain of Blueprint artifact management. Each tool earns its place.

    Completeness4/5

    The set covers the core lifecycle: scan, group, update groups, refresh, compose final output, and retrieve task context. A minor gap is the lack of a tool to explicitly delete or list groups, but the workflow seems complete for typical use.

    Maintenance

    ActivityNo data
    ResponsivenessSyncing

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      A
      maintenance
      Provides persistent architectural memory and structural cognition for AI coding agents, enabling efficient orientation, graph-aware context, and drift detection across codebase evolution.
      2,916 npm
      361
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Provides a dependency graph of any local repository with tools for change impact, transitive dependents, health audits, and more, enabling AI coding agents to see structure and refactor safely.
      4,912 npm
      4
      MIT