使用说明
MCP内存服务器
概述
MCP内存服务器是一个目前正在开发的开源项目,它使用Golang和Upstash的矢量数据库提供内存存储、检索和管理系统。它为人工智能助手提供了一个简单的HTTP API来存储和检索上下文信息。
该项目实现了MCP(模型控制协议)规范,允许AI模型以标准化的方式与外部工具进行交互。
特性
目前,该项目正在开发中,实现了三种核心API方法:
- 存储内存 -使用自动矢量嵌入保存信息
- 检索内存 -使用自然语言查询进行相关信息的语义搜索
- 删除内存 -按ID删除特定记忆
技术栈
- 后端:Go(高朗)
- 矢量数据库:目前支持Uptash Vector
- 运输:HTTP API
入门指南
安装
-
克隆存储库
git clone https://github.com/bqx619/mcp-memory-server.git cd mcp-memory-server -
安装依赖项
go mod download -
创建一个
.env包含以下变量的文件:VECTOR_PROVIDER=upstash VECTOR_URL=your-upstash-vector-url VECTOR_TOKEN=your-upstash-vector-token HTTP_PORT=8080
运行服务器
go run .
服务器将在配置的端口(默认:8080)上启动。
api参考
存储内存
将新信息存储在矢量数据库中。
端点:POST/工具/store_memory 请求正文:
{
"content": "Memory content to store"
}
响应:
{
"content": "Successfully stored memory with ID: abcd1234"
}
检索内存
根据查询执行语义搜索以查找相关信息。
端点:POST/tools/retrieve_memory 请求正文:
{
"query": "search term",
"n_results": 5
}
响应:
{
"content": "Found the following memories:
Memory 1:
Content: The first relevant memory
Id: abcd1234
Relevance Score: 0.92
Memory 2:
Content: Another related memory
Id: efgh5678
Relevance Score: 0.85
..."
}
删除内存
按ID删除特定内存。
端点:POST/tools/delete_memory 请求正文:
{
"memory_id": "abcd1234"
}
响应:
{
"content": "Successfully deleted memory with ID: abcd1234"
}
发展路线图
- 添加身份验证
- 实现记忆标记和分类
- 支持其他矢量数据库提供商
- 增强搜索能力
- 添加内存过期和TTL功能
- ...
贡献
由于该项目目前正在开发中,欢迎捐款。请随时提交问题和拉取请求。