Meilisearch Hybrid Search MCP Server

by miiton

11 419 downloads Not rated yet

About

A mcp server that supports hybrid search for meilisearch written in Go

Explore

- Executes hybrid searches (keyword + semantic) on a Meilisearch index
- Adjustable balance between keyword and semantic search
- Optional filtering by a document attribute
- Configured entirely via environment variables
- Adheres to the MCP protocol for tool invocation
- Supports any embedder configured in Meilisearch

Set the following environment variables before running the server:

export MEILI_HOST="http://your-meilisearch-instance:7700" # Meilisearch host URL
export MEILI_API_KEY="your_api_key"                     # Meilisearch API key (if required)
export MEILI_INDEX="your_index_name"                    # The name of the index to search in
export MEILI_EMBEDDER="your_embedder_name"              # The name of the embedder configured in Meilisearch (e.g., 'default', 'myOpenai')
export MEILI_FILTERABLE_ATTRIBUTES="attr1,attr2"        # Comma-separated filterable attributes for AI awareness (from index settings)

Build the server:
```bash
go build -o meilisearch-hybrid-search-mcp .

keywords

(string, **required**): The search query keywords.

semantic_ratio

(number, optional, default: 0.5): Controls the balance between keyword and semantic search.

0.0

Pure keyword search.

1.0

Pure semantic search.

0.5

Balanced keyword and semantic search.

filterable_attribute

(string, optional): The attribute name to filter results on (e.g., "genre", "author"). Requires `filter_word`.

filter_word

(string, optional): The value to filter the specified `filterable_attribute` by (e.g., "Drama", "Tolkien"). Requires `filterable_attribute`.

This tool performs a hybrid search on the configured Meilisearch index.

Description: Hybrid search your documents in Meilisearch index.

Arguments:

keywords (string, required): The search query keywords.
semantic_ratio (number, optional, default: 0.5): Controls the balance between keyword and semantic search.
0.0: Pure keyword search.
1.0: Pure semantic search.
0.5: Balanced keyword and semantic search.
filterable_attribute (string, optional): The attribute name to filter results on (e.g., "genre", "author"). Requires filter_word.

  • filter_word (string, optional): The value to filter the specified filterable_attribute by (e.g., "Drama", "Tolkien"). Requires filterable_attribute.

This MCP (Model Control Protocol) server provides a tool for performing hybrid searches on a Meilisearch index. It allows combining keyword-based search with semantic vector search.

Environment Variables

Set the following environment variables before running the server:

export MEILI_HOST="http://your-meilisearch-instance:7700" # Meilisearch host URL
export MEILI_API_KEY="your_api_key"                     # Meilisearch API key (if required)
export MEILI_INDEX="your_index_name"                    # The name of the index to search in
export MEILI_EMBEDDER="your_embedder_name"              # The name of the embedder configured in Meilisearch (e.g., 'default', 'myOpenai')
export MEILI_FILTERABLE_ATTRIBUTES="attr1,attr2"        # Comma-separated filterable attributes for AI awareness (from index settings)

Building and Running

Build the server:
```bash
go build -o meilisearch-hybrid-search-mcp .

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.