Gemini MCP Server for Claude Desktop
适用于 Claude 桌面的 Gemini MCP 服务器
模型上下文协议 (MCP) 服务器使 Claude Desktop 能够使用 Google 的 Gemini AI 模型生成图像。
🌟 功能
使用 Google 的 Gemini 模型直接从 Claude Desktop 生成图像
简易的设置向导,方便配置
可定制的图像生成参数
与 Claude Desktop 的 MCP 服务器系统集成
详细的日志记录和调试功能
Docker 支持,轻松部署和共享
Related MCP server: MCP Server Gemini
📋 要求
Node.js 16.x 或更高版本
Claude桌面应用程序
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 为你生成一张图片,例如:
“生成日落时分的山景图像”
“描绘一个有飞行汽车的未来城市”
“制作一幅猫弹钢琴的插图”
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 连接到容器化服务器
将输出目录映射到 Claude 可访问的位置
📚 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 密钥 | (必需的) |
| 保存生成的图像的目录 |
|
| 启用调试日志记录 |
|
| 使用 Gemini 模型 |
|
| 控制创造力/随机性 |
|
| Top-k采样参数 |
|
| Top-p 抽样参数 |
|
| 最大输出令牌 |
|
🔍 故障排除
常见问题
服务器未启动或 Claude 无法连接
检查日志文件
~/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 规范的模型上下文协议
该项目的所有贡献者
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