返回市场
简单内存扩展MCP服务器

简单内存扩展MCP服务器

作者:gmacev9 星标更新:2025-03-17

项目介绍

简单内存扩展MCP服务器

这是一个用于扩展代理上下文窗口/内存的MCP服务器。在编写大型功能或进行即兴编码时非常有用,需要存储/回忆进度、关键时刻或变化或任何值得记住的内容。只需要求代理存储记忆,并在需要时召回,或者让代理自行管理其内存(例如通过光标规则)。

使用方法

启动服务器

npm install
npm start

可用工具

上下文项管理

  • store_context_item - 在命名空间中存储键值对
  • retrieve_context_item_by_key - 通过键获取值
  • delete_context_item - 删除键值对

命名空间管理

  • create_namespace - 创建新的命名空间
  • delete_namespace - 删除命名空间及其所有内容
  • list_namespaces - 列出所有命名空间
  • list_context_item_keys - 列出命名空间中的键

语义搜索

  • retrieve_context_items_by_semantic_search - 根据意义查找项目

语义搜索实现

  1. 查询使用E5模型转换为向量
  2. 文本自动分割成块以获得更好的匹配
  3. 计算查询与存储块之间的余弦相似度
  4. 按阈值过滤结果并按相似度排序
  5. 返回最匹配的结果及其完整项目值

开发

# 开发服务器
npm run dev

# 格式化代码
npm run format

.env

# SQLite数据库文件路径
DB_PATH=./data/context.db

PORT=3000

# 使用HTTP SSE或Stdio
USE_HTTP_SSE=true

# 日志配置:debug, info, warn, error
LOG_LEVEL=info

语义搜索

该项目包括使用Hugging Face的E5嵌入模型的语义搜索功能。这允许您根据项目的含义而不是仅基于精确键匹配来查找上下文项。

设置

语义搜索功能需要Python依赖项,但这些应该会在您运行时自动安装:npm run start

嵌入模型

我们使用的是intfloat/multilingual-e5-large-instruct

注意事项

主要是在即兴编码过程中开发的,所以不要期望太高:D。但它确实有效,我发现它很有帮助,所以无所谓。欢迎贡献或提出改进建议。