SelfHub MCP服务器
您的个人AI记忆中心 -从任何启用MCP的AI助手存储和检索您的个人数据。
🎯 什么是SelfHub?
SelfHub是一个 模型上下文协议(MCP) 充当您个人数字存储器的服务器。存储笔记、偏好、代码片段、任务和任何您想要的信息,然后从支持MCP的任何AI助手(Claude Desktop、VS code Copilot等)无缝访问它们。
把它当作你的 在所有人工智能对话中与您同行的个人知识库.
步骤2:配置Claude桌面
打开Claude Desktop配置文件:
- 视窗:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
添加此配置(替换为实际路径):
{
"mcpServers": {
"selfhub": {
"command": "node",
"args": ["C:\\absolute\\path\\to\\SelfHub\\build\\index.js"]
}
}
}对Windows很重要: 使用双反睫毛(\\)在路上!
步骤3:重新启动克劳德桌面
完全退出并重新启动Claude Desktop。
第四步:测试一下!
在Claude中,尝试:
- “列出我所有的回忆”
- “在我的记忆中搜索打字稿”
- “在所有应用程序中存储我更喜欢黑暗模式”
💻 使用VS代码进行设置
步骤1:构建服务器
pnpm build步骤2:配置VS代码
工作区已配置!只需重新加载VS代码:
按 Ctrl+Shift+P (或 Cmd+Shift+P 在Mac上)→ 键入“重新加载窗口”→ 按Enter键
步骤3:在副驾驶聊天中测试
打开GitHub Copilot聊天(Ctrl+Alt+I)并尝试:
@workspace list my memories
@workspace search my memories for "typescript"
@workspace store in my memory: I love using pnpm for package management注: 您需要安装并启用GitHub Copilot扩展。
🛠️ 可用工具
内存管理(5个工具)
1. store_memory
将新信息存储在内存中心。
例子:
Store that I prefer TypeScript over JavaScript for all new projects参数:
content(必填)-要存储的信息type-存储器类型:short-term,long-term,contextualcategory-类别:personal,professional,learning,projects,code,tasks等等。title-可选标题tags-标签数组importance-1-5重要级别
2. retrieve_memory
通过ID获取特定内存。
例子:
Retrieve memory mem_0013. list_memories
列出带有可选过滤器的内存。
例子:
List all my professional memories
Show me memories tagged with 'typescript'
List memories sorted by importance参数:
type-按类型筛选category-按类别筛选tags-按标签筛选contextId-按上下文筛选limit-最大结果(默认值:50)offset-分页偏移sortBy-排序字段:createdAt,updatedAt,importance,accessCountsortOrder-asc或desc
4. search_memories
使用文本查询搜索您的记忆。
例子:
Search my memories for "typescript"
Find memories about "API design"参数:
query(必填)-搜索查询category-按类别筛选type-按类型筛选tags-按标签筛选limit-最大结果(默认值:10)
5. delete_memory
按ID删除内存。
例子:
Delete memory mem_005上下文管理(3个工具)
6. create_context
创建新的组织环境。
例子:
Create a new context called "Machine Learning Project" for project type参数:
name(必填)-上下文名称type(必填)-conversation,project,topic,temporaldescription-可选描述tags-标签数组memoryIds-要包含的初始内存ID
7. activate_context
激活上下文并加载其记忆。
例子:
Activate the "SelfHub Development" context8. list_contexts
列出所有带有可选过滤器的上下文。
例子:
List all my project contexts
Show active contexts分析(1个工具)
9. get_stats
获取使用统计数据和见解。
例子:
Show me my memory statistics退货:
- 总内存计数
- 按类型细分的记忆
- 按类别细分的记忆
- 上下文总数
- 最常用的标签
📚 示例使用场景
个人知识管理
Store that I prefer dark mode in all applications
Store my favorite TypeScript coding conventions
Remember that I use pnpm for package management
Search my memories for "preferences"项目开发
Create a new context called "SelfHub Development" for project type
Store in SelfHub context: Database schema uses Drizzle ORM
Activate the SelfHub Development context
List all memories in the SelfHub context学习与笔记
Store as learning: Vector embeddings represent text as numerical arrays
Tag with "machine-learning" and "embeddings"
Search my learning memories for "embeddings"
List all my learning-related memories sorted by date代码片段
Store this code snippet: const sum = (a, b) => a + b
Category: code, Tags: javascript, utility
Search my code for "utility functions"🗂️ 样品数据
SelfHub附带6个预加载的样本存储器:
- mem_001 -暗模式UI首选项(个人)
- mem_002 -TypeScript编码标准(专业)
- mem_003 -向量嵌入概念(学习)
- mem_004 -SelfHub项目概述(项目)
- mem_005 -数据库开发任务
- mem_006 -ID生成实用代码(代码)
以及2个示例上下文:
- ctx_001 -SelfHub开发(项目)
- ctx_002 -人工智能与机器学习(主题)
🏗️ 项目结构
SelfHub/
├── src/
│ ├── index.ts # Main MCP server
│ ├── models/ # TypeScript type definitions
│ │ ├── memory.model.ts
│ │ ├── context.model.ts
│ │ └── index.ts
│ ├── services/ # Business logic layer
│ │ ├── memory.service.ts
│ │ └── context.service.ts
│ └── storage/ # Storage implementation
│ └── mock-storage.ts # In-memory mock data
├── build/ # Compiled JavaScript output
├── .github/ # GitHub Actions CI/CD
│ └── workflows/
│ ├── ci.yml # Continuous Integration
│ └── release.yml # Automated releases
├── .vscode/ # VS Code configuration
│ └── settings.json # MCP server settings
├── package.json
├── tsconfig.json
└── README.md🔧 发展
可用脚本
# Development mode (auto-reload with tsx)
pnpm dev
# Type checking
pnpm typecheck
# Build for production
pnpm build
# Clean build directory
rm -rf build运作原理
- MCP服务器 (
src/index.ts)-实施MCP协议,定义9个工具 - 服务层 -内存和上下文操作的业务逻辑
- 存储层 -内存中基于Map的存储,包含示例数据
- 模型 -用于类型安全的TypeScript接口
本地测试
# Start the server
pnpm dev
# You should see:
# 🚀 SelfHub MCP Server running with mock data!
# 📊 Loaded 6 sample memories and 2 sample contexts
# 🛠️ Available tools: 9服务器运行在 标准 (标准输入/输出)并等待MCP协议消息。您不能直接与它交互,它需要一个MCP客户端,如Claude Desktop或VS Code。
🐛 故障排除
服务器未显示在Claude桌面中
- 检查配置路径:
- 确保您正在编辑正确的配置文件 - 使用绝对路径,而不是相对路径
- 验证版本是否存在:
ls build/index.js- 检查拼写错误:
- Windows路径需要双反斜杠: C:\\path\\to\\ - JSON语法必须有效
- 完全重新启动Claude:
- 退出系统托盘 - 等几秒钟 - 重新开始
- 检查克劳德日志:
- 窗户: %APPDATA%\Claude\logs - macOS: ~/Library/Logs/Claude
VS代码不显示工具
- 请确保已安装GitHub Copilot:
- 按 Ctrl+Shift+X - 搜索“GitHub Copilot” - 同时安装“GitHub Copilot”和“GitHub Copelot Chat”
- 重新加载VS代码窗口:
- Ctrl+Shift+P → “重新加载窗口”
- 检查构建:
pnpm build构建错误
# Clean and rebuild
rm -rf build node_modules
pnpm install
pnpm build数据不持久
这是意料之中的!当前版本使用 内存存储。重新启动服务器时,所有数据都会重置。对于初始版本,这是有意的——将在未来的更新中添加持久存储。
🚀 CI/CD
此项目包括GitHub Actions工作流:
- CI管道 -在每次推送时运行,在Node 18.x和20.x上测试
- 发布工作流 -推送版本标签时创建版本
- Dependabot -自动更新依赖关系
看 .github/workflows/ 了解详情。
📖 文档
🗺️ 路线图
当前版本(v0.1.0)
- ✅ 内存存储
- ✅ 9个MCP工具
- ✅ 记忆分类和标记
- ✅ 上下文管理
- ✅ 基于文本的搜索
- ✅ 样本数据
未来的增强功能
- \[\]持久SQLite存储
- \[\]语义搜索的向量嵌入
- \[\]文件导入/导出(JSON、Markdown、CSV)
- \[\]敏感信息的数据加密
- \[\]用于管理的Web UI
- \[\]多用户支持
- \[\]云同步
🤝 贡献
欢迎投稿!请随时提交拉取请求。
📄 许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
💬 支持
如果您有疑问或遇到问题:
- 检查 故障排除 章节
- 查阅上述文档
- 在GitHub上打开一个问题
🌟 致谢
内置:
- 模型上下文协议SDK -MCP实施
- TypeScript -类型安全
- -快速包管理器
______________________________________________________________________
由...制作❤️ 通过 萨加尔古普塔16
_您的个人AI存储中心-记住一切,随时随地访问!_
