A Model Context Protocol (MCP) server implementation for Meilisearch, enabling AI assistants to interact with Meilisearch through a standardized interface.
Features
**Index Management**: Create, update, and delete indexes
**Document Management**: Add, update, and delete documents
**Search Capabilities**: Perform searches with various parameters and filters
**Settings Management**: Configure index settings
**Task Management**: Monitor and manage asynchronous tasks
**System Operations**: Health checks, version information, and statistics
To install Meilisearch MCP Server for Claude Desktop automatically via [Smithery](https://smithery.ai/server/@devlimelabs/meilisearch-ts-mcp):
Manual Installation
Clone the repository:
```bash
git clone https://github.com/devlimelabs/meilisearch-ts-mcp.git
cd meilisearch-ts-mcp
```
Install dependencies:
```bash
npm install
```
Create a `.env` file based on the example:
```bash
cp .env.example .env
```
Edit the `.env` file to configure your Meilisearch connection.
Docker Setup
The Meilisearch MCP Server can be run in a Docker container for easier deployment and isolation.
Using Docker Compose
The easiest way to get started with Docker is to use Docker Compose:
Building and Running the Docker Image Manually
You can also build and run the Docker image manually:
Development Setup
For developers who want to contribute to the Meilisearch MCP Server, we provide a convenient setup script:
The setup script will:
Create a `.env` file from `.env.example` if it doesn't exist
Install dependencies
Build the project
Run tests to ensure everything is working correctly
After running the setup script, you can start the server in development mode:
Usage
Building the Project
Running the Server
Development Mode
Claude Desktop Integration
The Meilisearch MCP Server can be integrated with Claude for Desktop, allowing you to interact with your Meilisearch instance directly through Claude.
Automated Setup
We provide a setup script that automatically configures Claude for Desktop to work with the Meilisearch MCP Server:
The script will:
Detect your operating system and locate the Claude for Desktop configuration file
Read your Meilisearch configuration from the `.env` file
Generate the necessary configuration for Claude for Desktop
Provide instructions for updating your Claude for Desktop configuration
Manual Setup
If you prefer to manually configure Claude for Desktop:
Locate your Claude for Desktop configuration file:
- **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
- **Linux**: `~/.config/Claude/claude_desktop_config.json`
Add the following configuration (adjust paths as needed):
Restart Claude for Desktop to apply the changes.
In Claude, type: "I want to use the Meilisearch MCP server" to activate the integration.
Cursor Integration
The Meilisearch MCP Server can also be integrated with [Cursor](https://cursor.com), an AI-powered code editor.
Setting Up MCP in Cursor
Install and set up the Meilisearch MCP Server:
```bash
git clone https://github.com/devlimelabs/meilisearch-ts-mcp.git
cd meilisearch-ts-mcp
npm install
npm run build
```
Start the MCP server:
```bash
npm start
```
In Cursor, open the Command Palette (Cmd/Ctrl+Shift+P) and search for "MCP: Connect to MCP Server".
Select "Connect to a local MCP server" and enter the following details:
- **Name**: Meilisearch
- **Command**: node
- **Arguments**: /absolute/path/to/meilisearch-ts-mcp/dist/index.js
- **Environment Variables**:
```
MEILISEARCH_HOST=http://localhost:7700
MEILISEARCH_API_KEY=your-api-key
```
Click "Connect" to establish the connection.
You can now interact with your Meilisearch instance through Cursor by typing commands like "Search my Meilisearch index for documents about..."
Available Tools
The Meilisearch MCP Server provides the following tools:
Index Tools
`create-index`: Create a new index
`get-index`: Get information about an index
`list-indexes`: List all indexes
`update-index`: Update an index
`delete-index`: Delete an index
Document Tools
`add-documents`: Add documents to an index
`get-document`: Get a document by ID
`get-documents`: Get multiple documents
`update-documents`: Update documents
`delete-document`: Delete a document by ID
`delete-documents`: Delete multiple documents
`delete-all-documents`: Delete all documents in an index
Search Tools
`search`: Search for documents
`multi-search`: Perform multiple searches in a single request
Settings Tools
`get-settings`: Get index settings
`update-settings`: Update index settings
`reset-settings`: Reset index settings to default
Various specific settings tools (synonyms, stop words, ranking rules, etc.)
Task Tools
`list-tasks`: List tasks with optional filtering
`get-task`: Get information about a specific task
`cancel-tasks`: Cancel tasks based on provided filters
`wait-for-task`: Wait for a specific task to complete
System Tools
`health`: Check the health status of the Meilisearch server
`version`: Get version information
`info`: Get system information
`stats`: Get statistics about indexes
Vector Tools (Experimental)
`enable-vector-search`: Enable vector search
`get-experimental-features`: Get experimental features status