A Model Context Protocol (MCP) server for interacting with Meilisearch through LLM interfaces.
A Model Context Protocol (MCP) server for interacting with Meilisearch through LLM interfaces like Claude.
## Clone repository
git clone <repository_url>
cd meilisearch-mcp
## Create virtual environment and install
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv pip install -e .
MEILI_HTTP_ADDR=http://localhost:7700 # Default Meilisearch URL
MEILI_MASTER_KEY=your_master_key # Optional: Default Meilisearch API key
The server provides tools to view and update connection settings at runtime:
get-connection-settings: View current connection URL and API key statusupdate-connection-settings: Update URL and/or API key to connect to a different Meilisearch instanceExample usage through MCP:
// Get current settings
{
"name": "get-connection-settings"
}
// Update connection settings
{
"name": "update-connection-settings",
"arguments": {
"url": "http://new-host:7700",
"api_key": "new-api-key"
}
}
The server provides a flexible search tool that can search across one or all indices:
search: Search through Meilisearch indices with optional parametersExample usage through MCP:
// Search in a specific index
{
"name": "search",
"arguments": {
"query": "search term",
"indexUid": "movies",
"limit": 10
}
}
// Search across all indices
{
"name": "search",
"arguments": {
"query": "search term",
"limit": 5,
"sort": ["releaseDate:desc"]
}
}
Available search parameters:
query: The search query (required)indexUid: Specific index to search in (optional)limit: Maximum number of results per index (optional, default: 20)offset: Number of results to skip (optional, default: 0)filter: Filter expression (optional)sort: Sorting rules (optional)python -m src.meilisearch_mcp
To use this with Claude Desktop, add the following to your claude_desktop_config.json:
{
"mcpServers": {
"meilisearch": {
"command": "uvx",
"args": ["-n", "meilisearch-mcp"]
}
}
}
npx @modelcontextprotocol/inspector python -m src.meilisearch_mcp
get-connection-settings: View current Meilisearch connection URL and API key statusupdate-connection-settings: Update URL and/or API key to connect to a different instancecreate-index: Create a new index with optional primary keylist-indexes: List all available indexesget-index-metrics: Get detailed metrics for a specific indexget-documents: Retrieve documents from an index with paginationadd-documents: Add or update documents in an indexsearch: Flexible search across single or multiple indices with filtering and sorting optionsget-settings: View current settings for an indexupdate-settings: Update index settings (ranking, faceting, etc.)get-keys: List all API keyscreate-key: Create new API key with specific permissionsdelete-key: Delete an existing API keyget-task: Get information about a specific taskget-tasks: List tasks with optional filters:
limit: Maximum number of tasks to returnfrom: Number of tasks to skipreverse: Sort order of tasksbatchUids: Filter by batch UIDsuids: Filter by task UIDscanceledBy: Filter by cancellation sourcetypes: Filter by task typesstatuses: Filter by task statusesindexUids: Filter by index UIDsafterEnqueuedAt/beforeEnqueuedAt: Filter by enqueue timeafterStartedAt/beforeStartedAt: Filter by start timeafterFinishedAt/beforeFinishedAt: Filter by finish timecancel-tasks: Cancel pending or enqueued tasksdelete-tasks: Delete completed taskshealth-check: Basic health checkget-health-status: Comprehensive health statusget-version: Get Meilisearch version informationget-stats: Get database statisticsget-system-info: Get system-level informationMIT
A Python-based MCP (Model Context Protocol) server that predicts the origin
Model Context Protocol server for Audius. Perform market research, purchase premium tracks, upload songs, and much more!
A Cloudflare Worker that serves as an MCP (Model Context Protocol) server for code explanation. It analyzes and explains code with a comprehensive breakdown of structure and functionality.