About Copilot Memory MCP
Copilot Memory MCP is an MCP server published by LabForgeDev in the RAG category: persistent semantic memory for AI agents using local ChromaDB vector search. No cloud required.
The repository has 4 stars and 0 forks, with the last commit 7 months ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.
Install
git clone https://github.com/LabForgeDev/copilot-memory-mcpThis 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 (5)
create_memoryStore a new memory with title, content, optional project scope and tags
Parameters not published.
delete_memoryPermanently delete a memory by ID
Parameters not published.
list_memoriesBrowse memories with pagination (lightweight, no content)
Parameters not published.
search_memoriesSemantic vector search; filter by project and/or tags
Parameters not published.
update_memoryUpdate an existing memory by ID; re-embeds on change
Parameters not published.
Ask AI
Ask AI about Copilot Memory MCP
Powered by Claude · Grounded in docs
Security checks
- ✓README presentThe repository ships documentation.
5 checks have not been run yet.
README
copilot-memory-mcp
Persistent semantic memory for GitHub Copilot in VS Code.
A local MCP server that gives Copilot durable, project-scoped memory across sessions. Memories are stored in an embedded ChromaDB vector database with all-MiniLM-L6-v2 embeddings, enabling semantic retrieval (RAG). Everything runs in a single Docker container — no cloud services required.
Why this exists
Copilot starts every session with a blank slate. This MCP server gives it a persistent, searchable knowledge base so decisions, conventions, and context carry over between sessions — all running locally in Docker.
Quick start
docker compose up -d
The server starts on http://localhost:8000/sse.
The .vscode/mcp.json already points Copilot at the server — no further VS Code configuration needed.
A sample config is provided in examples/vscode/mcp.json. Copy it to your project's .vscode/mcp.json.
MCP tools
| Tool | Description |
|---|---|
create_memory |
Store a new memory with title, content, optional project scope and tags |
search_memories |
Semantic vector search; filter by project and/or tags |
update_memory |
Update an existing memory by ID; re-embeds on change |
delete_memory |
Permanently delete a memory by ID |
list_memories |
Browse memories with pagination (lightweight, no content) |
Copilot instructions & agents (examples)
Ready-to-use examples are in examples/. Copy the relevant file(s) into the root or .github/ of your own project.
| File | Consumed by |
|---|---|
AGENTS.md |
OpenAI Codex, Claude Code, and most agent runtimes |
CLAUDE.md |
Claude Code (claude CLI) |
.cursorrules |
Cursor (legacy format, project-root) |
.cursor/rules/memory-tools.mdc |
Cursor (modern per-rule format) |
.github/copilot-instructions.md |
GitHub Copilot in VS Code |
.github/prompts/save-memory.prompt.md |
VS Code /save-memory prompt |
.github/prompts/recall-memory.prompt.md |
VS Code /recall-memory prompt |
.github/agents/memory.md |
VS Code @memory custom agent mode |
Architecture
VS Code / Copilot
│ MCP HTTP/SSE (port 8000)
▼
┌─────────────────────────────────┐
│ Docker Container │
│ │
│ FastMCP Server (port 8000) │
│ └── 5 MCP tools │
│ │
│ sentence-transformers │
│ └── all-MiniLM-L6-v2 │
│ (384-dim embeddings) │
│ │
│ ChromaDB (embedded) │
│ └── collection "memories" │
└──────────┬──────────────────────┘
│ Docker named volume
▼
/data/chroma (persisted DB)
Project layout
copilot-memory-mcp/
├── app/
│ ├── main.py # FastMCP server, tool registration
│ ├── memory_store.py # ChromaDB wrapper (CRUD + search)
│ ├── embeddings.py # sentence-transformers loader + encode()
│ └── tools/
│ ├── create_memory.py
│ ├── search_memories.py
│ ├── update_memory.py
│ ├── delete_memory.py
│ └── list_memories.py
├── tests/
│ ├── test_memory_store.py
│ └── test_tools.py
├── Dockerfile
├── docker-compose.yml
└── pyproject.toml
Development
Install dependencies
pip install -e ".[dev]"
Run tests
pytest
Tests use an ephemeral in-memory ChromaDB and a mocked embedding function — no Docker, no model download required.
Run the server locally (no Docker)
pip install -e .
PYTHONPATH=. python app/main.py
Environment variables
| Variable | Default | Description |
|---|---|---|
SENTENCE_TRANSFORMERS_HOME |
/app/models |
Model cache directory |
CHROMA_PATH |
/data/chroma |
ChromaDB persistence path |
PORT |
8000 |
HTTP server port |
Copy .env.example to .env and adjust if needed.
License
MIT — see LICENSE.
README copy captured when this server was indexed; it may lag the repository. The original is authoritative.