About mcp-architector
mcp-architector is an MCP server in the Commerce category: mCP server for architecture and system design. Store and manage project architecture locally.
Install
claude mcp add architector -- npx -y mcp-architectornpx -y mcp-architectorThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Tools (10)
Bulk facts for a domain`set-entries` with `moduleName`
Parameters not published.
Catalog JSON corrupt (extra data after JSON)`fix-data`
Parameters not published.
Create project from scratch`set-project-architecture` with `replaceModules: true`
Parameters not published.
Diagnose graph + empty slices`validate` (or `validate-architecture`)
Parameters not published.
Index out of sync`rebuild-entry-index`
Parameters not published.
Onboard a fresh git clone (phased)Copy [`.cursor/rules/architector-onboarding.mdc`](.cursor/rules/architector-onboarding.mdc) → ask agent to onboard phase by phase
Parameters not published.
Patch dataFlow for one module`set-module-data-flow`
Parameters not published.
Rebuild all module edges`rebuild-data-flow`
Parameters not published.
Sync paths/names after refactor`refactor-architecture` (dryRun, then confirm)
Parameters not published.
Update one module + its APIs/facts`set-module-details` with `facts[]`
Parameters not published.
Ask AI
Ask AI about mcp-architector
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
MCP Architector
Model Context Protocol (MCP) server for architecture and system design
Local-first MCP server that stores and manages project architecture information. All data is stored locally in ~/.mcp-architector for maximum privacy and confidentiality.
📦 Install: npm install -g mcp-architector or use via npx
🌐 npm: https://www.npmjs.com/package/mcp-architector
🔗 GitHub: https://github.com/theSharque/mcp-architect
How to connect to Claude Desktop / IDE
Add the server to your MCP config. Example for claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"architector": {
"command": "npx",
"args": ["-y", "mcp-architector"],
"env": {
"MCP_PROJECT_ID": "${workspaceFolder}"
}
}
}
}
For Cursor IDE: Settings → Features → Model Context Protocol → Edit Config, then add the same block inside mcpServers. See the Integration section for more options.
Overview
Store and manage project architecture, modules, scripts, data flow, and usage examples - all locally with complete privacy.
Features
- Local Storage: All data stored in
~/.mcp-architector(privacy-first) - Project Architecture: Store and retrieve overall project architecture
- Module Details: Detailed information about each module
- Resources: Access architecture data via resources
Storage Structure
~/.mcp-architector/
└── {projectId}/
├── architecture.json # Overall architecture
├── modules/
│ ├── {moduleId}.json # Module details
│ └── ...
└── scripts/
├── {scriptId}.json # Script documentation
└── ...
Quick Start
For Users (using npm package)
# No installation needed - use directly in Cursor/Claude Desktop
# Just configure it as described in Integration section below
For Developers
- Clone the repository:
git clone https://github.com/theSharque/mcp-architect.git
cd mcp-architect
- Install dependencies:
npm install
- Build the project:
npm run build
Usage
Development Mode
Run with hot reload:
npm run dev
Production Mode
Start the server:
npm start
MCP Inspector
Debug and test your server with the MCP Inspector:
npm run inspector
Integration
Cursor IDE
- Open Cursor Settings → Features → Model Context Protocol
- Click "Edit Config" button
- Add one of the configurations below
Option 1: Via npm (Recommended)
Installs from npm registry automatically:
{
"mcpServers": {
"architector": {
"command": "npx",
"args": ["-y", "mcp-architector"],
"env": {
"MCP_PROJECT_ID": "${workspaceFolder}"
}
}
}
}
Option 2: Via npm link (Development)
For local development with live changes:
{
"mcpServers": {
"architector": {
"command": "mcp-architector",
"env": {
"MCP_PROJECT_ID": "${workspaceFolder}"
}
}
}
}
Requires: cd /path/to/mcp-architector && npm link -g
Option 3: Direct path
{
"mcpServers": {
"architector": {
"command": "node",
"args": ["/path/to/mcp-architector/dist/index.js"],
"env": {
"MCP_PROJECT_ID": "${workspaceFolder}"
}
}
}
}
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"architector": {
"command": "npx",
"args": ["-y", "mcp-architector"],
"env": {
"MCP_PROJECT_ID": "${workspaceFolder}"
}
}
}
}
Continue.dev
Edit .continue/config.json:
{
"mcpServers": {
"architector": {
"command": "npx",
"args": ["-y", "mcp-architector"],
"env": {
"MCP_PROJECT_ID": "${workspaceFolder}"
}
}
}
}
Using Project ID
When calling tools, you can:
- Use automatic project ID (from
${workspaceFolder}env var): Just omit theprojectIdparameter - Override per call: Pass
projectIdexplicitly in the tool call - Use default: If neither is provided, uses "default-project"
Tools
set-project-architecture
Creates or updates the overall architecture for a project.
Input:
projectId(optional): Project ID (defaults to "default-project")description: Overall project descriptionmodules: Array of module objects with:name: Module namedescription: Brief description of the moduleinputs(optional): What this module requires to workoutputs(optional): What this module produces or generates
dataFlow(optional): Object describing data flow between modules:- Key: module name
- Value: object with:
dependsOn(optional): Array of module names this module depends onprovidesTo(optional): Array of module names that receive data from this moduledataTransformation(optional): How data is transformed between modules
Output:
- Project ID and success message
get-project-architecture
Retrieves the overall architecture of the project.
Input:
projectId(optional): Project ID (defaults to "default-project")
Output:
- Complete project architecture
set-module-details
Creates or updates detailed information about a module.
Input:
projectId(optional): Project IDname: Module namedescription: Detailed description of the moduleinputs: What the module accepts as inputoutputs: What the module produces as outputdependencies(optional): List of module dependenciesfiles(optional): List of files belonging to this moduleusageExamples(optional): Array of usage examples with fields:title: Example titledescription(optional): Description of the examplecommand(optional): Command or code snippetinput(optional): Input dataoutput(optional): Expected outputnotes(optional): Additional notes about the example
notes(optional): Additional notes
Output:
- Module ID and success message
get-module-details
Retrieves detailed information about a specific module.
Input:
projectId(optional): Project IDmoduleName: Name of the module to retrieve
Output:
- Complete module details
list-modules
Lists all modules in the project architecture.
Input:
projectId(optional): Project ID
Output:
- Array of module summaries
delete-module
Deletes a module from the project architecture.
Input:
projectId(optional): Project IDmoduleName: Name of the module to delete
Output:
- Success message
set-script-documentation
Creates or updates documentation for a script or command.
Input:
projectId(optional): Project IDscriptName: Name of the scriptdescription: Description of what the script doesusage: Usage command or syntaxexamples: Array of usage examplesparameters: Object mapping parameter names to descriptionsnotes(optional): Additional notes
Output:
- Script ID and success message
get-script-documentation
Retrieves documentation for a specific script.
Input:
projectId(optional): Project IDscriptName: Name of the script to retrieve
Output:
- Script documentation
list-scripts
Lists all documented scripts in the project.
Input:
projectId(optional): Project ID
Output:
- Array of script documentations
Resources
architecture
Provides access to project architecture as a resource.
Usage:
Access via URI: arch://{projectId}
module
Provides access to module details as a resource.
Usage:
Access via URI: module://{projectId}/{moduleId}
Development
Project Structure
mcp-architector/
├── src/
│ ├── index.ts # Main server implementation
│ ├── types.ts # Type definitions
│ └── storage.ts # Storage utilities
├── dist/ # Compiled output (generated)
├── package.json
├── tsconfig.json
└── README.md
Project ID and Workdir
The server uses projectId to organize data in separate directories. The priority for determining project ID is:
- Explicitly passed in tool call parameters (highest priority)
- From environment variable
MCP_PROJECT_ID(set during initialization) - Default fallback "default-project" (lowest priority)
For Cursor integration, set MCP_PROJECT_ID to use the workspace directory automatically as the project ID.
Extending the Server
To add new tools, resources, or prompts, edit src/index.ts:
// Add a tool
server.registerTool(
"tool-name",
{ /* tool config */ },
async (params) => { /* handler */ }
);
// Add a resource
server.registerResource(
"resource-name",
new ResourceTemplate("uri-template", { /* options */ }),
{ /* resource config */ },
async (uri, params) => { /* handler */ }
);
// Add a prompt
server.registerPrompt(
"prompt-name",
{ /* prompt config */ },
(args) => { /* handler */ }
);
License
MIT
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.