A Model Context Protocol (MCP) server implementation for Meilisearch, enabling AI assistants to interact with Meilisearch through a standardized interface.
- 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
- Vector Search: Experimental vector search capabilities
To install Meilisearch MCP Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @devlimelabs/meilisearch-ts-mcp --client claude
-
Clone the repository:
git clone https://github.com/devlimelabs/meilisearch-ts-mcp.git cd meilisearch-ts-mcp
-
Install dependencies:
npm install
-
Create a
.env
file based on the example:cp .env.example .env
-
Edit the
.env
file to configure your Meilisearch connection.
The Meilisearch MCP Server can be run in a Docker container for easier deployment and isolation.
The easiest way to get started with Docker is to use Docker Compose:
# Start the Meilisearch MCP Server
docker-compose up -d
# View logs
docker-compose logs -f
# Stop the server
docker-compose down
You can also build and run the Docker image manually:
# Build the Docker image
docker build -t meilisearch-ts-mcp .
# Run the container
docker run -p 3000:3000 --env-file .env meilisearch-ts-mcp
For developers who want to contribute to the Meilisearch MCP Server, we provide a convenient setup script:
# Clone the repository
git clone https://github.com/devlimelabs-ts-mcp/meilisearch-ts-mcp.git
cd meilisearch-ts-mcp
# Run the development setup script
./scripts/setup-dev.sh
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:
npm run dev
npm run build
npm start
npm run dev
The Meilisearch MCP Server can be integrated with Claude for Desktop, allowing you to interact with your Meilisearch instance directly through Claude.
We provide a setup script that automatically configures Claude for Desktop to work with the Meilisearch MCP Server:
# First build the project
npm run build
# Then run the setup script
node scripts/claude-desktop-setup.js
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
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
- macOS:
-
Add the following configuration (adjust paths as needed):
{
"mcpServers": {
"meilisearch": {
"command": "node",
"args": ["/path/to/meilisearch-ts-mcp/dist/index.js"],
"env": {
"MEILISEARCH_HOST": "http://localhost:7700",
"MEILISEARCH_API_KEY": "your-api-key"
}
}
}
}
-
Restart Claude for Desktop to apply the changes.
-
In Claude, type: "I want to use the Meilisearch MCP server" to activate the integration.
The Meilisearch MCP Server can also be integrated with Cursor, an AI-powered code editor.
-
Install and set up the Meilisearch MCP Server:
git clone https://github.com/devlimelabs/meilisearch-ts-mcp.git cd meilisearch-ts-mcp npm install npm run build
-
Start the MCP server:
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..."
The Meilisearch MCP Server provides the following tools:
create-index
: Create a new indexget-index
: Get information about an indexlist-indexes
: List all indexesupdate-index
: Update an indexdelete-index
: Delete an index
add-documents
: Add documents to an indexget-document
: Get a document by IDget-documents
: Get multiple documentsupdate-documents
: Update documentsdelete-document
: Delete a document by IDdelete-documents
: Delete multiple documentsdelete-all-documents
: Delete all documents in an index
search
: Search for documentsmulti-search
: Perform multiple searches in a single request
get-settings
: Get index settingsupdate-settings
: Update index settingsreset-settings
: Reset index settings to default- Various specific settings tools (synonyms, stop words, ranking rules, etc.)
list-tasks
: List tasks with optional filteringget-task
: Get information about a specific taskcancel-tasks
: Cancel tasks based on provided filterswait-for-task
: Wait for a specific task to complete
health
: Check the health status of the Meilisearch serverversion
: Get version informationinfo
: Get system informationstats
: Get statistics about indexes
enable-vector-search
: Enable vector searchget-experimental-features
: Get experimental features statusupdate-embedders
: Configure embeddersget-embedders
: Get embedders configurationreset-embedders
: Reset embedders configurationvector-search
: Perform vector search
MIT