Meilisearch

offiziell

Interagieren und Abfragen mit Meilisearch (Volltext- und semantische Such-API)

Was kann man mit Meilisearch MCP machen?

  • Indexverwaltung — Suchindizes erstellen, auflisten und löschen, einschließlich der Festlegung eines benutzerdefinierten Primärschlüssels beim Erstellen eines Index.
  • Dokumentenverwaltung — Dokumente zu einem Index hinzufügen oder aktualisieren und mit Paginierung abrufen.
  • Suche — Suchen über einen oder mehrere Indizes mit Filtern, Sortierung und Facetten ausführen.
  • Einstellungen verwalten — Indexeinstellungen wie Ranking-Regeln, Facettierung und durchsuchbare Attribute anzeigen und aktualisieren.
  • Aufgaben- und Zustandsüberwachung — Den Zustand, die Version und Statistiken der Instanz prüfen sowie Indizierungsaufgaben verfolgen oder abbrechen.
  • API-Schlüsselverwaltung — API-Schlüssel mit bestimmten Berechtigungen auflisten, erstellen und löschen.

Dokumentation

Meilisearch

Meilisearch MCP Server

Meilisearch | Meilisearch Cloud | Dokumentation | Discord

PyPI version Python Versions Tests License Downloads

[!WARNING] Dieses Paket ist veraltet. Verwenden Sie stattdessen den nativen Meilisearch MCP-Server.

Meilisearch enthält jetzt einen integrierten MCP-Server (Meilisearch v1.54 und höher). Er ist über HTTP unter der Route /mcp Ihrer Instanz verfügbar. Sie müssen dieses Python-Paket daher nicht mehr installieren oder ausführen.

👉 Folgen Sie der Meilisearch MCP-Anleitung, um den Server einzurichten.

Dieses Repository ist ein lokaler stdio-Wrapper, der vor der Verfügbarkeit der nativen Unterstützung erstellt wurde. Es wird nicht mehr aktiv gewartet und bleibt nur für bestehende Nutzer erhalten.

⚡ Verbinden Sie beliebige LLMs mit Meilisearch und erweitern Sie Ihre KI um blitzschnelle Suchfunktionen! 🔍

🤔 Was ist das?

Der Meilisearch MCP Server ist ein Model Context Protocol-Server, der es jedem MCP-kompatiblen Client (einschließlich Claude, OpenAI-Agenten und anderen LLMs) ermöglicht, mit Meilisearch zu interagieren. Dieser stdio-basierte Server ermöglicht KI-Assistenten, Suchindizes zu verwalten, Suchvorgänge auszuführen und Ihre Daten über natürliche Konversationen zu bearbeiten.

Warum sollte man ihn verwenden?

  • 🤖 Universelle Kompatibilität – Funktioniert mit jedem MCP-Client, nicht nur mit Claude
  • 🗣️ Steuerung in natürlicher Sprache – Verwalten Sie Meilisearch per Konversation mit jedem LLM
  • 🚀 Keine Einarbeitung erforderlich – Sie müssen die Meilisearch-API nicht erlernen
  • 🔧 Voller Funktionsumfang – Alle Funktionen von Meilisearch stehen Ihnen zur Verfügung
  • 🔄 Dynamische Verbindungen – Wechseln Sie spontan zwischen Meilisearch-Instanzen
  • 📡 stdio-Transport – Verwendet ausschließlich stdio; für HTTP verwenden Sie den nativen Meilisearch MCP-Server

✨ Hauptfunktionen

  • 📊 Index- und Dokumentverwaltung – Suchindizes erstellen, aktualisieren und verwalten
  • 🔍 Intelligente Suche – Mit erweiterten Filtern in einem oder mehreren Indizes suchen
  • ⚙️ Einstellungen konfigurieren – Suchrelevanz und Leistung feinabstimmen
  • 📈 Aufgabenüberwachung – Fortschritt der Indizierung und Systemvorgänge verfolgen
  • 🔐 API-Schlüsselverwaltung – Sicherer Zugriffsschutz
  • 🏥 Zustandsüberwachung – Ihre Meilisearch-Instanz im Blick behalten
  • 🧱 Strukturierte Tool-Ausgabe – Jedes Tool, das Daten zurückgibt, liefert gemäß der neuesten MCP-Spezifikation neben Text auch structuredContent
  • 🔀 Moderner MCP-Stack – Basiert auf dem offiziellen MCP Python SDK v2 (Spezifikation 2026-07-28) und ist abwärtskompatibel mit älteren MCP-Clients
  • 🐍 Python-Implementierung – Auch als TypeScript-Version verfügbar

🚀 Schnellstart

In nur 3 Schritten einsatzbereit!

1️⃣ Paket installieren

# Using pip
pip install meilisearch-mcp

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

2️⃣ Claude Desktop konfigurieren

Fügen Sie dies zu Ihrer claude_desktop_config.json hinzu:

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

3️⃣ Meilisearch starten

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

# Or using Homebrew
brew install meilisearch
meilisearch

Das war's! Jetzt können Sie Ihren KI-Assistenten bitten, Ihre Meilisearch-Daten zu durchsuchen und zu verwalten! 🎉

📚 Beispiele

💬 Sprechen Sie ganz natürlich mit Ihrem KI-Assistenten:

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!

🔍 Beispiel für eine erweiterte Suche:

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

🔧 Installation

Voraussetzungen

  • Python ≥ 3.10
  • Laufende Meilisearch-Instanz
  • MCP-kompatibler Client (Claude Desktop, OpenAI-Agenten usw.)

Von PyPI

pip install meilisearch-mcp

Aus dem Quellcode (für die Entwicklung)

# 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 .

Mit Docker

Ideal für containerisierte Umgebungen wie n8n-Workflows!

Von 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

Aus dem Quellcode erstellen

# 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

Integration mit n8n

Für n8n-Workflows können Sie das Docker-Image direkt in Ihrer Einrichtung verwenden:

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

🛠️ Was können Sie damit tun?

🔗 Verbindungsverwaltung
  • Aktuelle Verbindungseinstellungen anzeigen
  • Dynamisch zwischen Meilisearch-Instanzen wechseln
  • API-Schlüssel spontan aktualisieren
📁 Indexvorgänge
  • Neue Indizes mit benutzerdefinierten Primärschlüsseln erstellen
  • Alle Indizes mit Statistiken auflisten
  • Indizes und ihre Daten löschen
  • Detaillierte Indexmetriken abrufen
📄 Dokumentverwaltung
  • Dokumente hinzufügen oder aktualisieren
  • Dokumente mit Paginierung abrufen
  • Daten gesammelt importieren
🔍 Suchfunktionen
  • Mit Filtern, Sortierung und Facetten suchen
  • Suche über mehrere Indizes
  • Semantische Suche mit Vektoren
  • Hybridsuche (Schlüsselwort + semantisch)
⚙️ Einstellungen und Konfiguration
  • Ranking-Regeln konfigurieren
  • Facettierung und Filterung einrichten
  • Durchsuchbare Attribute verwalten
  • Fehlertoleranz anpassen
🔐 Sicherheit
  • API-Schlüssel erstellen und verwalten
  • Detaillierte Berechtigungen festlegen
  • Schlüsselnutzung überwachen

⚠️ Hinweis: Sie können Hosts und API-Schlüssel bequem direkt im Chat hinzufügen und aktualisieren. Dieser Ansatz ist jedoch in erster Linie für Entwicklungsfälle gedacht (z. B. für die spontane Verbindung mit mehreren Instanzen). Er entspricht nicht den bewährten MCP-Sicherheitspraktiken und sollte ohne geeignete Schutzmaßnahmen nicht in Produktionsumgebungen verwendet werden.

📊 Überwachung und Zustand
  • Zustandsprüfungen
  • Systemstatistiken
  • Aufgabenüberwachung
  • Versionsinformationen

🌍 Umgebungsvariablen

Konfigurieren Sie die Standardeinstellungen für die Verbindung:

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

💻 Entwicklung

Entwicklungsumgebung einrichten

  1. Meilisearch starten:

    docker run -d -p 7700:7700 getmeili/meilisearch:v1.28
    
  2. Entwicklungsabhängigkeiten installieren:

    uv pip install -r requirements-dev.txt
    
  3. Tests ausführen:

    python -m pytest tests/ -v
    
  4. Code formatieren:

    black src/ tests/
    

Mit MCP Inspector testen

npx @modelcontextprotocol/inspector python -m src.meilisearch_mcp

🤝 Community und Support

Wir freuen uns auf Ihre Rückmeldungen! So erhalten Sie Hilfe und können sich mit uns austauschen:

🤗 Mitwirken

Beiträge sind willkommen! So können Sie loslegen:

  1. Repository forken
  2. Feature-Branch erstellen (git checkout -b feature/amazing-feature)
  3. Tests für Ihre Änderungen schreiben
  4. Änderungen vornehmen und Tests ausführen
  5. Code mit black formatieren
  6. Änderungen committen (git commit -m 'Add amazing feature')
  7. Änderungen in Ihren Branch pushen (git push origin feature/amazing-feature)
  8. Einen Pull Request öffnen

Weitere Informationen finden Sie in unseren Richtlinien für Beiträge.

📦 Veröffentlichungsprozess

Dieses Projekt verwendet automatisierte Versionierung und Veröffentlichung. Wenn sich die Version in pyproject.toml im Branch main ändert, wird das Paket automatisch auf PyPI veröffentlicht.

Ausführliche Anweisungen finden Sie im Abschnitt Veröffentlichungsprozess.

📄 Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE.


Meilisearch ist eine Open-Source-Suchmaschine, die ein überzeugendes Sucherlebnis bietet.
Weitere Informationen zu Meilisearch finden Sie unter meilisearch.com


📖 Vollständige Dokumentation

Verfügbare Tools

Verbindungsverwaltung

  • get-connection-settings: Aktuelle Meilisearch-Verbindungs-URL und Status des API-Schlüssels anzeigen
  • update-connection-settings: URL und/oder API-Schlüssel aktualisieren, um eine Verbindung zu einer anderen Instanz herzustellen

Indexverwaltung

  • create-index: Einen neuen Index mit optionalem Primärschlüssel erstellen
  • list-indexes: Alle verfügbaren Indizes auflisten
  • delete-index: Einen vorhandenen Index und alle seine Dokumente löschen
  • get-index-metrics: Detaillierte Metriken für einen bestimmten Index abrufen

Dokumentvorgänge

  • get-documents: Dokumente mit Paginierung aus einem Index abrufen
  • add-documents: Dokumente zu einem Index hinzufügen oder aktualisieren

Suche

  • search: Flexible Suche in einem oder mehreren Indizes mit Filter- und Sortieroptionen

Einstellungsverwaltung

  • get-settings: Aktuelle Einstellungen für einen Index anzeigen
  • update-settings: Indexeinstellungen aktualisieren (Ranking, Facettierung usw.)

API-Schlüsselverwaltung

  • get-keys: Alle API-Schlüssel auflisten
  • create-key: Einen neuen API-Schlüssel mit bestimmten Berechtigungen erstellen
  • delete-key: Einen vorhandenen API-Schlüssel löschen

Aufgabenverwaltung

  • get-task: Informationen zu einer bestimmten Aufgabe abrufen
  • get-tasks: Aufgaben mit optionalen Filtern auflisten
  • cancel-tasks: Ausstehende oder eingereihte Aufgaben abbrechen

Systemüberwachung

  • health-check: Einfache Zustandsprüfung
  • get-health-status: Umfassenden Zustandsstatus abrufen
  • get-version: Versionsinformationen zu Meilisearch abrufen
  • get-stats: Datenbankstatistiken abrufen
  • get-system-info: Informationen auf Systemebene abrufen

Entwicklungsumgebung einrichten

Voraussetzungen

  1. Meilisearch-Server starten:

    # 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. Entwicklungstools installieren:

    # 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
    

Tests ausführen

Dieses Projekt enthält umfassende Integrationstests, die die Funktionalität der MCP-Tools überprüfen:

# 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/

Wichtig: Für die Tests muss eine Meilisearch-Instanz unter http://localhost:7700 laufen.

Codequalität

# 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/

Richtlinien für Beiträge

  1. Repository forken und klonen
  2. Entwicklungsumgebung einrichten – Folgen Sie dazu dem obigen Abschnitt „Entwicklungsumgebung einrichten“
  3. Feature-Branch erstellen – ausgehend von main
  4. Zuerst Tests schreiben, wenn Sie neue Funktionen hinzufügen (testgetriebene Entwicklung)
  5. Tests lokal ausführen, um vor dem Commit sicherzustellen, dass alle Tests bestehen
  6. Code formatieren mit Black und die Codequalität sicherstellen
  7. Änderungen committen und aussagekräftige Commit-Nachrichten verwenden
  8. Änderungen in Ihren Fork pushen und einen Pull Request erstellen

Entwicklungsablauf

# 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

Testrichtlinien

  • Alle neuen Funktionen sollten Tests enthalten
  • Tests müssen vor dem Einreichen eines PRs bestehen
  • Aussagekräftige Testnamen und klare Assertions verwenden
  • Erfolgs- und Fehlerfälle testen
  • Vor dem Ausführen der Tests sicherstellen, dass Meilisearch läuft

Veröffentlichungsprozess

Dieses Projekt verwendet automatisierte Versionierung und Veröffentlichung auf PyPI. Der Veröffentlichungsprozess ist einfach und automatisiert.

So funktionieren Veröffentlichungen

  1. Automatische Veröffentlichung: Wenn sich die Versionsnummer in pyproject.toml im Branch main ändert, führt eine GitHub Action automatisch Folgendes aus:

    • Erstellt das Python-Paket
    • Veröffentlicht es mithilfe von Trusted Publishing auf PyPI
    • Erstellt eine neue Veröffentlichung auf GitHub
  2. Versionserkennung: Der Workflow vergleicht die aktuelle Version in pyproject.toml mit dem vorherigen Commit, um Änderungen zu erkennen

  3. Veröffentlichung auf PyPI: Verwendet die offizielle Publish Action von PyPA mit Trusted Publishing (manuelle API-Schlüssel sind nicht erforderlich)

Neue Veröffentlichung erstellen

Gehen Sie wie folgt vor, um eine neue Veröffentlichung zu erstellen:

1. Versionsnummer festlegen

Befolgen Sie Semantic Versioning (MAJOR.MINOR.PATCH):

  • PATCH (z. B. 0.4.0 → 0.4.1): Fehlerbehebungen, Dokumentationsaktualisierungen, kleinere Verbesserungen
  • MINOR (z. B. 0.4.0 → 0.5.0): Neue Funktionen, neue MCP-Tools, wesentliche Erweiterungen
  • MAJOR (z. B. 0.5.0 → 1.0.0): Inkompatible Änderungen, wesentliche API-Änderungen
2. Version aktualisieren und PR erstellen
# 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. In Main mergen

Sobald der PR genehmigt und in main gemergt wurde, führt die GitHub Action automatisch Folgendes aus:

  1. Versionsänderung erkennen
  2. Paket erstellen
  3. Auf PyPI unter https://pypi.org/p/meilisearch-mcp veröffentlichen
  4. Die neue Version über pip install meilisearch-mcp verfügbar machen
4. Release überprüfen

Nach dem Zusammenführen das Release überprüfen:

# 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

Release-Workflow-Datei

Das automatisierte Release wird von .github/workflows/publish.yml verwaltet. Dabei wird:

  • Bei Pushes auf den Branch main ausgelöst
  • Geprüft, ob sich die Version von pyproject.toml geändert hat
  • Python 3.10 und offizielle Build-Tools verwendet
  • Mit Trusted Publishing veröffentlicht (keine API-Schlüssel erforderlich)
  • Eine ausführliche Ausgabe zur Fehlerbehebung bereitgestellt

Fehlerbehebung bei Releases

Release wurde nicht ausgelöst: Prüfen, ob sich die Version in pyproject.toml zwischen den Commits tatsächlich geändert hat

Build fehlgeschlagen: Die GitHub-Actions-Protokolle auf Fehler beim Erstellen des Python-Pakets prüfen

PyPI-Veröffentlichung fehlgeschlagen: Den Paketnamen überprüfen und sicherstellen, dass Trusted Publishing korrekt konfiguriert ist

Versionskonflikte: Sicherstellen, dass die neue Versionsnummer noch nicht auf PyPI verwendet wurde

Entwicklungs- und Produktionsversionen

  • Entwicklung: Aus dem Quellcode installieren mit pip install -e .
  • Produktion: Von PyPI installieren mit pip install meilisearch-mcp
  • Bestimmte Version: Installieren mit pip install meilisearch-mcp==0.5.0