使用说明
项目简介
本项目是基于 Model Context Protocol (MCP) 实现的服务器,旨在为LLM(大型语言模型)应用提供与 Milvus 向量数据库交互的能力。通过该服务器,LLM应用可以方便地利用Milvus进行向量检索、数据管理等操作,从而扩展LLM的应用场景,例如增强AI代码编辑器、聊天界面或构建自定义AI工作流。
主要功能点
- 向量检索: 支持在Milvus数据库中执行高效的向量相似度搜索、混合搜索和全文检索,帮助LLM应用快速查找相关信息。
- 集合管理: 提供创建、查询、加载、释放和删除Milvus集合的功能,方便LLM应用管理向量数据。
- 数据操作: 支持向Milvus集合中插入、更新、删除数据,以及批量数据操作,满足LLM应用对数据进行动态管理的需求。
- 索引管理: 允许LLM应用创建和查询Milvus集合的索引,优化检索性能。
- 统计信息: 提供获取Milvus集合统计信息的功能,帮助LLM应用了解数据状态。
- 动态字段: 支持在Milvus集合中创建动态字段,提高数据灵活性。
- 标准MCP协议: 遵循MCP协议标准,易于集成到支持MCP协议的LLM客户端。
安装步骤
本项目无需安装,只需克隆仓库即可运行。
- 克隆仓库
git clone https://github.com/zilliztech/mcp-server-milvus.git cd mcp-server-milvus
服务器配置
要将此MCP服务器与MCP客户端(如Claude Desktop或Cursor)连接,您需要配置客户端以启动并连接到此服务器。以下是配置信息示例,通常需要以JSON格式添加到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://localhost:19530" ] } } }
参数注释
- 'server name': 'milvus' (服务器名称,在MCP客户端配置中用于标识和引用此服务器)
- 'command': '/PATH/TO/uv' (启动服务器的命令。请将 '/PATH/TO/uv' 替换为实际 'uv' 可执行文件的路径。如果未安装 'uv',可以使用 'python3' 或 'python',并相应修改命令)
- 'args': (命令参数列表,用于配置服务器行为)
- '--directory': '/path/to/mcp-server-milvus/src/mcp_server_milvus' (指定服务器代码所在的目录。请将 '/path/to/mcp-server-milvus/src/mcp_server_milvus' 替换为克隆仓库后 'src/mcp_server_milvus' 目录的绝对路径)
- 'run': 'server.py' (指定运行 'server.py' 文件,启动MCP服务器)
- '--milvus-uri': 'http://localhost:19530' (Milvus 服务器的URI地址。请将 'http://localhost:19530' 替换为实际 Milvus 服务可访问的地址和端口)
注意:
- 确保已安装 uv 或 Python 环境。
- 确保 Milvus 数据库实例已运行并可访问。
- 根据您的实际环境,修改 'command' 和 'args' 中的路径和 Milvus URI。
- 某些MCP客户端可能需要重启或刷新MCP服务器列表才能加载新的配置。
基本使用方法
-
启动服务器: 根据上述配置,在终端中使用 'uv' 或 'python' 命令启动 'server.py' 文件,并确保指定正确的 '--milvus-uri' 参数。
uv run src/mcp_server_milvus/server.py --milvus-uri http://localhost:19530或
python3 src/mcp_server_milvus/server.py --milvus-uri http://localhost:19530 -
配置MCP客户端: 将上述 JSON 格式的配置信息添加到您使用的 MCP 客户端(如 Claude Desktop 或 Cursor)的配置文件中。具体配置方法请参考客户端的文档。
-
在LLM应用中使用: 配置完成后,您可以在支持 MCP 协议的 LLM 应用中,通过自然语言指令或操作来调用 Milvus 数据库的功能。例如,在 Claude Desktop 中,您可以提问 "What are the collections I have in my Milvus DB?" 来列出 Milvus 中的集合。客户端会自动识别并调用 MCP 服务器提供的工具来执行相应的 Milvus 操作,并将结果返回给您。
信息
分类
数据库与文件