Fessを生成AIと連携させたいという要望が増えてきています。そこで、FessをMCP(Model Context Protocol)サーバーとして利用できるプラグインを公開しました。これにより、Claude DesktopなどのMCP対応AIクライアントからFessの検索機能を直接利用できるようになります。
MCPとは
MCPは、生成AIとデータソースを接続するためのオープンなプロトコルです。Anthropic社が策定したもので、AIアシスタントが外部のツールやデータにアクセスするための標準的な方法を提供します。
Fessをこのプロトコルに対応させることで、AIとの対話の中でFessの検索を行い、検索結果をAIの回答生成に活用できるようになります。
必要な環境
- Fess 15.x 以降
- Java 21 以降
インストール方法
fess-webapp-mcpプラグインをインストールすることで、FessがMCPサーバーとして機能するようになります。(管理画面からもインストールできます)
- Maven RepositoryからプラグインのJARファイルをダウンロード
- ダウンロードしたJARファイルをFessのプラグインディレクトリ(
app/WEB-INF/plugin/)に配置 - Fessを再起動
再起動後、http://<fess-server>:<port>/mcp でMCPサーバーのエンドポイントが有効になります。
Claude Desktopとの連携
このプラグインの代表的な使い方として、Claude Desktopとの連携があります。Claude Desktopの設定ファイル(claude_desktop_config.json)に以下のように設定を追加します。
{
"mcpServers": {
"Fess": {
"url": "http://localhost:8080/mcp"
}
}
}
設定後、Claude Desktopを再起動すると、Fessの検索機能がClaude上で利用できるようになります。
利用できる機能
MCPサーバーとして以下の機能を提供しています。
検索(search)
Fessの全文検索機能を呼び出せます。検索クエリ、件数、ソート順、言語フィルタなどのパラメータを指定できます。AIが対話の中で必要に応じて検索を実行し、その結果を回答に活用します。
インデックス統計情報(get_index_stats)
Fessに登録されているドキュメント数などのインデックス統計情報を取得できます。
設定情報の参照
Fessの各種設定情報(ラベル、パスマッピングなど)をAIが参照できるようになっています。
使い方の例
Claude Desktopで以下のような使い方ができます。
- 「Fessで〇〇について検索して」と依頼すると、AIがFessに検索を実行し、検索結果をもとに回答を作成
- 「社内ドキュメントから〇〇に関する情報を探して」といった自然言語での検索依頼が可能
- 検索結果の要約や、複数の検索結果を横断した分析をAIに依頼
まとめ
fess-webapp-mcpプラグインにより、Fessの検索機能を生成AIから活用できるようになります。RAGのような大規模な仕組みを構築しなくても、既存のFess環境にプラグインを追加するだけで、AIとの連携が実現できます。
プラグインの詳細についてはGitHubを参照してください。