Gemini MCP Server for Claude Desktop
Claude Desktop용 Gemini MCP 서버
Claude Desktop이 Google의 Gemini AI 모델을 사용하여 이미지를 생성할 수 있도록 하는 MCP(Model Context Protocol) 서버입니다.
🌟 특징
Google의 Gemini 모델을 사용하여 Claude Desktop에서 직접 이미지 생성
구성을 위한 간편한 설정 마법사
사용자 정의 가능한 이미지 생성 매개변수
Claude Desktop의 MCP 서버 시스템과 통합
자세한 로깅 및 디버깅 기능
간편한 배포 및 공유를 위한 Docker 지원
Related MCP server: MCP Server Gemini
📋 요구 사항
Node.js 16.x 이상
클로드 데스크톱 애플리케이션
Google Gemini API 키( 여기서 받으세요 )
Docker(컨테이너화된 배포를 위한 선택 사항)
🚀 설치
글로벌 설치(권장)
지엑스피1
로컬 설치
# 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-setup도커 설치
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을 구성합니다.
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 키 | (필수의) |
| 생성된 이미지를 저장할 디렉토리 |
|
| 디버그 로깅 활성화 |
|
| 사용할 쌍둥이 모델 |
|
| 창의성/무작위성 제어 |
|
| Top-k 샘플링 매개변수 |
|
| Top-p 샘플링 매개변수 |
|
| 최대 출력 토큰 |
|
🔍 문제 해결
일반적인 문제
서버가 시작되지 않거나 Claude가 서버에 연결할 수 없습니다.
~/Claude/logs/gemini-image-mcp.log에서 로그 파일을 확인하세요.API 키가 올바른지 확인하세요
모든 디렉토리가 존재하고 적절한 권한이 있는지 확인하세요.
Claude Desktop을 다시 시작하세요
이미지가 생성되지 않습니다
Google Gemini API 키에 올바른 권한이 있는지 확인하세요.
출력 디렉토리가 존재하고 쓰기 가능한지 확인하세요
특정 오류 메시지에 대한 로그를 검사합니다.
다른 프롬프트나 모델을 시도해 보세요
오류: "메서드를 찾을 수 없습니다"
이는 일반적으로 Claude가 MCP 서버에서 지원하지 않는 메서드를 호출하려고 한다는 것을 의미합니다. 어떤 메서드가 요청되었는지 확인하려면 로그를 확인하세요.
Docker 관련 문제
컨테이너에 적절한 네트워크 연결이 있는지 확인하세요.
볼륨 마운트가 올바르게 구성되었는지 확인하세요
환경 변수가 올바르게 설정되었는지 확인하세요
docker logs [container-id]사용하여 컨테이너 로그를 검토합니다.
디버그 모드
더 자세한 로그를 보려면 디버그 모드를 활성화하세요.
npx gemini-mcp-server --debug또는 환경 변수를 설정합니다.
export DEBUG=true
npx gemini-mcp-server📝 라이센스
MIT
🙏 감사의 말
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