mcp-architector MCP server
MCP server for architecture and system design. Store and manage project architecture locally.
0 stars105 downloads/wk
Reviews
Write oneNobody has reviewed mcp-architector yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
mcp-architector tools (29, 9 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
delete-entrieswrite actionBulk delete entries matching kind/moduleName/tags filter. Requires confirm=true. Use before full re-import or to clear a module slice. Prefer replace-entries with deleteOrphans for idempotent sync.
delete-entrywrite actionRemoves one entry and updates the index. Use when a fact is obsolete. Do not use to delete modules—use delete-module. Cannot delete slice definitions—use delete-slice.
delete-modulewrite actionDeletes one module from architecture and its module detail file. Does not delete entries—remove those with delete-entry if needed. Does not delete custom slices.
delete-slicewrite actionDeletes a custom slice definition only. Built-in slices (api, domain, …) cannot be deleted. Does not delete entries—use delete-entry.
fix-datawrite actionRun when catalog JSON is corrupt (list-modules, get-module-details, or validate fail with extra data after JSON). Rewrites the first valid JSON object in architecture, modules, entries, and slices; removes leftover .tmp files; rebuilds the entry index. Does not delete facts. Optional dryRun previews without writing.
get-entryReturns one full entry by id. Use after list-entries or search-entries when you need payload and refs. Do not use for a full API list—use get-slice sliceId=api. Do not use for module structure—use get-module-details.
get-import-statsReturns entry counts grouped by kind, module, and tag. Use after replace-entries/import to verify catalog size.
get-module-detailsReturns one module's full detail (files, dependencies, examples). Use when you know the module name from get-project-architecture or list-modules. If module has files but get-slice is empty, add entries with refs.moduleName=this module. For cross-cutting API/domain lists use get-slice. moduleName must match architecture exactly.
get-project-architectureReturns vertical structure: project description, module list, dataFlow. Use for refactoring boundaries between components. For all HTTP endpoints or domain terms use get-slice—not this tool. For one module's files and examples use get-module-details. projectId is required—call list-projects first.
get-sliceReturns a horizontal project view: filtered entries transformed for agents. Empty slice = no entries with matching kind. Call list-slices first to pick sliceId. format=compact default; table for api/ui slice. Use offset/limit for pagination. Filter further by moduleName or tags.
import-entries… Alias for replace-entries (mode=replace). Pass filter as scope; send up to … entries per call.
list-entriesReturns the entry catalog (id, kind, title, tags, moduleName)—no payload. Supports kind/moduleName/tags filters and pagination (limit max 200). Unlinked entries lack moduleName; run validate after edits. For typed horizontal views use get-slice.
list-modulesLists module summaries from architecture (name, description)—vertical structure only. For horizontal facts (endpoints, tables, terms) use list-slices then get-slice. After edits run validate. Use module names in set-entry refs.moduleName.
list-projectsCall first. Lists projects in ~/.mcp-architector with projectId, description, moduleCount, updatedAt, isCurrent, forbidden. Match this workspace by folder name (query). Pass that projectId to every other tool—never omit, never use default-project. isCurrent is only a hint from MCP_PROJECT_ID. If none matches, create with set-project-architecture using a stable id from the workspace path.
list-slicesLists built-in and custom slice views (filters over entries—not separate stored data). Empty slice = no entries with matching kind, not a missing slice definition. Use before get-slice to pick sliceId (api, domain, persistence, …).
rebuild-data-flowRebuilds dataFlow for all modules from module file dependencies or existing dependsOn edges. Recomputes providesTo and optionally syncs module files. Use instead of editing architecture.json directly.
rebuild-entry-indexRebuilds entries/index.json from entry files on disk. Use when list-entries or get-slice miss entries that exist as files (index drift). Does not modify entry bodies.
refactor-architecturePreview or apply in-repo refactor sync to architector data (no workspace access). Default dryRun=true. Workflow: (1) scan with file/text to list hits, (2) build 1-3 mutation ops, (3) dryRun preview, (4) apply with dryRun=false and confirm=true. Mutations: move-file, replace-path-prefix, rename-text, patch-entry, merge-files, remove-file-ref. Orphan entries with empty refs.files and no entryIds are
replace-entries… Idempotent sync for up to … entries in scope; optionally delete orphans not in this batch. Match by upsertBy (default kind+title). For large catalogs use deleteOrphans=false on intermediate batches, true only on the last batch.
search-entriesCompact navigation search over entries by title, summary, kind, and tags. Returns snippet, matchedIn, slices, and moduleName per hit—use get-entry for full payload. Prefer get-slice when you know the category (api, domain). Filters (moduleName, kind, tags) narrow agent context. Default limit 10.
set-entries… … Set refs.moduleName per entry, or pass top-level moduleName as default. Prefer set-entries in 50-entry chunks over one huge replace-entries payload.
set-entry… Creates or updates one canonical project fact (entry). Use when you discovered a concrete fact while working. Do not use for module structure—use set-module-details. Do not copy module.description into summary; link via refs.moduleName only. Upsert: pass id to update, or omit id to match by kind+title or create new. Example: kind=http-endpoint, title='POST /orders', summary='Creates order', refs
set-module-data-flowwrite actionPatches dataFlow for one module (dependsOn is canonical; providesTo is recomputed). Syncs module file dependencies. Prefer over set-project-architecture for single-module graph edits.
set-module-detailswrite actionCreates or updates one vertical module (files, dependencies, dataFlow sync). IMPORTANT: Slices (api, domain, persistence) are built from entries, not from module text. When adding or updating a module, also add entries this module owns: pass facts[] (http-endpoint, entity, glossary, …) in this call (max 50 per call), or call set-entry / set-entries in 50-entry batches with refs.moduleName=<module
set-project-architecturewrite actionCreates or updates vertical module structure (components and dataFlow)—not horizontal facts. By default merges modules and dataFlow by name; omit dataFlow to keep existing flow. Use replaceModules or replaceDataFlow for full replace. For one module use set-module-details or set-module-data-flow. For bulk flow rebuild use rebuild-data-flow. Each new module still needs entries—use set-module-details
set-sliceSaves a custom slice definition (filter only—no items). Items always live in entries. Use when built-in slices (api, domain, …) are not enough, e.g. filter kinds godot-scene + tag gameplay. Do not store duplicate entry text here. get-slice reads entries through this filter.
validatewrite actionRun after set-project-architecture, set-module-details, set-entry, or set-entries. Returns a compact report (summary, stats, issues by kind)—no need to load the full project in the agent. Checks only known rules: dataFlow consistency, module↔entry links, module detail files, entry index drift, empty api/domain/persistence slices, entry slice coverage, optional module-too-few-entries when moduleEnt
validate-architectureAlias for validate with the same checks. Prefer validate after edits. Legacy name kept for compatibility.
validate-importDry-run validation for a proposed import batch (max … entries). … Checks duplicate upsert keys and unknown moduleName refs without writing.
Public scan report
scanner v0.1.9 · 2026-09-20 · same rubric, same numbers if you re-run it
- Code scan78 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 19 days ago15/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Install directly
Runs npx -y mcp-architector on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add mcp-architector -- npx -y mcp-architector
mcp-architector: common questions
- Is mcp-architector MCP server safe?
- Yes, by our scan: it is graded A (92/100). Read the mcp-architector safety report
- How do I install mcp-architector?
- It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
- Does mcp-architector need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is mcp-architector maintained?
- The last commit was 19 days ago (2026-09-01). The latest release is v1.11.0.
- What can I use instead of mcp-architector?
- Servers from other publishers that do the same job: Store Builder MCP server, Apify MCP server and Heimdall MCP server. Compare all mcp-architector alternatives.
Alternatives to mcp-architector
Same job from other publishers: the closest match first, then the best rated.
- Store BuilderDesign, fill with real store data, render and publish Store Builder pages from an AI agent.not reviewedGrowingB
- ApifyExtract data from any website with thousands of scrapers, crawlers, and automations on Apify Store ⚡not reviewedEstablishedA
- HeimdallEvery App Store Connect + StoreKit 2 endpoint. 890 tools in 13 profiles, narrow to 27.not reviewedEstablishedB
BuywhereAgent-native product catalog: 300M+ products, 150,000+ stores, deliver_to ranking.not reviewedGrowingA- WorkflowsStore, query, and create YAML workflow playbooks for LLM agents.not reviewedGrowingA