Gemini MCP Server について
Gemini MCP Server は Google Custom Search によるウェブ検索と画像検索を、MCP 対応クライアントに提供します。検索結果を AI アシスタントなどに組み込む開発者向けです。
主な機能
- 01Google Custom Search によるウェブ検索
- 02タイトル、リンク、スニペットを返却
- 03Markdown 形式の画像検索結果
- 04Node.js 18 以降が必要
- 05MIT ライセンス
活用シーン
- 01AI アシスタント向けのウェブ検索結果取得
- 02MCP クライアントからの画像検索
MCP 対応
互換クライアント向けに、googleSearchContent と googleSearchImages の検索ツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Gemini MCP サーバー
このプロジェクトは、AI アシスタントやその他の MCP 対応クライアントとの連携を可能にする、Google Search 用の Model Context Protocol(MCP)サーバーを実装しています。
前提条件
- Node.js 18+
- npm
インストール
1. リポジトリをクローンする
git clone https://github.com/your-username/mcp-google-search.git
cd google-mcp-server
2. 依存関係をインストールする
npm install
3. Google Custom Search API の認証情報を設定する
プロジェクトのルートに .env ファイルを作成し、次の内容を記述します。
GEMINI_API_KEY=your_google_api_key_here
GOOGLE_API_KEY:Google Custom Search API キーです。
認証情報は、Google Custom Search JSON API のドキュメントから取得できます。
使用方法
1. テスト検索を実行する
npx ts-node src/test.ts
サンプル検索を実行し、結果をコンソールに出力します。
2. MCP 対応クライアントと連携する
このサーバーを MCP 設定の一部として使用するには、MCP 設定ファイル(例:claude_desktop_config.json)にエントリを追加します。
{
"mcpServers": {
"gemini-api": {
"command": "npx",
"args": ["ts-node", "src/index.ts"],
"env": {
"GEMIN_API_KEY": "your_gemini_api_key_here",
}
}
}
}
API キーと CX ID を実際の認証情報に置き換えてください。
利用可能なツール
このサーバーでは、次のツールを提供しています。
- googleSearchContent:Google Custom Search API を使用してウェブ検索を実行し、構造化された結果(タイトル、リンク、スニペット)を返します。
- googleSearchImages:Google Custom Search API を使用して画像検索を実行し、最初の検索結果への Markdown 画像リンクを返します。
詳しい使用方法については、src/tools.ts のソースコードを参照してください。
開発
プロジェクトを変更するには、次の手順に従います。
- 必要に応じて
srcディレクトリ内のコードを変更します。 - 依存関係を追加または削除した場合は、
package.jsonを適宜更新します。 - 変更を反映するには、MCP クライアントまたはテストスクリプトを再起動します。
トラブルシューティング
- Google API キーと CX ID が
.envファイルまたは環境に正しく設定されていることを確認してください。 - すべての依存関係がインストールされていることを確認してください(
npm install)。 - Node.js 18 以降を使用していることを確認してください。
- コードを変更した場合は、サーバーまたはテストスクリプトを再起動してください。
ライセンス
このプロジェクトは MIT License のもとでライセンスされています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。