Meilisearch Hybrid Search
Integrates with
Meilisearch
Meilisearch Hybrid Search MCP Server
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:
go build -o meilisearch-hybrid-search-mcp .
## windows
GOOS=windows GOARCH=amd64 go build -o meilisearch-hybrid-search-mcp.exe .
## linux
GOOS=linux GOARCH=amd64 go build -o meilisearch-hybrid-search-mcp .
## mac
GOOS=macos GOARCH=amd64 go build -o meilisearch-hybrid-search-mcp .
Run the server:
./meilisearch-hybrid-search-mcp
The server will listen on standard input/output.
Available Tool: hybrid_search
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"). Requiresfilter_word
.filter_word
(string, optional): The value to filter the specifiedfilterable_attribute
by (e.g., "Drama", "Tolkien"). Requiresfilterable_attribute
.