README
🚀 项目代号:Aleph - 10 向量内存 MCP 服务器
Aleph - 10 是一款融合天气数据服务与向量存储功能的 Model Context Protocol (MCP) 服务器。它提供了一系列工具,可用于获取天气信息,并通过向量嵌入技术对语义记忆进行管理。
🚀 快速开始
Aleph - 10 结合了天气数据服务与向量存储功能,能帮助你轻松获取天气信息并管理语义记忆。以下是快速上手的步骤:
依赖项
- Node.js 18.x 或更高版本
- pnpm 包管理器
安装
- 克隆仓库
git clone https://github.com/yourusername/aleph-10.git
cd aleph-10
- 安装依赖项
pnpm install
- 配置环境变量(在项目根目录创建
.env文件)
EMBEDDING_PROVIDER=gemini
GEMINI_API_KEY=your_gemini_api_key
VECTOR_DB_PATH=./data/vector_db
LOG_LEVEL=info
- 构建项目
pnpm build
- 运行服务器
node build/index.js
✨ 主要特性
- 天气信息:借助美国国家气象局 API,获取天气警报和预报。
- 向量内存:运用语义搜索功能,实现信息的存储和检索。
- 多种嵌入选项:支持基于云的(Google Gemini)和本地(Ollama)嵌入提供程序。
- 元数据支持:可添加和过滤元数据,实现高效的记忆管理。
💻 使用示例
基础用法
该服务器实现了 Model Context Protocol 并提供以下工具:
天气工具
-
get - alerts:获取特定美国州的天气警报
- 参数:
state(两位字母州代码)
- 参数:
-
get - forecast:获取位置的天气预报
- 参数:
latitude和longitude
- 参数:
记忆工具
-
memory - store:将信息存储在向量数据库中
- 参数:
text(内容),metadata(可选关联数据)
- 参数:
-
memory - retrieve:检索语义相似的信息
- 参数:
query(搜索文本),limit(结果最大值),filters(元数据过滤器)
- 参数:
-
memory - update:更新现有记忆条目
- 参数:
id(记忆 ID),text(新内容),metadata(更新的元数据)
- 参数:
-
memory - delete:从数据库中删除条目
- 参数:
id(要删除的记忆 ID)
- 参数:
-
memory - stats:获取有关存储的信息统计信息
- 参数:无
📚 详细文档
配置选项
以下环境变量可用于配置服务器行为:
| 变量名称 | 描述 | 默认值 |
|--------------------------|--------------------------|--------------------|
| EMBEDDING_PROVIDER | 指定嵌入提供程序(gemini 或 ollama) | gemini |
| GEMINI_API_KEY | Google Gemini API 密钥 | |
| VECTOR_DB_PATH | 向量数据库路径 | ./data/vector_db|
| LOG_LEVEL | 设置日志级别(debug、info、warn、error) | info |
项目结构
以下是项目的目录结构:
aleph-10/
├── src/ # 源代码
│ ├── server.js # 主服务器文件
│ └── vector-store.js # 向量存储实现
├── package.json # 包依赖和脚本
└── .env # 环境变量配置
测试
要运行测试,可以使用以下命令:
pnpm test
在监视模式下运行测试:
pnpm test:watch
📄 许可证
该项目受 MIT License 保护。
致谢
感谢以下项目和工具:
- Google Gemini - 提供强大的向量嵌入功能
- Ollama - 提供本地向量存储支持
- Node.js 和 pnpm - 基础运行时和依赖管理
该项目由 Your Name 开发,旨在提供一个灵活且强大的记忆管理和天气信息工具。
Scan to join WeChat group