MCP Server for Milvus

MCP Server for Milvus

site icon
2025.03.10 6
Python向量数据库LLM 集成数据库
MCP Server for Milvus 是一个基于 Model Context Protocol (MCP) 的开源服务,旨在为大型语言模型 (LLM) 应用提供与 Milvus 向量数据库的无缝集成。该服务通过标准化的协议,使 LLM 应用能够轻松访问和操作 Milvus 数据库中的数据,支持多种搜索、查询和管理操作。
View on GitHub

Overview

基本能力

产品定位

MCP Server for Milvus 是一个中间件服务,专注于为 LLM 应用提供与 Milvus 向量数据库的集成能力,支持多种数据操作和搜索功能。

核心功能

  1. 搜索与查询操作
  2. 文本搜索 (milvus-text-search)
  3. 向量相似性搜索 (milvus-vector-search)
  4. 混合搜索 (milvus-hybrid-search)
  5. 多向量搜索 (milvus-multi-vector-search)
  6. 基于过滤表达式的查询 (milvus-query)
  7. 数据计数 (milvus-count)

  8. 集合管理

  9. 列出集合 (milvus-list-collections)
  10. 获取集合信息 (milvus-collection-info)
  11. 创建集合 (milvus-create-collection)
  12. 加载/释放集合 (milvus-load-collection, milvus-release-collection)

  13. 数据操作

  14. 插入数据 (milvus-insert-data, milvus-bulk-insert)
  15. 更新数据 (milvus-upsert-data)
  16. 删除数据 (milvus-delete-entities)
  17. 动态字段管理 (milvus-create-dynamic-field)

  18. 索引管理

  19. 创建索引 (milvus-create-index)
  20. 获取索引信息 (milvus-get-index-info)

适用场景

  1. AI 增强的 IDE:在代码编辑器中集成 Milvus 数据库,支持代码搜索和上下文感知。
  2. 聊天界面增强:通过 LLM 应用访问 Milvus 数据库,提供更丰富的上下文信息。
  3. 自定义 AI 工作流:构建基于 Milvus 的 AI 工作流,支持数据检索和管理。

使用教程

使用依赖

  1. Python 3.10 或更高版本
  2. 运行中的 Milvus 实例(本地或远程)
  3. 安装 uv(推荐用于运行服务器): bash pip install uv

安装教程

  1. 克隆仓库: bash git clone https://github.com/stephen37/mcp-server-milvus.git cd mcp-server-milvus

  2. 直接运行服务器: bash uv run src/mcp_server_milvus/server.py --milvus-uri http://localhost:19530

调试方式

  1. 验证集成:
  2. 在 Claude Desktop 或 Cursor 中检查 Milvus 工具是否列出。
  3. 查看服务器日志以排查错误。

  4. 常见问题:

  5. 连接错误:检查 Milvus 实例是否运行,URI 是否正确。
  6. 认证问题:验证 MILVUS_TOKEN 是否正确。
  7. 工具未找到:重启应用或刷新 MCP 设置。

工具列表

搜索与查询操作

  • milvus-text-search:全文搜索文档。
  • milvus-vector-search:向量相似性搜索。
  • milvus-hybrid-search:混合搜索(向量 + 属性过滤)。
  • milvus-multi-vector-search:多向量搜索。
  • milvus-query:基于过滤表达式的查询。
  • milvus-count:集合数据计数。

集合管理

  • milvus-list-collections:列出所有集合。
  • milvus-collection-info:获取集合详细信息。
  • milvus-create-collection:创建新集合。
  • milvus-load-collection:加载集合到内存。
  • milvus-release-collection:释放集合。

数据操作

  • milvus-insert-data:插入数据。
  • milvus-bulk-insert:批量插入数据。
  • milvus-upsert-data:更新或插入数据。
  • milvus-delete-entities:删除数据。
  • milvus-create-dynamic-field:添加动态字段。

索引管理

  • milvus-create-index:创建索引。
  • milvus-get-index-info:获取索引信息。

许可证

None