CodeArchitect MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@CodeArchitect MCPsave this conversation as 'auth flow design'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
CodeArchitect MCP
Your AI conversations shouldn't disappear. CodeArchitect MCP automatically saves and retrieves your discussions with AI assistants, solving context continuity for developers. Never re-explain architecture decisions or code solutions. Built on Model Context Protocol (MCP) - works seamlessly with Cursor and VS Code. Expanding into comprehensive system design and architecture assistance.
Quick Start
1. Install Node.js
Download from nodejs.org (v18+). Open terminal → type node --version to verify.
2. Install Package
npm install -g codearchitect-mcp3. Configure IDE
Step 1: Open Cursor Settings
Open Cursor (the code editor)
Look at the bottom left corner - click the gear icon ⚙️ (or press
Ctrl+,on Windows/Linux,Cmd+,on Mac)This opens Settings
Step 2: Find MCP Settings
In the Settings search box at the top, type: "MCP" or "Model Context Protocol"
You should see "Tools & MCP" section
Click on it
Step 3: Add CodeArchitect Server
Look for "MCP Servers" or "Add Server" button
Click "Add Server" or the + button
A form will appear. Fill it in:
Name:
codearchitect(or any name you like)Command:
npxArgs:
-y codearchitect-mcp@latest
Click Save or OK
OR (Alternative Method - Manual Config File):
Close Cursor
Open File Explorer (Windows) or Finder (Mac)
Go to your home folder:
Windows:
C:\Users\YourName\.cursor\(create.cursorfolder if it doesn't exist)Mac/Linux:
~/.cursor/(create.cursorfolder if it doesn't exist)
Create a file named
mcp.jsonin that folderOpen it in any text editor and paste this:
{
"mcpServers": {
"codearchitect": {
"command": "npx",
"args": ["-y", "codearchitect-mcp@latest"]
}
}
}Save the file
Open Cursor again
Step 4: Verify It's Working
In Cursor, look at the bottom status bar
You should see "MCP" or "codearchitect" with a green dot (connected)
If you see red or yellow, something went wrong - see troubleshooting below
Step 5: Reload Cursor
Press
Ctrl+Shift+P(Windows/Linux) orCmd+Shift+P(Mac)Type: "Reload Window"
Press Enter
Cursor will restart - wait for it to finish loading
Step 6: Test It Works
Open any chat/conversation in Cursor
Type: "use codearchitect"
You should see a list of features and workflow guide
If you see an error, see troubleshooting below
Export Chat (How to Save Conversations)
In Cursor chat, look at the top right corner
Click the three dots menu (⋯)
Click "Export Chat"
A save dialog appears
Navigate to:
C:\Users\YourName\.codearchitect\exports\(Windows) or~/.codearchitect/exports/(Mac/Linux)Create the
exportsfolder if it doesn't exist
Click Save
The file will be saved as
.mdformat (that's normal)
Need Help?
Stuck at any step? Reach out to Tair:
Email: Check GitHub profile for contact
GitHub Issues: github.com/tairqaldy/codearchitect-mcp/issues
Mention which step you're on and what's happening
Step 1: Open Command Palette
Open VS Code (Visual Studio Code)
Press
Ctrl+Shift+P(Windows/Linux) orCmd+Shift+P(Mac)A box appears at the top - this is the Command Palette
Step 2: Add MCP Server
In the Command Palette box, type: "MCP: Add Server"
You should see "MCP: Add Server..." appear in the list
Click it (or press Enter)
Step 3: Choose Installation Method
A menu appears asking how to install
Choose: "Download with npm package" (click it)
Another box appears asking for the package name
Step 4: Enter Package Name
Type exactly:
codearchitect-mcpPress Enter
VS Code will download and install it (wait a few seconds)
Step 5: Verify It's Working
Look at the bottom right corner of VS Code
You should see "MCP" or "codearchitect" with a green indicator (connected)
If you see red or an error, see troubleshooting below
Step 6: Reload VS Code
Press
Ctrl+Shift+P(Windows/Linux) orCmd+Shift+P(Mac) againType: "Developer: Reload Window"
Press Enter
VS Code will restart - wait for it to finish
Step 7: Test It Works
Open any chat/conversation in VS Code
Type: "use codearchitect"
You should see a list of features and workflow guide
If you see an error, see troubleshooting below
Export Chat (How to Save Conversations)
In VS Code chat, press
Ctrl+Shift+P(Windows/Linux) orCmd+Shift+P(Mac)Type: "Export Chat"
Click "Export Chat" from the list
A save dialog appears
IMPORTANT: Name your file something meaningful, like:
auth-implementation.jsondatabase-design.jsonapi-routes.json(Use
.jsonat the end - VS Code will add it automatically)
Navigate to:
C:\Users\YourName\.codearchitect\exports\(Windows) or~/.codearchitect/exports/(Mac/Linux)Create the
exportsfolder if it doesn't exist
Click Save
The file will be saved as
.jsonformat (that's normal - CodeArchitect supports this!)
Need Help?
Stuck at any step? Reach out to Tair:
Email: Check GitHub profile for contact
GitHub Issues: github.com/tairqaldy/codearchitect-mcp/issues
Mention which step you're on and what's happening
4. Verify Setup
Check MCP status: Should show green/connected in IDE
Test: Say
"use codearchitect"- should see features listIf not working: Reload IDE and check MCP logs / Reach out to Tair
5. Start Using
"use codearchitect"- See features and workflow guide"use codearchitect store_session"- Save conversation"use codearchitect get_session"- Retrieve session"use codearchitect search_session [query]"- Search across all sessions
Related MCP server: Memory MCP Server
Storage
Main location: ~/.codearchitect/sessions/ (always)
Windows:
C:\Users\YourName\.codearchitect\sessions\Linux/Mac:
~/.codearchitect/sessions/
Optional: Also save to project folder (specify projectDir)
Exports: ~/.codearchitect/exports/ (for export file detection)
Workflow
Export chat → Save to
~/.codearchitect/exports/Store session →
"use codearchitect store_session"Retrieve →
"use codearchitect get_session [topic]"Search →
"use codearchitect search_session [query]"- Find sessions by keywordRepeat → Build knowledge base iteratively
Docs
API - Tool reference
FAQ - Common questions
Onboarding - Setup guide
Troubleshooting - Fix issues
Links
npm: codearchitect-mcp
GitHub: tairqaldy/codearchitect-mcp
Made with ❤️ by Tair Kaldybayev
Available Tools
4 toolscodearchitect_helpA
Get help about CodeArchitect MCP features. Use when user says "use codearchitect" without specifying a feature, or asks "what can codearchitect do?". Returns available features with examples and next steps.
| Name | Required | Description | Default |
|---|---|---|---|
| feature | No | Optional: Specific feature name to get help for (store_session, get_session, search_session). If not provided, returns help for all features. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses that the tool returns available features with examples and next steps. It doesn't mention side effects or auth, but as a help tool, this is adequate. Slightly improved by stating it's safe and read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no waste. First sentence defines purpose, second provides usage guidance. Front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given one optional parameter, no output schema, no annotations, the description is complete: it explains purpose, when to use, and what is returned. No missing context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%. The description adds value by listing valid feature names (store_session, get_session, search_session) and explaining behavior when feature is not provided, which goes beyond the schema's description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool is for getting help about CodeArchitect MCP features, specifying when to use it (when user says 'use codearchitect' without specifying a feature or asks capabilities). It distinguishes from siblings (store_session, get_session, search_session) by being the help tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use: when user says 'use codearchitect' without specifying a feature or asks 'what can codearchitect do?'. This provides clear context and implies alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sessionA
[CodeArchitect] Retrieve previous conversations to avoid re-explaining.
=== WHEN TO USE ===
User says: "use codearchitect get_session", "get that previous conversation", "retrieve session"
User mentions something they discussed before
User wants to continue work on a previous topic
=== STORAGE BEHAVIOR ===
Always retrieves from main folder: ~/.codearchitect/sessions/ (user's home directory)
No project detection - all sessions are in main folder
=== USAGE ===
No parameters: Lists all sessions
filename: Get specific session by topic folder name
date: List sessions from specific date (YYYY-MM-DD format)
limit: Limit number of results when listing
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Optional: Filter sessions by date (YYYY-MM-DD format). Only used when listing sessions. | |
| limit | No | Optional: Limit number of sessions returned when listing. Default: no limit | |
| format | No | Output format. "json" for JSON, "toon" for TOON format (~40% token reduction), "auto" to automatically choose best format. Default: "auto" | auto |
| filename | No | Optional: Specific session filename (topic folder name) to retrieve. If not provided, lists all sessions. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully informs about storage location ('~/.codearchitect/sessions/') and behavior when no parameters are provided (lists all sessions). It does not cover authentication or side effects, but as a read-only tool, this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear headings and sections. While somewhat long, all content is relevant. Minor redundancy (e.g., repeating 'main folder') but overall efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description lacks details on what the tool returns (e.g., session content format). There is no output schema, so the description should explain the response structure. The 'format' parameter suggests different outputs, but no description of them is provided.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining each parameter's purpose in the 'USAGE' section, e.g., 'filename: Get specific session by topic folder name'. This goes beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves previous conversations, using verbs like 'retrieve' and 'list'. However, it does not explicitly differentiate from the sibling tool 'search_session', which could also retrieve conversations but likely via content search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes a 'WHEN TO USE' section with specific user phrases and scenarios. It does not explicitly state when not to use it or provide alternatives, but the guidance is clear and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_sessionA
[CodeArchitect] Search across all stored sessions to find relevant conversations.
=== WHEN TO USE ===
User says: "use codearchitect search_session [query]", "search for [topic]", "find sessions about [topic]"
User wants to find sessions by keyword or topic
User remembers discussing something but not the exact session name
=== STORAGE BEHAVIOR ===
Always searches in main folder: ~/.codearchitect/sessions/ (user's home directory)
Searches through all date folders unless filtered
=== SEARCH BEHAVIOR ===
Full-text search across topic, content, and messages
Case-insensitive matching
Returns relevance scores and context snippets
Results sorted by relevance (highest first), then by date (newest first)
=== PARAMETERS ===
query (required): Search query string
date (optional): Filter by specific date (YYYY-MM-DD format)
dateFrom (optional): Filter from date (YYYY-MM-DD format)
dateTo (optional): Filter to date (YYYY-MM-DD format)
limit (optional): Limit number of results returned
=== RESPONSE === Returns matching sessions with:
Relevance score (0-1)
Matched snippets showing context
Match count
Session metadata (topic, date, filename)
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Optional: Filter sessions by specific date (YYYY-MM-DD format) | |
| limit | No | Optional: Limit number of results returned. Default: no limit | |
| query | Yes | Required: Search query string to find in sessions | |
| dateTo | No | Optional: Filter sessions up to this date (YYYY-MM-DD format) | |
| dateFrom | No | Optional: Filter sessions from this date onwards (YYYY-MM-DD format) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully covers behavioral traits: storage location (~/.codearchitect/sessions/), search behavior (full-text, case-insensitive, relevance scoring, sorting), and response structure (relevance score, snippets). No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with clear sections (WHEN TO USE, STORAGE BEHAVIOR, etc.), but verbose with repeated examples (e.g., user phrases). Could be more concise while retaining key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, description details return values (relevance score, snippets, match count, metadata). Covers parameters, search behavior, and storage. Contextually complete for a search tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description adds some value like default for limit (not in schema) and format hints, but mostly repeats schema info. No major additional meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as searching across sessions, using specific verb 'search' and resource 'sessions'. It distinguishes from siblings like store_session and get_session by focusing on search functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides explicit user action phrases and scenarios (e.g., 'User remembers discussing something but not the exact session name'), guiding when to use. Lacks explicit when-not-to-use and direct sibling comparison, but context is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
store_sessionA
[CodeArchitect] Save important conversations for future reference.
=== WHEN TO USE ===
User says: "use codearchitect store_session", "save this conversation", "store this", "remember this"
User wants to keep/remember an important discussion
After solving complex problems or making architecture decisions
=== STORAGE BEHAVIOR ===
ALWAYS saves to main folder: ~/.codearchitect/sessions/ (user's home directory)
OPTIONALLY saves to project folder if user specifies projectDir parameter
NEVER auto-detects project - only use projectDir if user explicitly provides it
=== CONVERSATION SOURCE (CHOOSE ONE) ===
OPTION 1: Export File (RECOMMENDED - Most Reliable)
User exports conversation from Cursor/VS Code to .codearchitect/exports/ folder
Tool automatically detects and processes the export file
No need to manually extract conversation
WORKFLOW:
User exports chat: In Cursor/VS Code → three dots (⋯) → "Export Chat"
User saves to: ~/.codearchitect/exports/ folder (main location - always the same)
User says: "use codearchitect store_session"
Tool automatically finds newest export file and stores it
If multiple exports exist:
Tool processes newest file (modified in last 10 minutes)
If user wants specific file: use exportFilename parameter (e.g., "resolve_mcp")
OPTION 2: Direct Conversation Parameter (Fallback)
Only use if export file method doesn't work
Extract FULL conversation from your context window
Format as plain text with USER/ASSISTANT markers OR JSON array
=== PARAMETERS ===
conversation (optional): Direct conversation text/JSON - only use if export file unavailable
exportFilename (optional): Pattern to match specific export file (e.g., "resolve_mcp" matches "cursor_resolve_mcp_configuration_issues.md")
topic (optional): Session topic - auto-extracted if not provided
projectDir (optional): Project directory path - if provided, saves to both main and project folders
format (optional): "plain" or "messages" - default "plain"
=== WORKFLOW (EXPORT METHOD) === Step 1: User exports conversation to ~/.codearchitect/exports/ folder (main location) Step 2: User says "use codearchitect store_session" Step 3: Tool detects export file automatically from main exports folder Step 4: Tool parses and stores conversation Step 5: Tool saves to main sessions folder (always) + optionally project folder if projectDir specified
=== ERROR HANDLING === If no export file found:
Return clear instructions with OS/IDE-specific export folder path
Tell user exactly where to save the export file
Provide step-by-step instructions
=== RESPONSE === After saving, return concise message:
"Detected export file '[filename]', saved to main: [topic-name]. Next: use codearchitect get_session [topic-name]"
Or if projectDir provided: "Detected export file '[filename]', saved to main: [topic-name] and project: [topic-name]. Next: use codearchitect get_session [topic-name]"
| Name | Required | Description | Default |
|---|---|---|---|
| topic | No | Optional: Session topic/title. If not provided, will be auto-extracted from conversation. | |
| format | No | Format of conversation input. "plain" for text, "messages" for JSON array. Default: "plain" | plain |
| projectDir | No | Optional: Project directory path. If specified, saves to BOTH main folder (~/.codearchitect/sessions/) AND project/.codearchitect/sessions/. Always saves to main folder first, then also to project folder. | |
| conversation | No | OPTIONAL: Direct conversation text/JSON. Only use if export file method unavailable. If not provided, tool will automatically look for export file in .codearchitect/exports/ folder. Format as plain text with USER/ASSISTANT markers OR as JSON array [{"role": "user/assistant", "content": "..."}]. | |
| exportFilename | No | OPTIONAL: Pattern to match specific export file (case-insensitive). Example: "resolve_mcp" matches "cursor_resolve_mcp_configuration_issues.md". If not provided, tool uses newest export file (modified in last 10 minutes). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully discloses behavior: storage locations (main folder always, project folder optionally), no auto-detection, export file vs direct conversation methods, error handling, and response format. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is lengthy but well-structured with clear sections (WHEN TO USE, STORAGE BEHAVIOR, PARAMETERS, WORKFLOW, ERROR HANDLING, RESPONSE). It is front-loaded with purpose. Some redundancy exists, but overall it is organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters, no output schema, and no annotations, the description is exhaustive: it covers purpose, usage, behavior, parameter guidance, workflow steps, error handling, and response format, leaving no gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds value by explaining when to use each parameter (e.g., 'only use if export file unavailable' for conversation) and providing workflow context, making semantics clearer.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Save important conversations for future reference.' It differentiates from siblings (get_session, search_session) by focusing on saving, and provides explicit usage examples like 'save this conversation'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
A dedicated 'WHEN TO USE' section lists specific user phrases and contexts (e.g., after solving complex problems). It implicitly excludes retrieval use cases handled by sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
v0.1.8- First observed
codearchitect_help - First observed
get_session - First observed
search_session - First observed
store_session
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose: help provides guidance, store saves sessions, get retrieves sessions, and search finds sessions by content. No overlap or ambiguity between them.
All tool names follow a consistent verb_noun pattern: codearchitect_help, store_session, get_session, search_session. The convention is uniform and predictable.
With 4 tools covering help, store, get, and search, the set is well-scoped for session management. Neither too few nor too many tools for the domain.
The set covers the main lifecycle (store, get, search) and help, which is solid. Minor gaps exist like missing update or delete operations, but the core functionality is complete for session storage and retrieval.
Maintenance
Related MCP Connectors
Shared memory across AI dev tools: each session hands its context to the next, not starting cold.
Stop re-explaining yourself to AI. Save knowledge once, use it in every conversation.
Cross-LLM persistent memory: store context once, recall it from any AI model.
Related MCP Servers
- AlicenseBqualityCmaintenanceProvides AI assistants with persistent memory of your project architecture, development history, and technical decisions, allowing them to give context-aware coding help without needing repeated explanations.1661 npm2MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to maintain context across conversation sessions by saving and retrieving summaries of key points from past interactions.261 npmMIT
- AlicenseNot gradedqualityDmaintenanceNever start from zero. Persistent session intelligence for AI coding assistants.35 npm1MIT
- AlicenseNot gradedqualityAmaintenanceProvides persistent memory for AI coding agents across sessions by saving and loading session context like tasks, decisions, and blockers.115 npmMIT