Home
Login

为Milvus向量数据库提供Model Context Protocol (MCP)服务器实现,实现AI应用与向量数据库的无缝集成

Apache-2.0Python 146zilliztechmcp-server-milvus Last Updated: 2025-06-05

mcp-server-milvus 项目详细介绍

项目概述

mcp-server-milvus 是由 Zilliz Tech 开发的一个开源项目,它为 Milvus 向量数据库提供了 Model Context Protocol (MCP) 服务器实现。该项目使得LLM应用能够通过标准化协议无缝集成和访问Milvus向量数据库的功能。

核心功能特性

支持的操作工具

该MCP服务器提供了以下核心工具:

  • milvus_text_search: 使用全文搜索功能搜索文档

    • 参数: collection_name, query_text, limit, output_fields, drop_ratio
  • milvus_vector_search: 在集合上执行向量相似性搜索

    • 参数: collection_name, vector, vector_field, limit, output_fields, metric_type
  • milvus_query: 使用过滤表达式查询集合

    • 参数: collection_name, filter_expr, output_fields, limit
  • milvus_list_collections: 列出数据库中的所有集合

  • milvus_create_collection: 创建具有指定模式的新集合

    • 参数: collection_name, collection_schema, index_params
  • milvus_load_collection: 将集合加载到内存中进行搜索和查询

    • 参数: collection_name, replica_number
  • milvus_release_collection: 从内存中释放集合

    • 参数: collection_name
  • milvus_insert_data: 向集合中插入数据

    • 参数: collection_name, data
  • milvus_delete_entities: 基于过滤表达式从集合中删除实体

    • 参数: collection_name, filter_expr

系统要求

  • Python 3.10 或更高版本
  • 运行中的 Milvus 实例(本地或远程)
  • uv 工具(推荐用于运行服务器)

安装和配置

克隆项目

git clone https://github.com/zilliztech/mcp-server-milvus.git
cd mcp-server-milvus

直接运行服务器

推荐的方式是使用 uv 直接运行服务器,无需安装:

uv run src/mcp_server_milvus/server.py --milvus-uri http://localhost:19530

或者通过设置 .env 文件中的环境变量:

uv run src/mcp_server_milvus/server.py

支持的客户端应用

该MCP服务器可以与多种支持Model Context Protocol的LLM应用程序配合使用:

Claude Desktop 集成

  1. 安装 Claude Desktop
  2. 配置 claude_desktop_config.json 文件:
{
  "mcpServers": {
    "milvus": {
      "command": "/PATH/TO/uv",
      "args": [
        "--directory",
        "/path/to/mcp-server-milvus/src/mcp_server_milvus",
        "run",
        "server.py",
        "--milvus-uri",
        "http://localhost:19530"
      ]
    }
  }
}

Cursor 编辑器集成

Cursor 支持两种配置方式:

方式一:通过GUI配置

  1. 进入 Cursor Settings > Features > MCP
  2. 点击 "+ Add New MCP Server" 按钮
  3. 填写表单:
    • Type: 选择 stdio
    • Name: milvus
    • Command: /PATH/TO/uv --directory /path/to/mcp-server-milvus/src/mcp_server_milvus run server.py --milvus-uri http://127.0.0.1:19530

方式二:配置文件

创建 .cursor/mcp.json 文件:

{
  "mcpServers": {
    "milvus": {
      "command": "/PATH/TO/uv",
      "args": [
        "--directory",
        "/path/to/mcp-server-milvus/src/mcp_server_milvus",
        "run",
        "server.py",
        "--milvus-uri",
        "http://127.0.0.1:19530"
      ]
    }
  }
}

环境变量配置

  • MILVUS_URI: Milvus 服务器 URI(可替代 --milvus-uri 参数)
  • MILVUS_TOKEN: 可选的认证令牌
  • MILVUS_DB: 数据库名称(默认为 "default")

使用示例

在 Claude Desktop 中的使用

用户可以通过自然语言与 Milvus 数据库交互:

查询集合列表:

What are the collections I have in my Milvus DB?

搜索文档:

Find documents in my text_collection that mention "machine learning"

在 Cursor 中的使用

创建新集合:

Create a new collection called 'articles' in Milvus with fields for title (string), content (string), and a vector field (128 dimensions)

故障排除

连接问题

  • 验证 Milvus 实例正在运行
  • 检查 URI 配置是否正确
  • 确保防火墙规则不会阻止连接
  • 尝试使用 127.0.0.1 而不是 localhost

认证问题

  • 验证 MILVUS_TOKEN 是否正确
  • 检查 Milvus 实例是否需要认证
  • 确保具有执行操作的正确权限

技术架构

该项目基于 Python 开发,采用了现代化的开发工具链:

  • 使用 uv 作为包管理和运行工具
  • 遵循 MCP 标准协议规范
  • 提供完整的 Milvus 数据库操作封装
  • 支持多种 AI 应用客户端

应用场景

该项目主要适用于以下场景:

  • AI 驱动的代码编辑器增强
  • 聊天界面的上下文增强
  • 自定义 AI 工作流构建
  • 向量数据库与 LLM 的集成
  • 语义搜索和 RAG(检索增强生成)应用

通过 mcp-server-milvus,开发者可以轻松地将 Milvus 向量数据库的强大功能集成到各种 AI 应用中,为用户提供更智能、更准确的交互体验。

Star History Chart