Login

Proporciona una implementación del servidor Model Context Protocol (MCP) para la base de datos de vectores Milvus, logrando una integración perfecta de aplicaciones de IA con la base de datos de vectores.

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

Introducción detallada al proyecto mcp-server-milvus

Resumen del proyecto

mcp-server-milvus es un proyecto de código abierto desarrollado por Zilliz Tech que proporciona una implementación de servidor Model Context Protocol (MCP) para la base de datos vectorial Milvus. Este proyecto permite que las aplicaciones LLM se integren y accedan sin problemas a las funcionalidades de la base de datos vectorial Milvus a través de un protocolo estandarizado.

Características y funcionalidades principales

Herramientas operativas compatibles

El servidor MCP proporciona las siguientes herramientas principales:

  • milvus_text_search: Busca documentos utilizando la funcionalidad de búsqueda de texto completo.

    • Parámetros: collection_name, query_text, limit, output_fields, drop_ratio
  • milvus_vector_search: Realiza búsquedas de similitud vectorial en una colección.

    • Parámetros: collection_name, vector, vector_field, limit, output_fields, metric_type
  • milvus_query: Consulta una colección utilizando una expresión de filtro.

    • Parámetros: collection_name, filter_expr, output_fields, limit
  • milvus_list_collections: Lista todas las colecciones en la base de datos.

  • milvus_create_collection: Crea una nueva colección con un esquema especificado.

    • Parámetros: collection_name, collection_schema, index_params
  • milvus_load_collection: Carga una colección en la memoria para búsqueda y consulta.

    • Parámetros: collection_name, replica_number
  • milvus_release_collection: Libera una colección de la memoria.

    • Parámetros: collection_name
  • milvus_insert_data: Inserta datos en una colección.

    • Parámetros: collection_name, data
  • milvus_delete_entities: Elimina entidades de una colección basándose en una expresión de filtro.

    • Parámetros: collection_name, filter_expr

Requisitos del sistema

  • Python 3.10 o superior
  • Una instancia de Milvus en ejecución (local o remota)
  • Herramienta uv (recomendada para ejecutar el servidor)

Instalación y configuración

Clonar el proyecto

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

Ejecutar el servidor directamente

La forma recomendada es usar uv para ejecutar el servidor directamente, sin necesidad de instalación:

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

O configurando las variables de entorno en un archivo .env:

uv run src/mcp_server_milvus/server.py

Aplicaciones cliente compatibles

El servidor MCP puede funcionar con varias aplicaciones LLM que admiten el protocolo Model Context Protocol:

Integración con Claude Desktop

  1. Instalar Claude Desktop
  2. Configurar el archivo claude_desktop_config.json:
{
  "mcpServers": {
    "milvus": {
      "command": "/RUTA/A/uv",
      "args": [
        "--directory",
        "/ruta/a/mcp-server-milvus/src/mcp_server_milvus",
        "run",
        "server.py",
        "--milvus-uri",
        "http://localhost:19530"
      ]
    }
  }
}

Integración con el editor Cursor

Cursor admite dos métodos de configuración:

Método 1: Configuración a través de la GUI

  1. Ir a Cursor Settings > Features > MCP
  2. Hacer clic en el botón "+ Add New MCP Server"
  3. Rellenar el formulario:
    • Type: Seleccionar stdio
    • Name: milvus
    • Command: /RUTA/A/uv --directory /ruta/a/mcp-server-milvus/src/mcp_server_milvus run server.py --milvus-uri http://127.0.0.1:19530

Método 2: Archivo de configuración

Crear el archivo .cursor/mcp.json:

{
  "mcpServers": {
    "milvus": {
      "command": "/RUTA/A/uv",
      "args": [
        "--directory",
        "/ruta/a/mcp-server-milvus/src/mcp_server_milvus",
        "run",
        "server.py",
        "--milvus-uri",
        "http://127.0.0.1:19530"
      ]
    }
  }
}

Configuración de variables de entorno

  • MILVUS_URI: URI del servidor Milvus (alternativa al parámetro --milvus-uri)
  • MILVUS_TOKEN: Token de autenticación opcional
  • MILVUS_DB: Nombre de la base de datos (por defecto "default")

Ejemplos de uso

Uso en Claude Desktop

Los usuarios pueden interactuar con la base de datos Milvus a través del lenguaje natural:

Consultar la lista de colecciones:

What are the collections I have in my Milvus DB?

Buscar documentos:

Find documents in my text_collection that mention "machine learning"

Uso en Cursor

Crear una nueva colección:

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

Resolución de problemas

Problemas de conexión

  • Verificar que la instancia de Milvus se esté ejecutando
  • Comprobar que la configuración del URI sea correcta
  • Asegurarse de que las reglas del firewall no impidan la conexión
  • Intentar usar 127.0.0.1 en lugar de localhost

Problemas de autenticación

  • Verificar que MILVUS_TOKEN sea correcto
  • Comprobar si la instancia de Milvus requiere autenticación
  • Asegurarse de tener los permisos correctos para realizar la operación

Arquitectura técnica

El proyecto está desarrollado en Python y utiliza una cadena de herramientas de desarrollo moderna:

  • Utiliza uv como herramienta de gestión de paquetes y ejecución
  • Sigue las especificaciones del protocolo estándar MCP
  • Proporciona una encapsulación completa de las operaciones de la base de datos Milvus
  • Admite varios clientes de aplicaciones de IA

Casos de uso

Este proyecto es principalmente adecuado para los siguientes escenarios:

  • Mejora de editores de código impulsada por IA
  • Mejora del contexto de las interfaces de chat
  • Construcción de flujos de trabajo de IA personalizados
  • Integración de bases de datos vectoriales con LLM
  • Búsqueda semántica y aplicaciones RAG (Retrieval Augmented Generation)

A través de mcp-server-milvus, los desarrolladores pueden integrar fácilmente la potente funcionalidad de la base de datos vectorial Milvus en varias aplicaciones de IA, proporcionando a los usuarios una experiencia de interacción más inteligente y precisa.

Star History Chart