副驾驶存储器mcp

VS Code中GitHub Copilot的持久语义记忆。
一个本地MCP服务器,在会话之间为Copilot提供持久的、项目范围的内存。内存存储在嵌入式ChromaDB矢量数据库中 all-MiniLM-L6-v2 嵌入,实现语义检索(RAG)。一切都在一个Docker容器中运行,不需要云服务。
______________________________________________________________________
为什么存在
副驾驶每次训练都是从一张白纸开始的。这个MCP服务器为它提供了一个持久的、可搜索的知识库,因此决策、约定和上下文在会话之间传递——所有这些都在Docker中本地运行。
______________________________________________________________________
快速开始
docker compose up -d服务器启动于 http://localhost:8000/sse.
这 .vscode/mcp.json 已经将Copilot指向服务器——不需要进一步的VS代码配置。
示例配置提供在 examples/vscode/mcp.json。将其复制到项目的 .vscode/mcp.json.
______________________________________________________________________
MCP工具
| 工具 | 说明 |
|---|---|
create_memory | 存储带有标题、内容、可选项目范围和标签的新内存 |
search_memories | 语义向量搜索;按项目和/或标签筛选 |
update_memory | 按ID更新现有内存;在变化中重新嵌入 |
delete_memory | 按ID永久删除内存 |
list_memories | 使用分页浏览记忆(轻量级,无内容) |
______________________________________________________________________
副驾驶说明和代理(示例)
现成的示例在 examples/.将相关文件复制到根目录或 .github/ 你自己的项目。
| 文件 | 已被占用 |
|---|---|
AGENTS.md | OpenAI Codex、Claude Code和大多数代理运行时 |
CLAUDE.md | 克劳德代码(claude CLI) |
.cursorrules | 游标(传统格式,项目根) |
.cursor/rules/memory-tools.mdc | 光标(符合规则的现代格式) |
| VS代码中的GitHub副本 | |
VS代码 /save-memory 提示 | |
VS代码 /recall-memory 提示 | |
VS代码 @memory 自定义代理模式 |
______________________________________________________________________
建筑
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)______________________________________________________________________
项目布局
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______________________________________________________________________
发展
安装依赖项
pip install -e ".[dev]"运行测试
pytest测试使用一个临时内存ChromaDB和一个模拟的嵌入函数——不需要Docker,也不需要下载模型。
在本地运行服务器(无Docker)
pip install -e .
PYTHONPATH=. python app/main.py______________________________________________________________________
环境变量
| 变量 | 默认值 | 描述 |
|---|---|---|
SENTENCE_TRANSFORMERS_HOME | /app/models | 模型缓存目录 |
CHROMA_PATH | /data/chroma | ChromaDB持久路径 |
PORT | 8000 | HTTP服务器端口 |
复制 .env.example 到 .env 必要时进行调整。
______________________________________________________________________
许可证
麻省理工学院——见 许可证.
