Implements MCP server for semantic search across GSD projects: MCP Tools: - gsd_memory_search: Search across all registered projects - gsd_memory_decisions: Find decisions from SUMMARY/PROJECT.md - gsd_memory_patterns: Find patterns from SUMMARY.md - gsd_memory_pitfalls: Find pitfalls from RESEARCH.md - gsd_memory_stack: Find tech stack entries - gsd_memory_register: Register project with memory - gsd_memory_index: Trigger indexing/update - gsd_memory_status: Show system status Architecture: - QMD wrapper with grep fallback when QMD unavailable - YAML frontmatter extractors for GSD document types - Project registry at ~/.gsd/projects.json - Auto-install via bin/install.js for Claude Code Workflow integrations: - new-project: Registers project with memory - plan-phase: Indexes after planning - execute-phase: Indexes after execution - complete-milestone: Indexes milestone completion - Researcher agents query memory before Context7 Tests: 117 passing (66 unit + 51 integration) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
GSD Memory
Cross-project knowledge system for GSD (Get Shit Done). An MCP server that provides semantic search across all your GSD projects, extracting decisions, patterns, pitfalls, and tech stack from YAML frontmatter.
Features
- Cross-project search - Find content across all registered GSD projects
- Decision extraction - Query decisions from SUMMARY.md and PROJECT.md
- Pattern discovery - Find established patterns from completed phases
- Pitfall awareness - Learn from documented pitfalls in RESEARCH.md
- Tech stack tracking - Track libraries and tools used across projects
- QMD integration - Uses QMD for semantic search when available, falls back to grep
Installation
Option 1: Add to Claude Code MCP config (recommended)
Add to ~/.claude/settings.json:
{
"mcpServers": {
"gsd-memory": {
"command": "npx",
"args": ["-y", "gsd-memory"]
}
}
}
Option 2: Install globally
npm install -g gsd-memory
Then add to ~/.claude/settings.json:
{
"mcpServers": {
"gsd-memory": {
"command": "gsd-memory"
}
}
}
Option 3: With QMD (optional, for semantic search)
Install QMD for better search results:
bun install -g github:tobi/qmd
GSD Memory automatically detects and uses QMD when available.
MCP Tools
gsd_memory_register
Register a project with GSD memory.
{
"path": "/path/to/project",
"name": "my-project"
}
gsd_memory_search
Search across all registered projects.
{
"query": "authentication JWT",
"project": "optional-filter",
"limit": 20
}
gsd_memory_decisions
Find decisions made across projects.
{
"query": "database choice",
"tags": ["postgres", "prisma"]
}
gsd_memory_patterns
Find established patterns.
{
"query": "error handling"
}
gsd_memory_pitfalls
Find documented pitfalls.
{
"domain": "authentication"
}
gsd_memory_stack
Find tech stack entries.
{
"query": "jose"
}
gsd_memory_index
Trigger re-indexing for a project.
{
"project": "my-project"
}
gsd_memory_status
Get status of the memory system.
{}
How It Works
GSD Memory extracts structured data from GSD's YAML frontmatter:
| Document | Extracted Fields |
|---|---|
| SUMMARY.md | subsystem, tags, requires, provides, tech-stack, key-decisions, patterns-established |
| RESEARCH.md | domain, confidence, standard stack tables, pitfalls sections |
| PROJECT.md | Requirements, constraints, key decisions table |
Data is stored in ~/.gsd/projects.json (registry) and optionally in QMD collections for semantic search.
Development
cd gsd-memory
npm install
npm test # Run unit tests
npm run build # Build TypeScript
Architecture
gsd-memory/
├── src/
│ ├── index.ts # MCP server entry point
│ ├── qmd.ts # QMD wrapper with grep fallback
│ ├── registry.ts # Project registry (~/.gsd/projects.json)
│ ├── extractors/ # Frontmatter and content extractors
│ │ ├── frontmatter.ts
│ │ ├── summary.ts
│ │ ├── research.ts
│ │ └── project.ts
│ └── tools/ # MCP tool implementations
│ ├── search.ts
│ ├── decisions.ts
│ ├── patterns.ts
│ ├── pitfalls.ts
│ ├── stack.ts
│ ├── register.ts
│ ├── index-tool.ts
│ └── status.ts
└── tests/
├── fixtures/ # Test fixtures
├── extractors/ # Extractor tests
└── tools/ # Tool tests
License
MIT