Milvus MCP Server
Servidor MCP de Milvus
Este programa es un servicio de acceso a la base de datos vectorial Milvus diseñado para modelos de lenguaje grandes (LLM) que sigue el protocolo Model Context Protocol (MCP). Puede utilizarse como una herramienta externa de interacción con bases de datos vectoriales para LLMs (como Antigravity).
Es compatible con la base de datos vectorial Milvus 2.6 e incluye un servicio de Embedding compatible con OpenAI (como Tongyi Qianwen text-embedding-v4), lo que permite a los modelos realizar búsquedas semánticas directamente mediante lenguaje natural.
💡 Aspectos destacados
Búsqueda vectorial: Admite búsqueda semántica mediante entrada de texto (con embedding automático) y búsqueda vectorial pura.
Embedding integrado: Punto de conexión compatible con OpenAI integrado; el modelo recibe texto y lo convierte automáticamente en vectores, sin necesidad de servicios externos.
Gestión del ciclo de vida de colecciones: Crear, ver y eliminar colecciones; al crear, se indexan y cargan automáticamente.
Lectura y escritura de datos: Admite la inserción de datos vectoriales y la eliminación basada en condiciones.
Gestión de conexiones múltiples: Define múltiples conexiones con nombre a través de un archivo de configuración JSON; una sola instancia del servidor MCP puede servir a múltiples instancias de Milvus.
Diseño de seguridad:
drop_collectionydelete_entitiesfuncionan como herramientas independientes que pueden activarse o desactivarse por separado en el cliente MCP;drop_collectionrequiere adicionalmente el parámetroconfirmDrop=truecomo medida de seguridad doble.Búsqueda híbrida: Admite consultas combinadas de búsqueda de similitud vectorial + filtrado escalar.
Related MCP server: MCP Server MySQL
⚙️ Requisitos del entorno
Entorno Node.js: Se requiere Node.js versión v18 o superior.
Instancia de Milvus: Se requiere una instancia de servicio de Milvus 2.6 accesible.
API de Embedding: Se requiere un punto de conexión de Embedding compatible con OpenAI (como la plataforma Bailian de Tongyi Qianwen).
Paquetes de dependencias: Es necesario ejecutar
npm install --omit=deven la máquina donde se ejecute.
🛠 Instalación y construcción
1. Construcción desde el código fuente
npm install
npm run buildLos artefactos compilados se guardarán en el directorio ./dist.
2. Instalación global local
npm linkUna vez ejecutado, puede utilizar el comando global milvus-mcp-server en cualquier parte del sistema para invocar rápidamente el servicio.
📝 Archivo de configuración
Utilice un archivo JSON para configurar las conexiones de Milvus y el servicio de Embedding.
Ejemplo de archivo de configuración
{
"connections": [
{
"name": "my-milvus",
"address": "localhost:19530",
"username": "root",
"password": "Milvus",
"database": "default",
"description": "本地开发 Milvus 实例,存储文档和图片的向量索引"
}
],
"embedding": {
"baseUrl": "https://dashscope.aliyuncs.com/compatible-mode/v1",
"apiKey": "sk-your-api-key",
"model": "text-embedding-v4",
"dimensions": 1024
}
}Descripción de los campos de conexión
Campo | Tipo | Obligatorio | Descripción |
| string | ✅ | Identificador único de la conexión |
| string | ✅ | Dirección del servicio Milvus, formato |
| string | ✅ | Nombre de usuario |
| string | ✅ | Contraseña |
| string | ❌ | Nombre de la base de datos, por defecto |
| string | ❌ | Descripción comercial de la conexión |
Descripción de los campos de Embedding
Campo | Tipo | Obligatorio | Descripción |
| string | ✅ | Punto de conexión de la API compatible con OpenAI |
| string | ✅ | Clave de API |
| string | ✅ | Nombre del modelo, ej. |
| number | ✅ | Dimensiones del vector de salida. text-embedding-v4 admite: 2048, 1536, 1024, 768, 512, 256, 128, 64 |
🚀 Inicio y uso
milvus-mcp-server --config <path-to-config.json>Lista de parámetros:
-c, --config <path>: Ruta del archivo de configuración (obligatorio).
🧠 Ejemplo de configuración del cliente MCP
Tomando como ejemplo la configuración de un cliente MCP convencional (como Antigravity):
{
"mcpServers": {
"MilvusMCP": {
"command": "node",
"args": [
"绝对路径/milvus_mcp_server/dist/index.js",
"--config", "绝对路径/milvus-config.json"
]
}
}
}🧰 Herramientas que el modelo puede invocar (Tools)
1. list_milvus_connections
Descripción: Lista toda la información de las conexiones de Milvus configuradas (anonimizada, sin contraseñas).
Parámetros: Ninguno.
2. list_collections
Descripción: Lista todas las colecciones bajo una conexión específica.
Parámetros:
connectionName(String): Nombre de la conexión objetivo.
3. describe_collection
Descripción: Obtiene información detallada del esquema de la colección, incluyendo definiciones de campos, índices y estadísticas de filas.
Parámetros:
connectionName(String): Nombre de la conexión objetivo.collectionName(String): Nombre de la colección.
4. create_collection
Descripción: Crea una nueva colección. Crea automáticamente un índice AUTOINDEX para el campo vectorial y carga la colección para que sea inmediatamente buscable.
Parámetros:
connectionName(String): Nombre de la conexión objetivo.collectionName(String): Nombre de la nueva colección.description(String, opcional): Descripción de la colección.fields(Array): Matriz de definiciones de campos, cada elemento incluyename,dataType,isPrimaryKey?,autoId?,dimension?,maxLength?,description?.
5. drop_collection
Descripción: Elimina permanentemente una colección y todos sus datos. Operación irreversible.
Parámetros:
connectionName(String): Nombre de la conexión objetivo.collectionName(String): Nombre de la colección a eliminar.confirmDrop(Boolean): Debe establecerse entruepara ejecutar la eliminación. Mecanismo de doble confirmación de seguridad.
Control de interruptor: Esta herramienta puede habilitarse o deshabilitarse por separado en el cliente MCP.
6. insert_vectors
Descripción: Inserta datos en una colección. Cada dato es un objeto JSON que contiene los valores de cada campo (incluyendo el campo vectorial).
Parámetros:
connectionName(String): Nombre de la conexión objetivo.collectionName(String): Nombre de la colección objetivo.data(Array): Matriz de datos.
7. delete_entities
Descripción: Elimina entidades según una expresión de filtro.
Parámetros:
connectionName(String): Nombre de la conexión objetivo.collectionName(String): Nombre de la colección objetivo.filter(String): Expresión de filtro de Milvus, ej.'id in [1, 2, 3]'.
Control de interruptor: Esta herramienta puede habilitarse o deshabilitarse por separado en el cliente MCP.
8. vector_search
Descripción: Búsqueda de similitud vectorial. Admite la entrada de texto (llama automáticamente al servicio de Embedding para convertirlo en vector) o vectores originales.
Parámetros:
connectionName(String): Nombre de la conexión objetivo.collectionName(String): Nombre de la colección objetivo.text(String, opcional): Texto de búsqueda, alternativo avector.vector(Number[], opcional): Vector de búsqueda original, alternativo atext.topK(Number, opcional): Número de resultados a devolver, por defecto 10.filter(String, opcional): Expresión de filtro escalar.outputFields(String[], opcional): Lista de campos a devolver.
9. query_entities
Descripción: Consulta entidades según condiciones escalares, sin involucrar búsqueda vectorial.
Parámetros:
connectionName(String): Nombre de la conexión objetivo.collectionName(String): Nombre de la colección objetivo.filter(String): Expresión de filtro de Milvus.outputFields(String[], opcional): Lista de campos a devolver.limit(Number, opcional): Número máximo de resultados a devolver, por defecto 100.
10. hybrid_search
Descripción: Consulta combinada de búsqueda vectorial + filtrado escalar. La diferencia con
vector_searches quefilteres un parámetro obligatorio.Parámetros:
connectionName(String): Nombre de la conexión objetivo.collectionName(String): Nombre de la colección objetivo.text(String, opcional): Texto de búsqueda, alternativo avector.vector(Number[], opcional): Vector de búsqueda original, alternativo atext.filter(String): Obligatorio, expresión de filtro escalar.topK(Number, opcional): Número de resultados a devolver, por defecto 10.outputFields(String[], opcional): Lista de campos a devolver.
This server cannot be deployed
Maintenance
Related MCP Connectors
Ingest, manage, and retrieve documents for RAG-powered AI applications
Your AI Agent's Infrastructure Layer. Connect Claude, Copilot, Codex, or ChatGPT to 200+ managed open source services. Start databases, pipelines, and applications through natural language.
Ask data questions in natural language. Get SQL, insights, and charts from your databases.
Universal persistent memory and knowledge retrieval layer for AI agents and LLMs.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceEnables semantic search and document management using a local Qdrant vector database with OpenAI embeddings. Supports natural language queries, metadata filtering, and collection management for AI-powered document retrieval.70 npm37MIT
- AlicenseAqualityCmaintenanceEnables LLMs to interact with MySQL databases through standardized protocol, supporting database management, table operations, data queries, and modifications with configurable permission controls.1548 npm1MIT

Zilliz MCP Serverofficial
AlicenseAqualityCmaintenanceEnables AI agents to interact with Milvus vector databases and Zilliz Cloud through natural language, allowing users to create clusters, manage collections, insert vector data, and perform semantic searches directly from their AI assistants.1633Apache 2.0- FlicenseNot gradedqualityDmaintenanceEnables LLMs to interact with Milvus vector database for search, query, and collection management operations.8-