关于 Meilisearch MCP Server (Go)
Meilisearch MCP Server (Go) 将 Meilisearch 实例连接到 MCP 客户端,包括基于 LLM 的工具。它通过 Go 服务提供搜索、索引管理和文档操作。
主要功能
- 01支持筛选和排序的搜索
- 02检查服务状态
- 03列出并创建索引
- 04读取和添加文档
适用场景
- 01按查询搜索索引
- 02检查 Meilisearch 服务状态
- 03为数据集创建索引
- 04读取或添加索引文档
MCP 相关
它实现了 MCP 服务,向 MCP 客户端提供 Meilisearch 搜索、状态检查、索引管理和文档操作工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Meilisearch MCP 服务(Go)
一个基于 Go 的 Meilisearch 搜索引擎封装,可用作模型上下文协议(MCP)服务。
概述
这是一个 Go 应用,旨在让 Meilisearch 搜索引擎能够作为 MCP(模型上下文协议)服务使用。通过该 MCP 服务,Claude 等大模型可以使用 Meilisearch 强大的搜索功能。
功能
- 使用 Go 实现的轻量快速 MCP 服务
- 与 Meilisearch API 无缝集成
- 符合 MCP 协议的接口
- 支持搜索、索引管理和文档操作等关键功能
安装
前提条件
- Go 1.24 或更高版本
- 正在运行的 Meilisearch 实例
构建说明
# Clone the repository
git clone https://github.com/cnosuke/mcp-meilisearch.git
cd mcp-meilisearch
# Install dependencies
make deps
# Build
make bin/mcp-meilisearch
配置
使用 config.yml 文件配置与 Meilisearch 服务的连接设置:
meilisearch:
host: http://localhost:7700 # Address of Meilisearch server
api_key: '' # Set API key if needed
你也可以使用环境变量进行配置:
MEILISEARCH_HOST:Meilisearch 服务的地址MEILISEARCH_API_KEY:Meilisearch API 密钥
使用方法
启动服务
./bin/mcp-meilisearch server --config config.yml
选项:
--no-logs:减少日志输出(仅显示错误)--log <file path>:将日志输出到指定文件
与 Claude Desktop 配合使用
要与 Claude Desktop 集成,请在 claude_desktop_config.json 文件中添加一项配置。**由于 MCP 使用 stdio 进行通信,因此必须使用 --no-logs 和 --log 标志,将日志重定向到 stdio 之外。**以下是一个通过环境变量注入 SQLite 文件路径的配置示例:
{
"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"
}
}
}
}
此配置会在 Claude Desktop 中注册 MCP SQLite 服务,确保所有日志都输出到指定的日志文件,而不会干扰通过 stdio 传输的 MCP 协议消息。
可用工具
此 MCP 服务提供以下工具:
服务管理
health_check:检查 Meilisearch 服务的状态。- 参数:无
- 返回:服务健康状态信息
索引管理
-
list_indexes:获取所有索引的列表。- 参数:无
- 返回:索引数组
-
create_index:创建新索引。- 参数:
uid:索引的唯一标识符(必填)primary_key:文档的主键(可选)
- 返回:创建任务信息
- 参数:
文档操作
-
get_documents:从索引中获取文档。- 参数:
index_uid:索引 UID(必填)limit:要获取的最大文档数(可选)offset:要跳过的文档数(可选)fields:要获取的字段数组(可选)
- 返回:文档数组
- 参数:
-
add_documents:向索引添加文档。- 参数:
index_uid:索引 UID(必填)documents:要添加的文档数组(必填)primary_key:主键(可选)
- 返回:添加任务信息
- 参数:
搜索
search:在索引中搜索文档。- 参数:
index_uid:要搜索的索引 UID(必填)query:搜索查询(必填)limit:要返回的最大结果数(可选)offset:要跳过的结果数(可选)filter:筛选表达式(可选)sort:排序条件数组(可选)
- 返回:搜索结果
- 参数:
贡献
欢迎贡献!请 Fork 此仓库并提交拉取请求,以改进项目或修复错误。对于重大更改,请先创建议题,讨论你的想法。
许可证
本项目采用 MIT 许可证。
作者
cnosuke(x.com/cnosuke)
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。