Meilisearch MCP Server (Go) について
Meilisearch MCP Server (Go) は、Meilisearch のインスタンスを MCP クライアントや LLM ベースのツールに接続します。Go 製サーバーを通じて、検索やインデックス・ドキュメント操作を利用できます。
主な機能
- 01フィルターとソート付き検索
- 02サーバー状態の確認
- 03インデックスの一覧表示と作成
- 04ドキュメントの取得と追加
活用シーン
- 01クエリによるインデックス検索
- 02Meilisearch サーバー状態の確認
- 03データセット用インデックスの作成
- 04インデックス文書の取得や追加
MCP 対応
MCP サーバーとして動作し、Meilisearch の検索、状態確認、インデックス管理、ドキュメント操作をツールとして MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Meilisearch MCP サーバー(Go)
Meilisearch 検索エンジンを MCP サーバーとして機能させる、Go ベースのラッパーです。
概要
このプロジェクトは、Meilisearch 検索エンジンを MCP(Model Context Protocol)サーバーとして利用できるようにする Go アプリケーションです。MCP サーバーを通じて、Claude などの大規模言語モデル(LLM)が 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"
}
}
}
}
この設定により、MCP SQLite Server が Claude Desktop に登録されます。すべてのログは指定したログファイルに出力され、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:ソート条件の配列(任意)
- 戻り値:検索結果
- パラメーター:
コントリビューション
コントリビューションを歓迎します。リポジトリをフォークし、改善やバグ修正のプルリクエストを送信してください。大きな変更の場合は、まずイシューを作成してアイデアについて話し合ってください。
ライセンス
このプロジェクトは MIT License のもとでライセンスされています。
作者
cnosuke (x.com/cnosuke)
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。