README
🚀 mcp-lance-db:LanceDB 的 MCP 服务器
模型上下文协议(MCP) 是一个开放协议,它让大语言模型(LLM)应用程序与外部数据源和工具实现无缝集成。无论你是在构建由 AI 驱动的集成开发环境(IDE)、增强聊天界面,还是创建自定义 AI 工作流,MCP 都提供了一种标准化方式,用于连接 LLM 与其所需的上下文。
此仓库展示了如何为 LanceDB(一个嵌入式向量数据库)创建一个 MCP 服务器。
🚀 快速开始
在 Claude Desktop 上运行
- MacOS 系统:配置文件路径为
~/Library/Application\ 支持/Claude/claude_desktop_config.json。 - Windows 系统:配置文件路径为
%APPDATA%/Claude/claude_desktop_config.json%。
配置内容如下:
{
"lancedb": {
"command": "uvx",
"args": [
"mcp-lance-db"
]
}
}
✨ 主要特性
这是一个基础的模型上下文协议服务器,用于在 LanceDB 向量数据库中存储和检索记忆。它充当语义记忆层,允许存储文本及其嵌入向量,以便后续检索。
🔧 技术细节
组件 - 工具
该服务器实现了两个工具:
- add - memory:向向量数据库添加新的记忆。
- 接收一个必填的字符串参数
"content"。 - 存储文本,以便以后通过其嵌入向量进行检索。
- 接收一个必填的字符串参数
- search - memories:检索语义上相似的记忆。
- 接收一个必填的字符串参数
"query"。 - 有可选的
"limit"参数,用于控制结果数量(默认值为 5)。 - 返回与查询在语义上相似度排名的记忆。
- 更新服务器状态并通知客户端资源更改。
- 接收一个必填的字符串参数
配置
该服务器使用的配置如下:
| 属性 | 详情 |
| ---- | ---- |
| 数据库路径 | "./lancedb" |
| 收藏集名称 | "memories" |
| 嵌入提供程序 | "sentence - transformers" |
| 模型 | "BAAI/bge - small - en - v1.5" |
| 设备 | "cpu" |
| 相似度阈值 | 0.7(距离范围的上限) |
💻 使用示例
开发 - 构建和发布
要准备分发包,可按以下步骤操作:
基础用法
- 同步依赖项并更新锁定文件:
uv sync
高级用法
- 构建包发行版本:
# 构建包发行版本,会在 dist/ 目录下创建源代码和轮格式发行版
uv build
- 发布到 PyPI:
# 发布到 PyPI,需要通过环境变量或命令行参数设置 PyPI 资质信息
uv publish
注意:您需要通过环境变量或命令行参数设置 PyPI 资质信息:
- 令牌:
--token或UV_PUBLISH_TOKEN - 或者用户名/密码:
--username/UV_PUBLISH_USERNAME和--password/UV_PUBLISH_PASSWORD
开发 - 调试
由于 MCP 服务器通过标准输入输出运行,调试可能具有挑战性。为了获得最佳的调试体验,我们强烈推荐使用 MCP Inspector。
基础用法
您可以通过以下命令启动 MCP Inspector:
npx @modelcontextprotocol/inspector uv --directory $(PWD) run mcp-lance-db
启动后,Inspector 会显示一个 URL,您可以将其在浏览器中打开以开始调试。
Scan to contact