mcpField
M
Meilisearch MCP Server (Go)

Meilisearch MCP Server (Go)

Local
github.com/cnosukeDatabases1Updated 86w ago

About Meilisearch MCP Server (Go)

Meilisearch MCP Server (Go) connects a Meilisearch instance to MCP clients, including LLM-based tools. It provides search alongside index and document operations through a Go server.

Key features

  1. 01Search with filters and sorting
  2. 02Check server health
  3. 03List and create indexes
  4. 04Retrieve and add documents

Use cases

  1. 01Search an index using a query
  2. 02Check Meilisearch server status
  3. 03Create an index for a dataset
  4. 04Read or add indexed documents

MCP support

It implements an MCP server that exposes Meilisearch search, health, index management, and document operations as tools for MCP clients.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Meilisearch MCP Server (Go)

A Go-based wrapper for Meilisearch search engine that functions as a Model Context Protocol (MCP) server.

Overview

This project is a Go application designed to enable the Meilisearch search engine to be used as an MCP (Model Context Protocol) server. Through the MCP server, large language models (LLMs) like Claude can access Meilisearch's powerful search capabilities.

Features

  • Lightweight and fast MCP server implemented in Go
  • Seamless integration with Meilisearch API
  • Interface compliant with the MCP protocol
  • Support for key features including search, index management, and document operations

Installation

Prerequisites
  • Go 1.24 or higher
  • Running Meilisearch instance
Build Instructions
# Clone the repository
git clone https://github.com/cnosuke/mcp-meilisearch.git
cd mcp-meilisearch

# Install dependencies
make deps

# Build
make bin/mcp-meilisearch

Configuration

Use the config.yml file to configure connection settings to the Meilisearch server:

meilisearch:
  host: http://localhost:7700 # Address of Meilisearch server
  api_key: '' # Set API key if needed

You can also configure using environment variables:

  • MEILISEARCH_HOST: Address of Meilisearch server
  • MEILISEARCH_API_KEY: Meilisearch API key

Usage

Starting the Server
./bin/mcp-meilisearch server --config config.yml

Options:

  • --no-logs: Minimize log output (show errors only)
  • --log <file path>: Output logs to the specified file
Using with Claude Desktop

To integrate with Claude Desktop, add an entry to your claude_desktop_config.json file. Because MCP uses stdio for communication, you must redirect logs away from stdio by using the --no-logs and --log flags. Below is an example configuration that injects the SQLite file path via an environment variable:

{
  "mcpServers": {
    "sqlite": {
      "command": "./bin/mcp-meilisearch",
      "args": ["server", "--no-logs", "--log", "path_to_log_file"],
      "env": {
        "MEILISEARCH_HOST": "http://localhost:7700",
        "MEILISEARCH_API_KEY": "api_key"
      }
    }
  }
}

This configuration registers the MCP SQLite Server with Claude Desktop, ensuring that all logs are directed to the specified log file rather than interfering with the MCP protocol messages transmitted over stdio.

Available Tools

This MCP server provides the following tools:

Server Management
  • health_check: Check the status of the Meilisearch server.
    • Parameters: None
    • Returns: Server health status information
Index Management
  • list_indexes: Retrieve a list of all indexes.

    • Parameters: None
    • Returns: Array of indexes
  • create_index: Create a new index.

    • Parameters:
      • uid: Unique identifier for the index (required)
      • primary_key: Primary key for documents (optional)
    • Returns: Creation task information
Document Operations
  • get_documents: Retrieve documents from an index.

    • Parameters:
      • index_uid: Index UID (required)
      • limit: Maximum number of documents to retrieve (optional)
      • offset: Number of documents to skip (optional)
      • fields: Array of fields to retrieve (optional)
    • Returns: Array of documents
  • add_documents: Add documents to an index.

    • Parameters:
      • index_uid: Index UID (required)
      • documents: Array of documents to add (required)
      • primary_key: Primary key (optional)
    • Returns: Addition task information
Search
  • search: Search for documents in an index.
    • Parameters:
      • index_uid: UID of the index to search (required)
      • query: Search query (required)
      • limit: Maximum number of results to return (optional)
      • offset: Number of results to skip (optional)
      • filter: Filter expression (optional)
      • sort: Array of sort criteria (optional)
    • Returns: Search results

Contributing

Contributions are welcome! Please fork the repository and submit pull requests for improvements or bug fixes. For major changes, open an issue first to discuss your ideas.

License

This project is licensed under the MIT License.

Author

cnosuke (x.com/cnosuke)

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.