内容
# ContextForge MCP — 为 Claude、Cursor 和 Copilot 提供持久内存
[](https://www.npmjs.com/package/contextforge-mcp)
[](https://opensource.org/licenses/MIT)
[](https://nodejs.org)
[](https://glama.ai/mcp/servers/alfredoizdev/contextforge-mcp)
> 通过模型上下文协议(MCP),为 Claude Code、Cursor 和 GitHub Copilot 提供 **跨会话的持久内存**。无需每次都重新解释您的项目。
ContextForge MCP 是一个开源的 MCP 服务器,它将您的 AI 编程助手连接到 **长期、可搜索的内存**。决策、架构笔记、调试上下文和项目知识在每个会话中都可用 — 跨越所有支持 MCP 的工具。
- 🧠 **持久内存** — 您的 AI 跨会话、日和周记住一切
- 🔍 **语义搜索** — 通过含义查找知识,而不是关键词
- 🔗 **一个内存,多个工具** — Claude Code、Cursor、Copilot、Claude Desktop、Windsurf
- 🐙 **Git 集成** — 自动同步提交和 PR
- ✅ **任务跟踪** — 问题、任务和项目状态
- 👥 **团队协作** — 与您的团队共享项目和内存
- 🆓 **免费层** — 无需信用卡即可开始
---
## 快速开始
### 1. 安装
```bash
npm install -g contextforge-mcp
```
### 2. 获取您的 API 密钥
1. 前往 **[contextforge.dev](https://contextforge.dev)**
2. 注册(提供免费层)
3. 设置 → API 密钥 → **生成 API 密钥**
4. 复制您的密钥(以 `cf_` 开头)
### 3. 连接到您的 AI 工具
#### Claude Desktop
编辑 `~/Library/Application Support/Claude/claude_desktop_config.json`:
```json
{
"mcpServers": {
"contextforge": {
"command": "contextforge-mcp",
"env": {
"CONTEXTFORGE_API_KEY": "your-api-key-here"
}
}
}
}
```
重启 Claude Desktop。
#### Claude Code(CLI)
```bash
claude mcp add contextforge \
-e CONTEXTFORGE_API_KEY=your-api-key-here \
-- contextforge-mcp
```
重启 Claude Code 并运行 `/mcp` 以验证连接。
#### Cursor
添加到您的 Cursor MCP 设置:
```json
{
"mcpServers": {
"contextforge": {
"command": "npx",
"args": ["contextforge-mcp"],
"env": {
"CONTEXTFORGE_API_KEY": "your-api-key-here"
}
}
}
}
```
#### GitHub Copilot(VS Code)
添加到您的 Copilot MCP 配置:
```json
{
"servers": {
"contextforge": {
"command": "npx",
"args": ["contextforge-mcp"],
"env": {
"CONTEXTFORGE_API_KEY": "your-api-key-here"
}
}
}
}
```
### 4. 初始化您的项目(必需)
设置您的项目,以便您的 AI 编辑器知道使用 ContextForge 内存:
```bash
npx contextforge-mcp init
```
默认情况下,`init` 自动检测您的项目使用哪个编辑器并写入:
- `CLAUDE.md` for Claude Code(信号:现有的 `CLAUDE.md` 或 `.claude/` 目录)
- `.cursorrules` for Cursor(信号:现有的 `.cursorrules` 或 `.cursor/` 目录)
如果未检测到编辑器,则会生成这两个文件。
**如果未执行此步骤,您的 AI 将在内存查询中静默忽略 ContextForge** — 即使 MCP 已连接 — 因为内置的自动内存默认情况下会获胜。
#### 使用 `--editor` 覆盖
| 标志 | 行为 |
|---|---|
| `--editor=claude` | 仅生成 `CLAUDE.md` |
| `--editor=cursor` | 仅生成 `.cursorrules` |
| `--editor=all` | 生成两者,跳过检测 |
重新运行 `init` 是幂等的 — 已经包含我们的标记的文件将保持不变。
---
## 可用工具
ContextForge 提供 **知识管理**、**GitHub 集成**、**问题跟踪** 和 **协作** 工具。
### 知识管理
| 工具 | 描述 |
|------|-------------|
| `memory_ingest` | 将知识保存到内存 |
| `memory_query` | 语义搜索知识 |
| `memory_list_items` | 列出所有存储的项目 |
| `memory_delete` | 删除特定项目 |
| `memory_ingest_batch` | 一次保存多个项目 |
| `memory_delete_batch` | 按筛选器删除项目 |
### 空间和项目
| 工具 | 描述 |
|------|-------------|
| `memory_list_spaces` | 列出您的空间 |
| `memory_create_space` | 创建新空间 |
| `memory_delete_space` | 删除空间 |
| `memory_move_space` | 将空间移动到项目 |
| `memory_list_projects` | 列出您的项目 |
| `memory_create_project` | 创建新项目 |
| `memory_delete_project` | 删除项目 |
| `memory_link_project` | 将目录链接到项目 |
| `memory_unlink_project` | 取消链接目录 |
| `memory_current_project` | 显示链接的项目 |
### GitHub 集成
| 工具 | 描述 |
|------|-------------|
| `memory_git_connect` | 连接 GitHub 仓库 |
| `memory_git_list` | 列出连接的仓库 |
| `memory_git_activate` | 激活/停用 webhook |
| `memory_git_sync` | 导入现有历史记录 |
| `memory_git_commits` | 列出同步的提交 |
| `memory_git_prs` | 列出同步的 PR |
| `memory_git_disconnect` | 断开仓库连接 |
### 问题跟踪
| 工具 | 描述 |
|------|-------------|
| `issues_list` | 列出您的问题 |
| `issues_create` | 创建新问题 |
| `issues_start` | 标记为进行中 |
| `issues_resolve` | 标记为已解决 |
| `issues_resolve_by_name` | 按标题解决 |
| `issues_assign` | 指派给协作者 |
| `issues_what_next` | 获取建议 |
### 协作
| 工具 | 描述 |
|------|-------------|
| `project_share` | 按电子邮件共享项目 |
| `collaborators_list` | 列出协作者 |
### 快照和导出
| 工具 | 描述 |
|------|-------------|
| `memory_snapshot_create` | 创建备份 |
| `memory_snapshot_list` | 列出所有快照 |
| `memory_snapshot_restore` | 从备份恢复 |
| `memory_snapshot_delete` | 删除快照 |
| `memory_export` | 导出到 JSON/MD/CSV |
| `memory_import` | 从文件导入 |
### 实用程序
| 工具 | 描述 |
|------|-------------|
| `memory_stats` | 查看使用情况统计 |
| `memory_relate` | 链接两个项目 |
| `memory_help` | 显示帮助 |
---
## 自然语言示例
您不需要记住命令 — 只需自然地与您的 AI 交谈:
```
# 知识
"保存这个:我们使用 PostgreSQL 作为主数据库"
"我们使用什么数据库?"
"列出我的空间"
# GitHub
"连接我的仓库 github.com/myuser/myproject"
"今天我做了哪些提交?"
"显示本周合并的 PR"
# 问题
"创建一个问题:更新登录页面设计"
"什么待处理?"
"我接下来应该做什么?"
"将登录问题标记为完成"
```
---
## 环境变量
| 变量 | 必需 | 描述 |
|----------|----------|-------------|
| `CONTEXTFORGE_API_KEY` | 是 | 您的 API 密钥(来自仪表盘) |
| `CONTEXTFORGE_API_URL` | 否 | API 端点(默认为生产环境) |
| `CONTEXTFORGE_DEFAULT_SPACE` | 否 | 操作的默认空间 |
---
## 工作原理
ContextForge MCP 是一个薄客户端,它将模型上下文协议工具调用转换为针对 ContextForge API 的身份验证 HTTP 请求。您的知识存储、索引(语义嵌入)和在服务器端检索 — MCP 客户端本身是无状态的。
这意味着:
- **无需管理基础设施** — 无本地数据库,无需运行嵌入,无需维护向量存储
- **在您的 AI 工作场所无处不在** — 跨 Claude Code、Cursor、Copilot 等使用相同的内存
- **团队协作** — 共享项目实时同步
---
## 仪表盘
在 **[contextforge.dev](https://contextforge.dev)** 以可视化方式管理您的内存:
- 查看和组织您的知识
- 搜索和筛选记忆
- 管理 API 密钥和计费
- 跟踪问题和协作
- 导出和备份数据
---
## 开发
```bash
# 克隆并安装
git clone https://github.com/alfredoizdev/contextforge-mcp.git
cd contextforge-mcp
npm install
# 构建
npm run build
# 运行测试
npm test
# 监视模式
npm run dev
```
---
## 贡献
欢迎在 **[github.com/alfredoizdev/contextforge-mcp](https://github.com/alfredoizdev/contextforge-mcp)** 提交问题和拉取请求。
---
## 支持
- 📖 [文档](https://contextforge.dev/docs)
- 🐛 [报告问题](https://github.com/alfredoizdev/contextforge-mcp/issues)
- 💬 问题:support@contextforge.app
---
## 许可证
MIT © [Alfredo Izquierdo](https://github.com/alfredoizdev)