PyMilvus Code Generate Helper
Recupera fragmentos de código y documentos relevantes para ayudar a generar código PyMilvus, requiriendo una instancia de Milvus en ejecución.
Documentación
milvus-sdk-code-helper
Un servidor de Model Context Protocol que recupera fragmentos de código o documentos relevantes para ayudar a generar código pymilvus.


Requisitos previos
Antes de usar este servidor MCP, asegúrate de tener:
- Python 3.10 o superior
- Una instancia de Milvus en ejecución (local o remota)
- uv instalado (recomendado para ejecutar el servidor)
Inicio rápido con FastMCP
La forma recomendada de usar este servidor MCP es a través de FastMCP, que proporciona mejor rendimiento y una configuración más sencilla.
Primera configuración (con actualización de documentos)
Para la primera ejecución del servidor, usa el servidor FastMCP principal, que actualizará automáticamente la base de datos de documentos:
uv run src/mcp_pymilvus_code_generate_helper/fastmcp_server.py
Esto:
- Se conectará a tu instancia de Milvus (predeterminado: http://localhost:19530)
- Descargará y procesará la documentación más reciente de Milvus
- Iniciará el servidor MCP con las tres herramientas disponibles
Configuración personalizada
# Connect to remote Milvus server
uv run src/mcp_pymilvus_code_generate_helper/fastmcp_server.py --milvus_uri http://your-server:19530 --milvus_token your_token
# Change server host and port
uv run src/mcp_pymilvus_code_generate_helper/fastmcp_server.py --host 0.0.0.0 --port 8080
# Use different transport (default is http)
uv run src/mcp_pymilvus_code_generate_helper/fastmcp_server.py --transport sse
Ejecuciones posteriores (modo ligero)
Después de la configuración inicial, puedes usar el servidor FastMCP ligero para un inicio más rápido:
uv run examples/fastmcp_server.py
Esta versión ligera:
- Omite la sincronización de documentos
- Se inicia inmediatamente sin tareas en segundo plano
- Asume que los documentos ya están cargados en Milvus
Opciones del servidor ligero
# Custom configuration for lightweight server
uv run examples/fastmcp_server.py --milvus_uri http://your-server:19530 --host 0.0.0.0 --port 8080 --transport http
Características clave
- Obtiene e indexa automáticamente la versión más reciente de la documentación de Milvus (可以获取最新文档版本)
- Actualización automática semanal mediante un programador ligero en segundo plano
Uso con Cursor
- Ve a
Cursor>Settings>MCP - Haz clic en el botón
+ Add New Global MCP Server - Configura según el modo elegido:
Para transporte HTTP (recomendado)
{
"mcpServers": {
"milvus-sdk-code-helper": {
"url": "http://localhost:8000/mcp"
}
}
}
Para transporte SSE
{
"mcpServers": {
"milvus-sdk-code-helper": {
"url": "http://localhost:8000"
}
}
}
Para transporte STDIO
{
"mcpServers": {
"milvus-sdk-code-helper": {
"command": "/PATH/TO/uv",
"args": [
"--directory",
"/path/to/milvus-sdk-code-helper",
"run",
"examples/fastmcp_server.py",
"--transport",
"stdio",
"--milvus_uri",
"http://localhost:19530"
],
"env": {
"OPENAI_API_KEY": "YOUR_OPENAI_API_KEY"
}
}
}
}
Uso con Claude Desktop
- Instala Claude Desktop desde https://claude.ai/download
- Abre la configuración de Claude Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
- Agrega la siguiente configuración:
Para transporte HTTP
{
"mcpServers": {
"milvus-sdk-code-helper": {
"url": "http://localhost:8000/mcp"
}
}
}
Para transporte STDIO
{
"mcpServers": {
"milvus-sdk-code-helper": {
"command": "/PATH/TO/uv",
"args": [
"--directory",
"/path/to/milvus-sdk-code-helper",
"run",
"examples/fastmcp_server.py",
"--transport",
"stdio",
"--milvus_uri",
"http://localhost:19530"
],
"env": {
"OPENAI_API_KEY": "YOUR_OPENAI_API_KEY"
}
}
}
}
- Reinicia Claude Desktop
⚠️ Nota: Recuerda establecer la variable de entorno
OPENAI_API_KEYcuando uses el transporte STDIO.
Uso con Claude Code (VS Code)
Usando CLI (recomendado)
# HTTP (recommended)
claude mcp add --transport http milvus-sdk-code-helper http://localhost:8000/mcp
# SSE
claude mcp add --transport sse milvus-sdk-code-helper http://localhost:8000
# STDIO
claude mcp add milvus-sdk-code-helper /ABS/PATH/TO/uv -- \
--directory /ABS/PATH/TO/milvus-sdk-code-helper \
run examples/fastmcp_server.py --transport stdio --milvus_uri http://localhost:19530
Configuración manual
- Global (
~/.claude.json) – transporte HTTP
{
"mcpServers": {
"milvus-sdk-code-helper": {
"type": "http",
"url": "http://localhost:8000/mcp"
}
}
}
- Proyecto (
.mcp.jsonen la raíz del proyecto) – transporte STDIO
{
"mcpServers": {
"milvus-sdk-code-helper": {
"type": "stdio",
"command": "/ABS/PATH/TO/uv",
"args": [
"--directory",
"/ABS/PATH/TO/milvus-sdk-code-helper",
"run",
"examples/fastmcp_server.py",
"--transport",
"stdio",
"--milvus_uri",
"http://localhost:19530"
],
"env": {
"OPENAI_API_KEY": "YOUR_OPENAI_API_KEY"
}
}
}
}
Uso con Gemini CLI (como servidor MCP)
Puedes agregar un servidor MCP de Gemini junto a este proyecto en el mismo cliente. Esto es opcional e independiente de este servidor.
Herramientas disponibles
El servidor proporciona tres herramientas potentes para la generación y traducción de código Milvus:
1. milvus_code_generator
Genera o proporciona código de muestra PyMilvus/Milvus basado en entrada de lenguaje natural.
- Cuándo usarlo: Generación de código, solicitudes de código de muestra, consultas de "cómo escribir"
- Parámetros:
query: Tu solicitud en lenguaje natural para la generación de código
- Ejemplo: "Genera código pymilvus para búsqueda híbrida"

2. orm_client_code_convertor
Convierte entre formatos de código ORM y cliente PyMilvus.
- Cuándo usarlo: Conversión entre estilos ORM y cliente, adaptación de formato
- Parámetros:
query: Lista de nombres de API de Milvus para convertir (por ejemplo,["create_collection", "insert"])
- Ejemplo: "Convierte código ORM a cliente PyMilvus"

3. milvus_code_translator
Traduce código Milvus entre diferentes lenguajes de programación.
- Cuándo usarlo: Traducción de código entre lenguajes
- Parámetros:
query: Lista de nombres de API de Milvus en formato de comillas dobles escapadas (por ejemplo,[\"create_collection\", \"insert\", \"search\"])source_language: Lenguaje de programación de origen (python, java, go, csharp, node, restful)target_language: Lenguaje de programación de destino (python, java, go, csharp, node, restful)
- Ejemplo: "Traduce código Python de Milvus a Java"

⚠️ Importante: No necesitas especificar nombres de herramientas o parámetros manualmente. Solo describe tus requisitos de forma natural, y el sistema MCP seleccionará automáticamente la herramienta adecuada y preparará los parámetros necesarios.
Modos de transporte heredados
Para compatibilidad con versiones anteriores, el servidor también admite modos de transporte SSE y STDIO:
Transporte SSE
# Start SSE server
uv run src/mcp_pymilvus_code_generate_helper/sse_server.py --milvus_uri http://localhost:19530
# Cursor configuration for SSE
{
"mcpServers": {
"milvus-sdk-code-helper": {
"url": "http://localhost:23333/milvus-code-helper/sse"
}
}
}
Transporte STDIO
# Start STDIO server
uv run src/mcp_pymilvus_code_generate_helper/stdio_server.py --milvus_uri http://localhost:19530
# Cursor configuration for STDIO
{
"mcpServers": {
"milvus-sdk-code-helper": {
"command": "/PATH/TO/uv",
"args": [
"--directory",
"/path/to/milvus-sdk-code-helper",
"run",
"src/mcp_pymilvus_code_generate_helper/stdio_server.py",
"--milvus_uri",
"http://localhost:19530"
],
"env": {
"OPENAI_API_KEY": "YOUR_OPENAI_API_KEY"
}
}
}
}
Soporte Docker
También puedes ejecutar el servidor usando Docker:
Construir la imagen Docker
docker build -t milvus-code-helper .
Ejecutar con FastMCP (recomendado)
# First time run with document update
docker run -p 8000:8000 \
-e OPENAI_API_KEY=your_openai_key \
-e MILVUS_URI=http://your-milvus-host:19530 \
-e MILVUS_TOKEN=your_milvus_token \
milvus-code-helper
# Lightweight mode for subsequent runs
docker run -p 8000:8000 \
-e OPENAI_API_KEY=your_openai_key \
-e MILVUS_URI=http://your-milvus-host:19530 \
-e MILVUS_TOKEN=your_milvus_token \
milvus-code-helper examples/fastmcp_server.py
Opciones de configuración
Parámetros del servidor
| Parámetro | Descripción | Predeterminado |
|---|---|---|
--milvus_uri | URI del servidor Milvus | http://localhost:19530 |
--milvus_token | Token de autenticación de Milvus | "" |
--db_name | Nombre de la base de datos de Milvus | default |
--host | Dirección del host del servidor | 0.0.0.0 |
--port | Puerto del servidor | 8000 |
--path | Ruta del endpoint HTTP | /mcp |
--transport | Protocolo de transporte | http |
Opciones de transporte
http: Transporte HTTP RESTful (recomendado)sse: Transporte de eventos enviados por el servidorstdio: Transporte de entrada/salida estándar
Variables de entorno
OPENAI_API_KEY: Requerida para el procesamiento de documentos y la generación de incrustacionesMILVUS_URI: Forma alternativa de especificar el URI del servidor MilvusMILVUS_TOKEN: Forma alternativa de especificar el token de autenticación de Milvus
Solución de problemas
Problemas comunes
- Conexión rechazada: Asegúrate de que Milvus esté en ejecución y sea accesible
- Autenticación fallida: Verifica tu token y credenciales de Milvus
- Conflictos de puerto: Cambia el puerto usando el parámetro
--port - Documentos faltantes: Ejecuta primero el servidor completo para poblar la base de datos
Modo de depuración
Habilita el registro de depuración:
PYTHONPATH=src python -m logging --level DEBUG src/mcp_pymilvus_code_generate_helper/fastmcp_server.py
Contribuciones
¡Las contribuciones son bienvenidas! Si tienes ideas para mejorar los resultados de recuperación o agregar nuevas funciones, envía una solicitud de extracción o abre un problema.
Licencia
Este proyecto está licenciado bajo la Licencia MIT.