Meilisearch

oficial

Interactúa y consulta con Meilisearch (API de búsqueda de texto completo y semántica)

¿Qué puedes hacer con Meilisearch MCP?

  • Gestión de índices — Crea, enumera y elimina índices de búsqueda, incluida la configuración de una clave primaria personalizada al crear uno.
  • Gestión de documentos — Añade o actualiza documentos en un índice y recupéralos con paginación.
  • Búsqueda — Realiza búsquedas en uno o varios índices con filtros, ordenación y facetas.
  • Control de la configuración — Consulta y actualiza la configuración de los índices, como las reglas de clasificación, las facetas y los atributos de búsqueda.
  • Supervisión de tareas y estado — Comprueba el estado, la versión y las estadísticas de la instancia, y realiza un seguimiento de las tareas de indexación o cancélalas.
  • Gestión de claves de API — Enumera, crea y elimina claves de API con permisos específicos.

Documentación

Meilisearch

Servidor MCP de Meilisearch

Meilisearch | Meilisearch Cloud | Documentación | Discord

PyPI version Python Versions Tests License Downloads

[!WARNING] Este paquete está obsoleto. Usa el servidor MCP nativo de Meilisearch.

Meilisearch ahora incluye un servidor MCP integrado (Meilisearch v1.54 y posteriores). Está disponible en la ruta /mcp de tu instancia a través de HTTP, por lo que ya no necesitas instalar ni ejecutar este paquete de Python.

👉 Sigue la guía de MCP de Meilisearch para configurarlo.

Este repositorio es un contenedor local de stdio creado antes de que existiera la compatibilidad nativa. Ya no se mantiene activamente y se conserva únicamente para los usuarios actuales.

⚡ ¡Conecta cualquier LLM a Meilisearch y potencia tu IA con capacidades de búsqueda ultrarrápidas! 🔍

🤔 ¿Qué es esto?

El servidor MCP de Meilisearch es un servidor del Model Context Protocol que permite a cualquier cliente compatible con MCP (incluidos Claude, los agentes de OpenAI y otros LLM) interactuar con Meilisearch. Este servidor basado en stdio permite a los asistentes de IA administrar índices de búsqueda, realizar búsquedas y gestionar tus datos mediante conversaciones naturales.

¿Por qué usarlo?

  • 🤖 Compatibilidad universal - Funciona con cualquier cliente MCP, no solo con Claude
  • 🗣️ Control en lenguaje natural - Administra Meilisearch conversando con cualquier LLM
  • 🚀 Sin curva de aprendizaje - No necesitas aprender la API de Meilisearch
  • 🔧 Acceso completo a las funciones - Todas las capacidades de Meilisearch al alcance de tu mano
  • 🔄 Conexiones dinámicas - Cambia de instancia de Meilisearch sobre la marcha
  • 📡 Transporte stdio - Usa únicamente stdio; para HTTP, usa el servidor MCP nativo de Meilisearch

✨ Funciones principales

  • 📊 Administración de índices y documentos - Crea, actualiza y administra índices de búsqueda
  • 🔍 Búsqueda inteligente - Busca en uno o varios índices con filtros avanzados
  • ⚙️ Configuración de ajustes - Ajusta la relevancia y el rendimiento de las búsquedas
  • 📈 Supervisión de tareas - Sigue el progreso de la indexación y las operaciones del sistema
  • 🔐 Administración de claves API - Control de acceso seguro
  • 🏥 Supervisión del estado - Mantén vigilada tu instancia de Meilisearch
  • 🧱 Salida estructurada de herramientas - Cada herramienta que devuelve datos proporciona structuredContent junto con texto, según la especificación MCP más reciente
  • 🔀 Pila MCP moderna - Basada en el SDK oficial de MCP para Python v2 (especificación 2026-07-28), compatible con versiones anteriores de clientes MCP
  • 🐍 Implementación en Python - También hay una versión en TypeScript

🚀 Inicio rápido

¡Empieza a usarlo en solo 3 pasos!

1️⃣ Instala el paquete

# Using pip
pip install meilisearch-mcp

# Or using uvx (recommended)
uvx -n meilisearch-mcp

2️⃣ Configura Claude Desktop

Añade esto a tu claude_desktop_config.json:

{
  "mcpServers": {
    "meilisearch": {
      "command": "uvx",
      "args": ["-n", "meilisearch-mcp"]
    }
  }
}

3️⃣ Inicia Meilisearch

# Using Docker (recommended)
docker run -d -p 7700:7700 getmeili/meilisearch:v1.28

# Or using Homebrew
brew install meilisearch
meilisearch

¡Eso es todo! Ahora puedes pedirle a tu asistente de IA que busque y administre tus datos de Meilisearch. 🎉

📚 Ejemplos

💬 Habla con tu asistente de IA de forma natural:

You: "Create a new index called 'products' with 'id' as the primary key"
AI: I'll create that index for you... ✓ Index 'products' created successfully!

You: "Add some products to the index"
AI: I'll add those products... ✓ Added 5 documents to 'products' index

You: "Search for products under $50 with 'electronics' in the category"
AI: I'll search for those products... Found 12 matching products!

🔍 Ejemplo de búsqueda avanzada:

You: "Search across all my indices for 'machine learning' and sort by date"
AI: Searching across all indices... Found 47 results from 3 indices:
- 'blog_posts': 23 articles about ML
- 'documentation': 15 technical guides
- 'tutorials': 9 hands-on tutorials

🔧 Instalación

Requisitos previos

  • Python ≥ 3.10
  • Una instancia de Meilisearch en ejecución
  • Un cliente compatible con MCP (Claude Desktop, agentes de OpenAI, etc.)

Desde PyPI

pip install meilisearch-mcp

Desde el código fuente (para desarrollo)

# Clone repository
git clone https://github.com/meilisearch/meilisearch-mcp.git
cd meilisearch-mcp

# Create virtual environment and install
uv venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
uv pip install -e .

Con Docker

Ideal para entornos en contenedores, como los flujos de trabajo de n8n.

Desde Docker Hub

# Pull the latest image
docker pull getmeili/meilisearch-mcp:latest

# Or a specific version
docker pull getmeili/meilisearch-mcp:0.5.0

# Run the container
docker run -it \
  -e MEILI_HTTP_ADDR=http://your-meilisearch:7700 \
  -e MEILI_MASTER_KEY=your-master-key \
  getmeili/meilisearch-mcp:latest

Compilar desde el código fuente

# Build your own image
docker build -t meilisearch-mcp .
docker run -it \
  -e MEILI_HTTP_ADDR=http://your-meilisearch:7700 \
  -e MEILI_MASTER_KEY=your-master-key \
  meilisearch-mcp

Integración con n8n

Para los flujos de trabajo de n8n, puedes usar directamente la imagen de Docker en tu configuración:

meilisearch-mcp:
  image: getmeili/meilisearch-mcp:latest
  environment:
    - MEILI_HTTP_ADDR=http://meilisearch:7700
    - MEILI_MASTER_KEY=masterKey

🛠️ ¿Qué puedes hacer?

🔗 Administración de conexiones
  • Consultar la configuración de conexión actual
  • Cambiar dinámicamente entre instancias de Meilisearch
  • Actualizar las claves API sobre la marcha
📁 Operaciones con índices
  • Crear índices con claves primarias personalizadas
  • Enumerar todos los índices con sus estadísticas
  • Eliminar índices y sus datos
  • Consultar métricas detalladas de los índices
📄 Administración de documentos
  • Añadir o actualizar documentos
  • Recuperar documentos con paginación
  • Importar datos en bloque
🔍 Capacidades de búsqueda
  • Buscar con filtros, ordenación y facetas
  • Buscar en varios índices
  • Búsqueda semántica con vectores
  • Búsqueda híbrida (por palabras clave + semántica)
⚙️ Ajustes y configuración
  • Configurar reglas de clasificación
  • Configurar facetas y filtros
  • Administrar atributos de búsqueda
  • Personalizar la tolerancia a errores tipográficos
🔐 Seguridad
  • Crear y administrar claves API
  • Establecer permisos detallados
  • Supervisar el uso de las claves

⚠️ Nota: Aunque puedes añadir y actualizar hosts y claves API directamente en el chat por comodidad, este enfoque está pensado principalmente para casos de uso de desarrollo (como conectarse sobre la marcha a varias instancias). No sigue las mejores prácticas de seguridad de MCP y no debe usarse en entornos de producción sin las protecciones adecuadas.

📊 Supervisión y estado
  • Comprobaciones de estado
  • Estadísticas del sistema
  • Supervisión de tareas
  • Información de la versión

🌍 Variables de entorno

Configura los ajustes de conexión predeterminados:

MEILI_HTTP_ADDR=http://localhost:7700  # Default Meilisearch URL
MEILI_MASTER_KEY=your_master_key       # Optional: Default API key

💻 Desarrollo

Configuración del entorno de desarrollo

  1. Inicia Meilisearch:

    docker run -d -p 7700:7700 getmeili/meilisearch:v1.28
    
  2. Instala las dependencias de desarrollo:

    uv pip install -r requirements-dev.txt
    
  3. Ejecuta las pruebas:

    python -m pytest tests/ -v
    
  4. Da formato al código:

    black src/ tests/
    

Pruebas con MCP Inspector

npx @modelcontextprotocol/inspector python -m src.meilisearch_mcp

🤝 Comunidad y asistencia

¡Nos encantaría saber de ti! Estas son algunas formas de obtener ayuda y conectar con la comunidad:

🤗 Contribuciones

¡Agradecemos las contribuciones! Así puedes empezar:

  1. Haz un fork del repositorio
  2. Crea tu rama de función (git checkout -b feature/amazing-feature)
  3. Escribe pruebas para tus cambios
  4. Realiza los cambios y ejecuta las pruebas
  5. Da formato al código con black
  6. Confirma los cambios (git commit -m 'Add amazing feature')
  7. Sube los cambios a tu rama (git push origin feature/amazing-feature)
  8. Abre una solicitud de incorporación de cambios

Consulta nuestras directrices para contribuir para obtener más información.

📦 Proceso de publicación

Este proyecto usa el control de versiones y la publicación automatizados. Cuando cambia la versión en pyproject.toml en la rama main, el paquete se publica automáticamente en PyPI.

Consulta la sección Proceso de publicación para ver instrucciones detalladas.

📄 Licencia

Este proyecto está sujeto a la licencia MIT. Consulta el archivo LICENSE para obtener más información.


Meilisearch es un motor de búsqueda de código abierto que ofrece una experiencia de búsqueda excepcional.
Obtén más información sobre Meilisearch en meilisearch.com


📖 Documentación completa

Herramientas disponibles

Administración de conexiones

  • get-connection-settings: Consultar la URL de conexión actual de Meilisearch y el estado de la clave API
  • update-connection-settings: Actualizar la URL o la clave API, o ambas, para conectarse a otra instancia

Administración de índices

  • create-index: Crear un índice con una clave primaria opcional
  • list-indexes: Enumerar todos los índices disponibles
  • delete-index: Eliminar un índice existente y todos sus documentos
  • get-index-metrics: Consultar métricas detalladas de un índice específico

Operaciones con documentos

  • get-documents: Recuperar documentos de un índice con paginación
  • add-documents: Añadir o actualizar documentos en un índice

Búsqueda

  • search: Búsqueda flexible en uno o varios índices con opciones de filtrado y ordenación

Administración de ajustes

  • get-settings: Consultar los ajustes actuales de un índice
  • update-settings: Actualizar los ajustes del índice (clasificación, facetas, etc.)

Administración de claves API

  • get-keys: Enumerar todas las claves API
  • create-key: Crear una clave API con permisos específicos
  • delete-key: Eliminar una clave API existente

Administración de tareas

  • get-task: Consultar información sobre una tarea específica
  • get-tasks: Enumerar tareas con filtros opcionales
  • cancel-tasks: Cancelar tareas pendientes o en cola

Supervisión del sistema

  • health-check: Comprobación básica del estado
  • get-health-status: Estado general del sistema
  • get-version: Consultar información de la versión de Meilisearch
  • get-stats: Consultar estadísticas de la base de datos
  • get-system-info: Consultar información del sistema

Configuración del entorno de desarrollo

Requisitos previos

  1. Inicia el servidor de Meilisearch:

    # Using Docker (recommended for development)
    docker run -d -p 7700:7700 getmeili/meilisearch:v1.28
    
    # Or using brew (macOS)
    brew install meilisearch
    meilisearch
    
    # Or download from https://github.com/meilisearch/meilisearch/releases
    
  2. Instala las herramientas de desarrollo:

    # Install uv for Python package management
    pip install uv
    
    # Install Node.js for MCP Inspector testing
    # Visit https://nodejs.org/ or use your package manager
    

Ejecución de pruebas

Este proyecto incluye pruebas de integración exhaustivas que verifican la funcionalidad de las herramientas MCP:

# Run all tests
python -m pytest tests/ -v

# Run specific test file
python -m pytest tests/test_mcp_client.py -v

# Run tests with coverage report
python -m pytest --cov=src tests/

# Run tests in watch mode (requires pytest-watch)
pytest-watch tests/

Importante: Las pruebas requieren una instancia de Meilisearch en ejecución en http://localhost:7700.

Calidad del código

# Format code with Black
black src/ tests/

# Run type checking (if mypy is configured)
mypy src/

# Lint code (if flake8 is configured)
flake8 src/ tests/

Directrices para contribuir

  1. Haz un fork y clona el repositorio
  2. Configura el entorno de desarrollo siguiendo la sección Configuración del entorno de desarrollo anterior
  3. Crea una rama de función a partir de main
  4. Escribe primero las pruebas si añades nuevas funciones (desarrollo guiado por pruebas)
  5. Ejecuta las pruebas localmente para asegurarte de que todas pasen antes de confirmar los cambios
  6. Da formato al código con Black y asegúrate de que cumpla los estándares de calidad
  7. Confirma los cambios con mensajes descriptivos
  8. Sube los cambios a tu fork y crea una solicitud de incorporación de cambios

Flujo de trabajo de desarrollo

# Create feature branch
git checkout -b feature/your-feature-name

# Make your changes, write tests first
# Edit files...

# Run tests to ensure everything works
python -m pytest tests/ -v

# Format code
black src/ tests/

# Commit and push
git add .
git commit -m "Add feature description"
git push origin feature/your-feature-name

Directrices para las pruebas

  • Todas las funciones nuevas deben incluir pruebas
  • Las pruebas deben pasar antes de enviar solicitudes de incorporación de cambios
  • Usa nombres de prueba descriptivos y aserciones claras
  • Prueba tanto los casos de éxito como los de error
  • Asegúrate de que Meilisearch esté en ejecución antes de ejecutar las pruebas

Proceso de publicación

Este proyecto usa el control de versiones y la publicación automatizados en PyPI. El proceso de publicación está diseñado para ser sencillo y automatizado.

Cómo funcionan las publicaciones

  1. Publicación automatizada: Cuando cambia el número de versión en pyproject.toml en la rama main, una acción de GitHub automáticamente:

    • Compila el paquete de Python
    • Lo publica en PyPI mediante publicación de confianza
    • Crea una nueva versión en GitHub
  2. Detección de versiones: El flujo de trabajo compara la versión actual de pyproject.toml con la del commit anterior para detectar cambios

  3. Publicación en PyPI: Usa la acción oficial de publicación de PyPA con publicación de confianza (no se necesitan claves API manuales)

Crear una nueva publicación

Para crear una nueva publicación, sigue estos pasos:

1. Determina el número de versión

Sigue el versionado semántico (MAJOR.MINOR.PATCH):

  • PATCH (p. ej., 0.4.0 → 0.4.1): Correcciones de errores, actualizaciones de documentación y mejoras menores
  • MINOR (p. ej., 0.4.0 → 0.5.0): Nuevas funciones, nuevas herramientas MCP y mejoras importantes
  • MAJOR (p. ej., 0.5.0 → 1.0.0): Cambios incompatibles y cambios importantes en la API
2. Actualiza la versión y crea una solicitud de incorporación de cambios
# 1. Create a branch from latest main
git checkout main
git pull origin main
git checkout -b release/v0.5.0

# 2. Update version in pyproject.toml
# Edit the version = "0.4.0" line to your new version

# 3. Commit and push
git add pyproject.toml
git commit -m "Bump version to 0.5.0"
git push origin release/v0.5.0

# 4. Create PR and get it reviewed/merged
gh pr create --title "Release v0.5.0" --body "Bump version for release"
3. Fusiona con Main

Una vez aprobada y fusionada la solicitud de incorporación de cambios en main, la acción de GitHub automáticamente:

  1. Detectar el cambio de versión
  2. Compilar el paquete
  3. Publicar en PyPI en https://pypi.org/p/meilisearch-mcp
  4. Poner la nueva versión a disposición mediante pip install meilisearch-mcp
4. Verificar la publicación

Después de fusionar, verifica la publicación:

# Check GitHub Action status
gh run list --workflow=publish.yml

# Verify on PyPI (may take a few minutes)
pip index versions meilisearch-mcp

# Test installation of new version
pip install --upgrade meilisearch-mcp

Archivo del flujo de publicación

La publicación automatizada se gestiona mediante .github/workflows/publish.yml, que:

  • Se activa con los envíos a la rama main
  • Comprueba si cambió la versión de pyproject.toml
  • Usa Python 3.10 y las herramientas oficiales de compilación
  • Publica mediante publicación de confianza (no se requieren claves de API)
  • Proporciona una salida detallada para la depuración

Solución de problemas de publicación

La publicación no se activó: Comprueba que la versión en pyproject.toml haya cambiado realmente entre las confirmaciones

Error de compilación: Comprueba los registros de GitHub Actions para detectar errores de compilación del paquete de Python

Error al publicar en PyPI: Verifica el nombre del paquete y que la publicación de confianza esté configurada correctamente

Conflictos de versión: Asegúrate de que el nuevo número de versión no se haya usado antes en PyPI

Versiones de desarrollo y producción

  • Desarrollo: Instala desde el código fuente usando pip install -e .
  • Producción: Instala desde PyPI usando pip install meilisearch-mcp
  • Versión específica: Instala usando pip install meilisearch-mcp==0.5.0