Gemini MCP Server for Claude Desktop
Claude デスクトップ用の Gemini MCP サーバー
Claude Desktop が Google の Gemini AI モデルを使用して画像を生成できるようにする Model Context Protocol (MCP) サーバー。
🌟 特徴
Google の Gemini モデルを使用して、Claude Desktop から直接画像を生成します。
設定のための簡単なセットアップウィザード
カスタマイズ可能な画像生成パラメータ
Claude DesktopのMCPサーバーシステムとの統合
詳細なログ記録とデバッグ機能
簡単に導入・共有できるDockerサポート
Related MCP server: MCP Server Gemini
📋 要件
Node.js 16.x 以上
クロードデスクトップアプリケーション
Google Gemini API キー(こちらから取得)
Docker (オプション、コンテナ化されたデプロイメント用)
🚀 インストール
グローバルインストール(推奨)
npm install -g gemini-mcp-server
# Run the setup wizard
npx gemini-mcp-setupローカルインストール
# Create a directory for the server
mkdir gemini-mcp-server
cd gemini-mcp-server
# Install locally
npm install gemini-mcp-server
# Run the setup wizard
npx gemini-mcp-setupDockerのインストール
Docker を使用して Gemini MCP サーバーを実行することもできます。
# Build the Docker image
docker build -t gemini-mcp-server .
# Run the Docker container
docker run -e GEMINI_API_KEY="your-api-key" -e OUTPUT_DIR="/app/output" -v /path/on/host:/app/output gemini-mcp-server⚙️ セットアップ
セットアップ ウィザードが構成プロセスをガイドします。
Google Gemini APIキーを入力してください
生成された画像を保存するディレクトリを指定する
ログとモデル設定を構成する
Claude Desktop のラッパー スクリプトを自動的に作成する
Claude Desktopの設定を更新する
手動でセットアップする場合は、以下の手動構成セクションを参照してください。
🎨 Gemini MCP サーバーの使用
インストールと設定が完了したら、Claude Desktop を再起動して Gemini MCP サーバーを有効にします。次に、以下の操作を行います。
クロードと会話を始める
Claude に画像を生成するよう依頼します。例:
「夕暮れの山の風景の画像を生成する」
「空飛ぶ車がある未来都市の絵を描きましょう」
「ピアノを弾く猫のイラストを描いてください」
Claude は Gemini API を呼び出して画像を生成し、保存された画像ファイルへのパスを提供します。
詳細オプション
追加のパラメータを使用して画像生成をカスタマイズできます。
スタイル: 「リアル」、「芸術的」、「ミニマル」などのスタイルを指定します。
温度: 生成の創造性/ランダム性を制御する (0.0-1.0)
例:「温度 0.7 で、ネオンライトのあるサイバーパンク都市の画像をリアルなスタイルで生成する」
🔧 手動設定
セットアップ ウィザードを使用しない場合は、次の手順に従ってください。
1. 設定ファイルを作成する
設定を含む JSON 構成ファイルを作成します。
{
"apiKey": "YOUR_GEMINI_API_KEY_HERE",
"outputDir": "/path/to/your/output/directory",
"debug": true,
"modelOptions": {
"model": "gemini-2.0-flash-exp",
"temperature": 0.4
}
}2. ラッパースクリプトを作成する
サーバーを実行するための bash スクリプトを作成します。
#!/bin/bash
# Set environment variables
export GEMINI_API_KEY="YOUR_GEMINI_API_KEY_HERE"
export OUTPUT_DIR="/path/to/your/output/directory"
export DEBUG="true"
# Execute the server
exec "$(which node)" "$(npm root -g)/gemini-mcp-server/bin/gemini-mcp-server.js"スクリプトを実行可能にします。
chmod +x gemini-mcp-wrapper.sh3. Claudeデスクトップ構成を更新する
~/.config/claude/claude_desktop_config.jsonファイルを編集して、Gemini MCP サーバーを追加します。
{
"mcpServers": {
"gemini-image": {
"command": "/bin/bash",
"args": [
"-c",
"/path/to/your/gemini-mcp-wrapper.sh"
],
"env": {
"GEMINI_API_KEY": "YOUR_GEMINI_API_KEY_HERE",
"DEBUG": "true"
}
}
}
}🐳 Docker デプロイメント
このMCPサーバーには、簡単にデプロイして共有するためのDockerfileが含まれています。Dockerイメージは次のように構成されています。
軽量ベースとしてNode.js 16 Alpineを使用する
必要な依存関係をすべてインストールする
/app/outputにデフォルトの出力ディレクトリを設定する環境変数による設定を許可する
Dockerイメージの構築
docker build -t gemini-mcp-server .Dockerで実行する
docker run \
-e GEMINI_API_KEY="your-api-key" \
-e OUTPUT_DIR="/app/output" \
-e DEBUG="false" \
-v /path/on/host:/app/output \
gemini-mcp-serverDockerの環境変数
Docker コンテナを実行するときに、次の環境変数を使用してサーバーを構成できます。
GEMINI_API_KEY: Google Gemini API キー(必須)OUTPUT_DIR: 生成された画像を保存するディレクトリ(デフォルト:/app/output)DEBUG: デバッグログを有効にする (デフォルト:false)
Claude Desktopでの使用
Claude Desktop で Docker コンテナを使用する場合は、次のことが必要です。
コンテナが実行中であることを確認する
コンテナ化されたサーバーに接続するためにClaude Desktopを構成する
出力ディレクトリをクロードがアクセスできる場所にマップします
📚 APIドキュメント
コマンドラインインターフェース
gemini-mcp-server [options]オプション:
-k, --api-key <key>: Google Gemini API キー-o, --output-dir <dir>: 生成された画像を保存するディレクトリ-d, --debug: デバッグログを有効にする-c, --config <path>: カスタム設定ファイルへのパス-r, --reset-config: 設定をデフォルトにリセットする-v, --version: バージョン情報を表示する
環境変数
GEMINI_API_KEY: Google Gemini API キーOUTPUT_DIR: 生成された画像を保存するディレクトリDEBUG: デバッグログを有効にする(trueまたはfalse)LOG_LEVEL: ログレベルを設定する(ERROR、WARN、INFO、またはDEBUG)GEMINI_LOG_FILE: カスタムログファイルパス
設定オプション
オプション | 説明 | デフォルト |
| Google Gemini APIキー | (必須) |
| 生成された画像を保存するディレクトリ |
|
| デバッグログを有効にする |
|
| 使用するジェミニモデル |
|
| 創造性/ランダム性をコントロールする |
|
| トップkサンプリングパラメータ |
|
| トップpサンプリングパラメータ |
|
| 最大出力トークン |
|
🔍 トラブルシューティング
よくある問題
サーバーが起動しない、またはクロードがサーバーに接続できない
~/Claude/logs/gemini-image-mcp.logのログファイルを確認してください。APIキーが正しいことを確認してください
すべてのディレクトリが存在し、適切な権限があることを確認する
Claudeデスクトップを再起動します
画像が生成されません
Google Gemini APIキーに正しい権限があることを確認してください
出力ディレクトリが存在し、書き込み可能であるかを確認します
ログで特定のエラーメッセージを調べる
別のプロンプトまたはモデルを試してください
エラー:「メソッドが見つかりません」
これは通常、Claude が MCP サーバーがサポートしていないメソッドを呼び出そうとしていることを意味します。ログを確認して、どのメソッドが要求されたかを確認してください。
Docker固有の問題
コンテナが適切なネットワーク接続を持っていることを確認する
ボリュームマウントが正しく構成されているか確認する
環境変数が適切に設定されていることを確認する
docker logs [container-id]でコンテナのログを確認します
デバッグモード
より詳細なログを取得するには、デバッグ モードを有効にします。
npx gemini-mcp-server --debugまたは、環境変数を設定します。
export DEBUG=true
npx gemini-mcp-server📝 ライセンス
マサチューセッツ工科大学
🙏 謝辞
MCP仕様のモデルコンテキストプロトコル
Gemini API 向けGoogle Generative AI
このプロジェクトのすべての貢献者
Available Tools
10 toolsgemini-advanced-imageC
Generate advanced images with Gemini 2.5 Flash Image: multi-image fusion, character consistency, targeted editing, and template adherence
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | Text description of the desired image or editing instruction | |
| mode | No | Generation mode: fusion (blend multiple images), consistency (maintain character/style), targeted_edit (precise edits), template (follow layout), standard (basic generation) | |
| reference_images | No | Optional array of file paths to reference images for fusion, consistency, or template modes | |
| context | No | Optional context for intelligent enhancement (e.g., "fusion", "consistency", "artistic") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It mentions advanced features like fusion and consistency but doesn't explain operational details: whether it requires authentication, has rate limits, what happens with invalid inputs, or the format/quality of outputs. For a complex image generation tool with multiple modes, this leaves significant gaps in understanding how it behaves.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose ('Generate advanced images') and lists key capabilities without unnecessary words. Every phrase earns its place by highlighting distinct features, making it easy to scan and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex tool with 4 parameters, no annotations, and no output schema, the description is incomplete. It doesn't address critical context like output format (e.g., image file, URL), error handling, or usage constraints. The lack of behavioral details and guidelines leaves the agent under-informed about how to effectively invoke this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, providing good documentation for all parameters. The description adds marginal value by hinting at parameter usage through mode names (e.g., 'multi-image fusion' relates to 'fusion' mode and 'reference_images'), but doesn't explain semantics beyond what the schema already covers. Baseline 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generate advanced images with Gemini 2.5 Flash Image' followed by specific capabilities like multi-image fusion, character consistency, targeted editing, and template adherence. It distinguishes itself from basic image generation tools by emphasizing 'advanced' features, though it doesn't explicitly differentiate from sibling tools like 'generate_image' or 'gemini-edit-image'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lists capabilities but provides no guidance on when to use this tool versus alternatives. It doesn't mention when to choose this over 'generate_image' for basic needs or 'gemini-edit-image' for simpler edits, nor does it specify prerequisites like needing reference images for certain modes. Usage is implied through mode descriptions but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini-analyze-imageC
Analyze images using Gemini's multimodal vision capabilities (with learned user preferences)
| Name | Required | Description | Default |
|---|---|---|---|
| file_path | Yes | Path to the image file to analyze (supports JPEG, PNG, WebP, HEIC, HEIF, BMP, GIF) | |
| analysis_type | No | Type of analysis to perform: "summary", "objects", "text", "detailed", or "custom" | |
| context | No | Optional context for intelligent enhancement (e.g., "medical", "architectural", "nature") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'multimodal vision capabilities' and 'learned user preferences' but doesn't explain what these mean operationally. It doesn't disclose whether this is a read-only operation, what permissions are needed, rate limits, error conditions, or what the output format looks like. For a tool with no annotation coverage, this leaves significant behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that states the core functionality. The parenthetical about 'learned user preferences' adds some context without being verbose. However, the phrase 'learned user preferences' is somewhat vague and could be more precisely explained to earn full marks.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of image analysis with multiple parameter options and no output schema, the description is insufficiently complete. It doesn't explain what different analysis types produce, how 'learned user preferences' affect results, or what format the analysis returns. For a tool with 3 parameters (including an enum with 5 options) and no annotations, more contextual information is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds no parameter-specific information beyond what's already in the schema. Since schema description coverage is 100%, the baseline score is 3. The description doesn't explain the meaning of 'learned user preferences' in relation to parameters, nor does it provide additional context about parameter interactions or usage examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as 'Analyze images using Gemini's multimodal vision capabilities' with the specific verb 'analyze' and resource 'images'. It distinguishes from siblings like 'gemini-edit-image' (editing) and 'gemini-analyze-video' (video analysis) by focusing on image analysis. However, it doesn't explicitly differentiate from 'gemini-advanced-image' which might have overlapping functionality.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions 'learned user preferences' but doesn't explain how this affects tool selection. There's no mention of when to choose this over 'gemini-advanced-image', 'gemini-analyze-video', or other sibling tools, nor any prerequisites or exclusions for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini-analyze-videoB
Analyze video files using Gemini's multimodal video understanding capabilities (with learned user preferences)
| Name | Required | Description | Default |
|---|---|---|---|
| file_path | No | Path to the video file to analyze (supports MP4, MOV, AVI, WEBM, MKV, FLV) - for files under 100MB | |
| file_uri | No | URI of pre-uploaded file (use gemini-upload-file first for files over 100MB) | |
| mime_type | No | MIME type when using file_uri (e.g., "video/mp4") | |
| analysis_type | No | Type of analysis to perform: "summary", "transcript", "objects", "detailed", or "custom" | |
| context | No | Optional context for intelligent enhancement (e.g., "security", "educational", "entertainment") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'learned user preferences' which hints at personalization, but doesn't explain what this means operationally. It doesn't disclose rate limits, authentication requirements, whether analysis is synchronous or asynchronous, what happens with large files, or what the output format will be. The description is too vague about behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, reasonably concise sentence that states the core functionality. It's front-loaded with the main purpose. However, the parenthetical about 'learned user preferences' feels tacked on and could be integrated more smoothly, and the description could benefit from slightly more structure for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a video analysis tool with 5 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what the different analysis_types actually do (summary vs detailed vs objects), what format the results will be in, whether there are file size or duration limits beyond the 100MB mentioned in the schema, or how 'learned user preferences' actually affect the analysis. The description leaves too many operational questions unanswered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 100% schema description coverage, the baseline is 3. The description doesn't add any meaningful parameter semantics beyond what's already in the schema. It mentions 'learned user preferences' and 'intelligent enhancement' in relation to the context parameter, but this is vague and doesn't provide concrete guidance on how parameters interact or what 'custom' analysis_type entails.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Analyze video files using Gemini's multimodal video understanding capabilities'. It specifies the resource (video files) and the action (analyze with multimodal understanding). However, it doesn't explicitly distinguish this tool from sibling tools like gemini-analyze-image or gemini-transcribe-audio beyond mentioning 'video' specifically.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides some implicit usage guidance through the mention of 'learned user preferences' and the context parameter for 'intelligent enhancement', but it doesn't explicitly state when to use this tool versus alternatives like gemini-transcribe-audio for audio-only analysis or gemini-analyze-image for static images. The input schema descriptions provide some practical guidance (e.g., use gemini-upload-file first for large files), but this isn't in the main description.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini-chatC
Chat with Gemini AI for conversations, questions, and general assistance (with learned user preferences)
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | Your message or question to chat with Gemini AI | |
| context | No | Optional additional context for the conversation (e.g., "aurora", "debugging", "code") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'learned user preferences,' which hints at personalization, but doesn't clarify what this entails (e.g., how preferences are applied, if they affect responses). It lacks details on rate limits, authentication needs, response format, or conversational state management, which are critical for a chat tool with no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose. However, the parenthetical '(with learned user preferences)' could be integrated more smoothly, and it lacks structural elements like bullet points or examples that might enhance clarity without adding unnecessary length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a chat tool with no annotations and no output schema, the description is incomplete. It doesn't address key aspects like response format, error handling, or how 'learned user preferences' function. For a tool that likely involves nuanced interactions, more context is needed to guide the agent effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters thoroughly. The description adds no additional meaning beyond what the schema provides—it doesn't explain how 'context' interacts with 'message' or provide examples of effective usage. The baseline score of 3 reflects adequate but minimal value added over the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Chat with Gemini AI for conversations, questions, and general assistance.' It specifies the verb ('Chat'), resource ('Gemini AI'), and scope ('conversations, questions, and general assistance'). However, it doesn't explicitly differentiate from siblings like gemini-nano-banana-pro or gemini-advanced-image, which might also involve conversational interactions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It mentions 'learned user preferences' but doesn't explain how this affects usage or when to choose other tools like gemini-analyze-image or gemini-code-execute. There are no explicit when/when-not statements or named alternatives, leaving the agent to infer usage from context alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini-code-executeC
Execute Python code using Gemini's built-in code execution sandbox (with learned user preferences)
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | Python code to execute in the sandbox | |
| context | No | Optional context for intelligent enhancement (e.g., "data-science", "automation", "testing") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'code execution sandbox' and 'learned user preferences', hinting at a safe, isolated environment and personalized behavior, but fails to detail critical aspects like execution timeouts, memory limits, supported Python versions, error handling, or security restrictions. For a code execution tool with zero annotation coverage, this leaves significant gaps in understanding its operational behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core functionality ('Execute Python code') and adds relevant context ('using Gemini's built-in code execution sandbox' and 'with learned user preferences'). There's no wasted verbiage, and it effectively communicates the tool's essence without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a code execution tool, the absence of annotations, and no output schema, the description is insufficiently complete. It doesn't explain what happens during execution (e.g., sandbox isolation, result formats, error outputs) or how 'learned user preferences' manifest. For a tool that could have significant behavioral nuances and safety implications, more detail is needed to guide the agent effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with clear descriptions for both parameters ('code' and 'context') in the input schema. The description adds minimal value beyond this, only implying that 'context' might influence enhancements based on user preferences. Since the schema already documents parameters thoroughly, the baseline score of 3 is appropriate, as the description doesn't significantly enhance parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Execute Python code') and the resource ('Gemini's built-in code execution sandbox'), which is specific and unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'gemini-chat' or 'gemini-nano-banana-pro', which might also involve code execution or processing. The mention of 'learned user preferences' adds nuance but doesn't fully establish uniqueness among siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, limitations, or scenarios where other tools (e.g., 'gemini-chat' for conversational code help or 'gemini-analyze-image' for image-related tasks) might be more appropriate. The lack of explicit usage context leaves the agent without direction on tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini-edit-imageC
Edit existing images using Gemini's AI image editing capabilities (with learned user preferences)
| Name | Required | Description | Default |
|---|---|---|---|
| image_path | Yes | Path to the image file to edit (JPEG, PNG, WebP, GIF, BMP) | |
| edit_instruction | Yes | Detailed instruction for how to edit the image | |
| context | No | Optional context for intelligent enhancement (e.g., "subtle", "dramatic", "professional") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral disclosure. It mentions 'AI image editing capabilities' and 'learned user preferences', hinting at intelligent processing and personalization, but lacks details on permissions, rate limits, output format, or mutation effects (e.g., whether edits are destructive or reversible). This is inadequate for a tool with implied mutation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose. It avoids redundancy and wastes no words, though it could be slightly more structured (e.g., separating functionality from context). It earns its place but isn't perfectly optimized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is incomplete for an AI editing tool. It lacks critical context: output format (e.g., returns edited image or path), error handling, mutation behavior, and how 'learned user preferences' apply. This leaves significant gaps for agent understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents parameters. The description adds no additional meaning beyond what's in the schema (e.g., no examples or deeper context for 'edit_instruction' or 'context'). Baseline 3 is appropriate as the schema handles parameter semantics effectively.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Edit') and resource ('existing images'), specifying it uses 'Gemini's AI image editing capabilities'. It distinguishes from siblings like 'generate_image' (creation) and 'gemini-analyze-image' (analysis), though not explicitly. However, it doesn't fully differentiate from 'gemini-advanced-image' (purpose unclear), making it a 4 rather than a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives. It mentions 'learned user preferences' but doesn't clarify if this is for personalization or how it affects tool selection. No exclusions, prerequisites, or named alternatives are provided, leaving usage context implied at best.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini-nano-banana-proB
Generate professional images with Nano Banana Pro (Gemini 3 Pro Image): 4K resolution, up to 14 reference images, advanced text rendering, character consistency, and studio-grade controls
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | Text description of the desired image or editing instruction | |
| mode | No | Generation mode: fusion (blend up to 14 images), consistency (maintain character/style for up to 5 characters), targeted_edit (precise localized edits), template (follow layout), standard (basic generation) | |
| resolution | No | Output resolution: 1k (1024px), 2k (2048px), or 4k (4096px). Higher resolutions cost more. | |
| aspect_ratio | No | Aspect ratio for the generated image | |
| reference_images | No | Optional array of file paths to reference images (up to 14 for Nano Banana Pro) | |
| context | No | Optional context for intelligent enhancement (e.g., "professional", "artistic", "infographic") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions key features like resolution options, reference image limits, and 'studio-grade controls', which adds useful context beyond basic generation. However, it doesn't cover important behavioral aspects like rate limits, authentication needs, cost implications (implied by 'Higher resolutions cost more' in schema but not in description), or what happens with invalid inputs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficiently structured as a single sentence listing key features. It's appropriately sized for a complex tool with 6 parameters, though it could be more front-loaded by starting with the core purpose more clearly. Every phrase adds value by highlighting distinctive capabilities of this specific implementation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex image generation tool with 6 parameters and no annotations or output schema, the description provides adequate but incomplete context. It covers the tool's high-level capabilities and some key features, but doesn't address important aspects like output format, error conditions, or how it differs from sibling tools. The absence of an output schema means the description should ideally mention what gets returned, but it doesn't.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 6 parameters thoroughly. The description adds minimal parameter semantics beyond what's in the schema - it mentions '4K resolution' and 'up to 14 reference images' which align with schema fields, but doesn't provide additional context about parameter interactions or usage patterns. The baseline of 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Generate professional images with Nano Banana Pro (Gemini 3 Pro Image)'. It specifies the verb ('Generate'), resource ('professional images'), and technology ('Nano Banana Pro/Gemini 3 Pro Image'). However, it doesn't explicitly differentiate from sibling tools like 'gemini-advanced-image' or 'generate_image', which likely serve similar image generation purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It lists features like '4K resolution' and 'up to 14 reference images', but doesn't mention sibling tools such as 'gemini-advanced-image' or 'gemini-edit-image' for comparison. There's no explicit when/when-not usage advice or prerequisites stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini-transcribe-audioB
Transcribe audio files to text using Gemini's multimodal capabilities (with learned user preferences)
| Name | Required | Description | Default |
|---|---|---|---|
| file_path | Yes | Path to the audio file to transcribe (supports MP3, WAV, FLAC, AAC, OGG, WEBM) | |
| language | No | Optional language hint for better transcription accuracy (e.g., "en", "es", "fr") | |
| context | No | Optional context for intelligent enhancement (e.g., "medical", "legal", "technical") | |
| preserve_spelled_acronyms | No | Keep spelled-out letters (U-R-L) instead of converting to acronyms (URL) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral disclosure. It mentions 'learned user preferences' but doesn't explain what this entails (e.g., customization, history). It lacks details on rate limits, authentication needs, output format, error handling, or processing time. For a tool with 4 parameters and no annotations, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose. However, it could be more structured by separating functional description from behavioral context. It avoids redundancy but misses opportunities to add crucial usage details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain the return value (e.g., transcription text format), error cases, or how 'learned user preferences' affect behavior. For a tool with moderate complexity and no structured safety hints, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all parameters. The description adds no additional parameter semantics beyond what's in the schema (e.g., it doesn't clarify 'context' usage or 'learned preferences' interaction with parameters). Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Transcribe audio files to text'), identifies the resource ('audio files'), and mentions the unique capability ('using Gemini's multimodal capabilities with learned user preferences'). It distinguishes itself from sibling tools by focusing on audio transcription rather than image/video analysis, code execution, or file uploads.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., file accessibility), exclusions (e.g., unsupported formats beyond those in schema), or comparisons with other transcription tools. The context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini-upload-fileA
Upload files to Gemini File API (up to 2GB) for use in subsequent operations. Files persist for 48 hours.
| Name | Required | Description | Default |
|---|---|---|---|
| file_path | No | Path to the file to upload | |
| display_name | No | Optional display name for the file (defaults to filename) | |
| operation | Yes | Operation to perform: "upload", "list", "get", or "delete" | |
| file_name | No | File name (for get/delete operations) | |
| page_size | No | Number of files to list (for list operation, max 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses key behavioral traits: file size limit (2GB) and persistence (48 hours), which are valuable beyond the schema. However, it lacks details on error handling, rate limits, authentication requirements, or what 'subsequent operations' entail, leaving gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with zero waste: the first states the core function and constraints, the second adds persistence info. It's front-loaded with the main purpose, and every sentence adds essential context without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is moderately complete for a 5-parameter mutation tool. It covers purpose and key constraints but lacks details on permissions, error cases, return values, or how parameters interact. For a tool that handles file operations with multiple 'operation' types, more context on behavioral outcomes would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all 5 parameters. The description adds no specific parameter semantics beyond implying that uploaded files are used in later steps. It doesn't clarify parameter interactions (e.g., how 'operation' affects other params) or provide examples, so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool uploads files to the Gemini File API with a size limit (up to 2GB) and mentions persistence duration (48 hours). It distinguishes from siblings by focusing on file upload rather than analysis, chat, or image generation. However, it doesn't explicitly differentiate from potential file management siblings beyond the upload focus.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for preparing files for subsequent operations, providing some context. However, it doesn't specify when to use this tool versus alternatives (e.g., direct API calls or other upload methods), nor does it mention prerequisites like authentication or file format restrictions. The guidance is limited to the tool's role in a workflow.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_imageC
Generate an image using Google's Gemini 2.0 Flash Experimental model (with learned user preferences)
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | Text description of the desired image | |
| context | No | Optional context for intelligent enhancement (e.g., "artistic", "photorealistic", "technical") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the model and 'learned user preferences', but fails to detail critical aspects such as rate limits, authentication requirements, output format (e.g., image type, size), or potential costs/limitations. This leaves significant gaps for an AI agent to understand the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's purpose without unnecessary details. It is front-loaded with the core action and model specification, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of image generation (involving models, preferences, and output handling), the description is insufficient. With no annotations and no output schema, it lacks details on behavioral traits, return values, or error handling. This makes it incomplete for effective tool invocation by an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents both parameters ('prompt' and 'context') adequately. The description adds no additional parameter semantics beyond what the schema provides, such as examples or constraints, resulting in the baseline score of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('generate an image') and specifies the model used ('Google's Gemini 2.0 Flash Experimental model'), which distinguishes it from siblings like 'gemini-edit-image' or 'gemini-analyze-image'. However, it doesn't explicitly contrast with all siblings (e.g., 'gemini-advanced-image'), keeping it from a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives is provided. The description mentions 'learned user preferences' but doesn't clarify how this affects tool selection or when to choose it over other image-related tools like 'gemini-advanced-image' or 'gemini-edit-image'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
v1.0.0- Added
gemini-advanced-image - Added
gemini-nano-banana-pro
8 tool updates
- First observed
gemini-analyze-image - First observed
gemini-analyze-video - First observed
gemini-chat - First observed
gemini-code-execute - First observed
gemini-edit-image - First observed
gemini-transcribe-audio - First observed
gemini-upload-file - First observed
generate_image
TDQS
Scored across 10 tools
Most tools have distinct purposes (e.g., analyze vs. generate vs. transcribe), but there is notable overlap between gemini-advanced-image, gemini-nano-banana-pro, and generate_image—all focused on image generation with varying model specifications. This could cause confusion for an agent trying to select the right image generation tool.
Nine of the ten tools follow a consistent gemini-verb-noun pattern (e.g., gemini-analyze-image), which is clear and predictable. However, generate_image deviates from this pattern by omitting the gemini prefix, creating a minor inconsistency in the naming scheme.
With 10 tools, the count is well-scoped for a Gemini AI server, covering key multimodal capabilities like image analysis, video analysis, chat, code execution, and file handling. Each tool appears to serve a specific function without unnecessary duplication, making the set appropriately sized.
The toolset provides broad coverage for interacting with Gemini's multimodal features, including image generation/editing, audio/video analysis, chat, and file uploads. A minor gap is the lack of a dedicated tool for text-based document analysis or summarization, but core workflows are well-supported.
Maintenance
Related MCP Connectors
MCP server for Qwen Image 3 AI image generation
MCP server for Google Veo AI video generation
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
MCP server for Flux AI image generation
Related MCP Servers
- AlicenseBqualityDmaintenanceA MCP server that enables Claude and other MCP-compatible assistants to generate images from text prompts using Together AI's image generation models.14MIT
- AlicenseBqualityDmaintenanceA Model Context Protocol server that enables Claude Desktop and other MCP-compatible clients to leverage Google's Gemini AI models with features like thinking models, Google Search grounding, JSON mode, and vision support.644 npm14MIT
- AlicenseAqualityDmaintenanceAn MCP server that brings Google Gemini's image generation and editing capabilities to Claude Desktop, Claude Code, and Cursor. It supports 2K image creation, natural language image transformations, and session consistency to maintain styles across generations.7824 npmMIT
- AlicenseAqualityCmaintenanceMCP server that brings Gemini's image generation and editing capabilities to Claude Desktop, Claude Code, and Cursor. Supports Nano Banana 2 (Flash) and Nano Banana Pro models.7824 npm32MIT