Gemini MCP Server
Provides tools for interacting with Google's Gemini API, enabling chat with Google Search grounding, deep research, image generation and editing, video generation via Veo 3.1, SVG creation, landing page generation, and media analysis.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Gemini MCP Serverwhat's the latest news on AI regulation?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@houtini/gemini-mcp
I've been running this MCP server in my Claude Desktop setup for months. It's one of the few I leave on permanently — not because Gemini replaces Claude, but because grounded search, image generation, SVG diagrams, and video are things Gemini does genuinely well. Having them as tools inside Claude beats switching browser tabs.
Thirteen tools. One npx command.
Quick Navigation
Get started | What it does | SVG generation | Image output | Configuration | Agents | Tools | Models | Requirements
What it looks like
Generated images, SVGs, and videos render inline in Claude Desktop with zoom controls, file paths, and prompt context:
Image generation | SVG / diagram generation |
|
|
Image embed | SVG embed | Video embed |
|
|
|
Related MCP server: Gemini MCP Server
Get started in two minutes
Step 1: Get a Gemini API key
Go to Google AI Studio and create one. The free tier covers most development use — you'll hit rate limits on deep research if you're hammering it, but for day-to-day work it's fine.
Step 2: Add to your Claude Desktop config
Config file locations:
Windows:
C:\Users\{username}\AppData\Roaming\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"gemini": {
"command": "npx",
"args": ["@houtini/gemini-mcp"],
"env": {
"GEMINI_API_KEY": "your-api-key-here"
}
}
}
}Step 3: Restart Claude Desktop
That's it. Tools show up automatically. npx pulls the package on first run — no separate install needed.
Local build instead
For development, or if you'd rather not rely on npx:
git clone https://github.com/houtini-ai/gemini-mcp
cd gemini-mcp
npm install --include=dev
npm run buildThen point your config at the local build:
{
"mcpServers": {
"gemini": {
"command": "node",
"args": ["C:/path/to/gemini-mcp/dist/index.js"],
"env": {
"GEMINI_API_KEY": "your-api-key-here"
}
}
}
}Claude Code (CLI)
Claude Code uses a different registration mechanism — it doesn't read claude_desktop_config.json. Use claude mcp add instead:
claude mcp add -e GEMINI_API_KEY=your-api-key-here -s user gemini -- npx -y @houtini/gemini-mcpWith optional image output directory:
claude mcp add \
-e GEMINI_API_KEY=your-api-key-here \
-e GEMINI_IMAGE_OUTPUT_DIR=/path/to/output \
-s user \
gemini -- npx -y @houtini/gemini-mcpVerify with claude mcp get gemini — you should see Status: Connected.
What it does
Chat with Google Search grounding
Use gemini:gemini_chat to ask: "What changed in the MCP spec in the last month?"Grounding is on by default. Gemini searches Google before answering, so you get current information rather than training cutoff answers. Sources come back as markdown links. For questions where you want pure reasoning — "explain this code" or similar — set grounding: false.
Supports thinking_level on Gemini 3 models: high for maximum reasoning depth, low to keep it fast, medium/minimal on Gemini 3 Flash only.
Deep research
Use gemini:gemini_deep_research with:
research_question="What are the current approaches to AI agent memory management?"
focus_areas=["episodic memory", "retrieval"]Runs Google's real Deep Research agent through the Gemini Interactions API: it autonomously performs many rounds of live web search and returns a synthesised, cited report. This is the actual Deep Research product — not a grounding-augmented chat loop. The interaction runs asynchronously (created in the background, then polled) and takes several minutes.
Pick the agent with model: deep-research-pro-preview-12-2025 (default), deep-research-preview-04-2026, or deep-research-max-preview-04-2026 (most thorough, slowest). Pass focus_areas as an array to steer toward specific angles. Requires Interactions API access on your Gemini key.
Image generation with search grounding
Use gemini:generate_image with:
prompt="Stock price chart showing Apple (AAPL) closing prices for the last 5 trading days"
use_search=true
aspectRatio="16:9"Default model is gemini-3-pro-image-preview (Nano Banana Pro). Also supports gemini-2.5-flash-image for faster generation.
When use_search=true, Gemini searches Google for current data before generating. Financial and news queries work reliably. The full-resolution image saves to disk automatically — the inline preview is resized for transport but the original is untouched.
Video generation with Veo 3.1
Use gemini:generate_video with:
prompt="A close-up shot of a futuristic coffee machine brewing a glowing blue espresso, steam rising dramatically. Cinematic lighting."
resolution="1080p"
durationSeconds=8Uses Google's Veo 3.1 model. Generates 4-8 second videos at up to 4K with native synchronised audio. Processing takes 2-5 minutes — the tool polls automatically until ready.
Options worth knowing:
aspectRatio—16:9landscape or9:16portrait/verticalgenerateAudio— on by default, produces dialogue and sound effects matching the promptsampleCount— generate up to 4 variations in one callseed— deterministic output across runsgenerateThumbnail— extracts a frame via ffmpeg (needs ffmpeg in PATH)firstFrameImage— animate from a starting image (image-to-video)
SVG generation
This is the one people underestimate. SVG output isn't just diagrams — it's production-ready vector graphics you can drop straight into a codebase, a presentation, or a web page. Clean, scalable, no raster artefacts.
Use gemini:generate_svg with:
prompt="Architecture diagram showing a microservices system with API gateway, three services, and a shared database"
style="technical"
width=1000
height=600Four styles:
Style | Best for |
| Architecture diagrams, flowcharts, system maps |
| Illustrations, decorative graphics, icons |
| Clean data visualisations, simple charts |
| Complex charts, dashboards, infographics |
The output is actual SVG code — edit it, animate it, embed it in HTML, commit it to a repo. No rasterising, no export steps, no Figma required.

Image editing and analysis
Conversational editing — Gemini 3 Pro Image maintains context across editing turns. Pass thought signatures back on subsequent edit_image calls for full continuity:
Use gemini:edit_image with:
prompt="Change the colour scheme to blue and green"
images=[{data: imageBase64, mimeType: "image/png", thoughtSignature: "fromPreviousCall"}]Analysis — two tools for different purposes:
describe_image— Fast general descriptions using Gemini 3 Flashanalyze_image— Structured extraction and detailed reasoning using Gemini 3.1 Pro
Load local files:
Use gemini:load_image_from_path with filePath="C:/screenshots/error.png"Media resolution control
Reduce token usage by up to 75% whilst maintaining quality for the task:
Level | Tokens | Savings | Best for |
| 280 | 75% | Simple tasks, bulk operations |
| 560 | 50% | PDFs/documents (OCR saturates here) |
| 1120 | default | Detailed analysis |
| 2000+ | per-image only | Maximum detail |
For PDF OCR, MEDIUM gives identical text extraction quality to HIGH at half the tokens.
Landing page generation
Use gemini:generate_landing_page with:
brief="A SaaS tool that helps developers monitor API latency"
companyName="PingWatch"
primaryColour="#6366F1"
style="startup"
sections=["hero", "features", "pricing", "cta"]Returns a self-contained HTML file — inline CSS and vanilla JS, no external dependencies. Styles: minimal, bold, corporate, startup.
Professional chart design systems
gemini_prompt_assistant includes 9 professional chart design systems:
System | Inspiration | Best for |
storytelling | Cole Nussbaumer Knaflic | Executive presentations |
financial | Financial Times | Editorial journalism — FT Pink, serif titles |
terminal | Bloomberg / Fintech | High-density dark mode with neon |
modernist | W.E.B. Du Bois | Bold geometric blocks, stark contrasts |
professional | IBM Carbon / Tailwind | Enterprise dashboards |
editorial | FiveThirtyEight / Economist | Data journalism |
scientific | Nature / Science | Academic rigour |
minimal | Edward Tufte | Maximum data-ink ratio |
dark | Observable | Modern dark mode |
Help system
Use gemini:gemini_help with topic="overview"Full documentation without leaving Claude. Topics: overview, image_generation, image_editing, image_analysis, chat, deep_research, grounding, media_resolution, models, all.
Image output and storage
By default, images return as inline previews rendered directly in Claude. Set GEMINI_IMAGE_OUTPUT_DIR to auto-save everything:
"env": {
"GEMINI_API_KEY": "your-api-key-here",
"GEMINI_IMAGE_OUTPUT_DIR": "C:/Users/username/Pictures/gemini-output"
}The server uses a two-tier approach to handle the MCP protocol's 1MB JSON-RPC limit whilst preserving full-resolution files:
Tier | Purpose |
Full-res | Saved to disk immediately, untouched |
Preview | Resized JPEG for inline transport — dynamically sized to fit under the cap |
Gemini returns 2-5MB images. The resize is smart — it measures the non-image overhead in each response and calculates the exact binary budget available, stepping down dimensions (800→600→400→300→200px) until it fits. The full image is always there on disk.
Configuration reference
Variable | Required | Default | Description |
| Yes | — | Google AI API key from AI Studio |
| No |
| Default model for |
| No |
| Deep Research agent for |
| No |
| Enable Google Search grounding by default |
| No | — | Auto-save directory for generated images and videos |
| No |
| Include experimental/preview models in auto-discovery |
| No |
| Write logs to |
| No |
| Log to stderr for debugging tool calls |
| No |
| Path/name of the |
| No | — | Default agent model label (e.g. |
| No |
| Default hard timeout per agent run |
| No |
| Auto-approve agent tool calls ( |
Agents
Beyond single-shot text, the server can launch autonomous Gemini agents via
the agy CLI. Where gemini_chat returns one answer, gemini_agent
gives the model a working directory in which it can read & edit files and run
shell commands to actually carry out a multi-step task, then reports back — so
Claude can delegate self-contained coding/research/automation jobs to a Gemini
coworker and iterate via the returned conversation_id.
Use gemini:gemini_agent with:
task="In ./service, add input validation to the POST /users endpoint and a test for it."
directory="/abs/path/service"
model="Gemini 3.1 Pro (High)"The agent uses agy's own login (Antigravity / Cloud Code) — independent of
GEMINI_API_KEY. Pick a Flash model for speed, a Pro/High model for harder
reasoning; list the exact labels with gemini_agent_models. See
gemini_help topic="agents" for the full parameter reference.
Tools reference
Tool | Description |
| Chat with Gemini 3.1 Pro. Google Search grounding on by default. Supports |
| Real Google Deep Research agent (Interactions API): autonomous multi-step web research, synthesised cited report |
| Launch an autonomous Gemini agent ( |
| Lists the agent model labels available via |
| Extract text verbatim from images or PDFs (Markdown structure preserved) |
| Summarise text or almost any local file (text/code, PDF, images, audio, video) |
| Transcribe speech from audio/video, with optional timestamps and speaker labels |
| Extract structured JSON from text or any file (Gemini JSON mode, optional schema) |
| Lists available models from the Gemini API |
| Documentation for all features without leaving Claude |
| Expert guidance for image generation with 9 chart design systems |
| Image generation with optional search grounding. Full-res saved to disk |
| Edit images with natural-language instructions. Multi-turn continuity via thought signatures |
| Fast image descriptions using Gemini 3 Flash |
| Structured extraction and analysis using Gemini 3.1 Pro |
| Read a local image file and return base64 for any image tool |
| Video generation with Veo 3.1 — 4-8 seconds at up to 4K with native audio |
| Production-ready SVG: diagrams, illustrations, icons, data visualisations |
| Self-contained HTML landing pages with inline CSS/JS |
Model reference
Model | Used by | Notes |
|
| Default. Advanced reasoning |
|
| Nano Banana Pro — highest quality image generation |
|
| Faster generation, higher volume |
|
| Fast general descriptions |
|
| Veo 3.1 — 4K video with native audio |
|
| Real Deep Research agent (Interactions API). Also: |
Gemini 3 notes: Temperature is forced to 1.0 on Gemini 3 models (Google's requirement — lower values cause looping). Thinking level only applies to gemini_chat.
Requirements
Node.js 18+
A Gemini API key from Google AI Studio
ffmpeg (optional, for video thumbnail extraction)
Licence
Apache-2.0
Available Tools
19 toolsanalyze_imageAnalyze ImageB
Analyze and extract information from one or more images using Gemini multimodal understanding. Returns a text analysis — no image is generated. Default model: gemini-3-pro-preview.
| Name | Required | Description | Default |
|---|---|---|---|
| images | Yes | One or more images to analyze | |
| prompt | Yes | What to analyze or extract from the image(s) | |
| model | No | Model to use (default: gemini-3-pro-preview) | |
| max_tokens | No | Maximum tokens in response (default 16384, up to 64K output limit) | |
| global_media_resolution | No | Global image quality for cost optimization. MEDIUM recommended for PDFs (50% savings). |
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description carries the burden. It discloses key traits: returns text only, default model, and multimodal understanding. However, it omits details like error handling, size limits, or idempotency.
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?
Two sentences, no wasted words. Front-loaded with the core purpose, followed by a key behavioral note and default model. Highly efficient.
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 5 parameters, an output schema, and no annotations, the description covers the essential purpose and a behavioral trait. It lacks sibling differentiation and usage context, but otherwise meets needs for a moderately complex 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?
Input schema coverage is 100% with detailed descriptions for all parameters. The tool description adds minimal extra meaning beyond restating the default model, so baseline 3 is appropriate.
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?
Description clearly states the tool analyzes and extracts information from images and returns text. It distinguishes from image generation tools by stating 'no image is generated,' but does not explicitly differentiate from similar analysis tools like describe_image or extract_structured_data.
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 guidance on when to use this tool versus alternatives. The description does not mention scenarios or limitations, leaving the agent to infer usage without explicit directions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
describe_imageDescribe Image (Nano Banana Pro)A
Analyze and describe one or more images using Google Gemini image models (Nano Banana Pro). Returns a text description — no image is generated. Default model: gemini-3-flash-preview.
| Name | Required | Description | Default |
|---|---|---|---|
| images | Yes | One or more images to describe/analyze | |
| prompt | No | Optional custom analysis prompt (default: general description) | |
| model | No | Gemini image model to use (default: gemini-3-flash-preview) | |
| global_media_resolution | No | Global image quality for cost optimization. MEDIUM recommended for PDFs (50% savings). |
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the tool returns a text description and does not generate images, but it does not mention other behavioral traits such as read-only nature, authentication needs, or rate limits. With no annotations, this is a moderate disclosure.
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 concise (two sentences) and front-loaded with the primary action. Every sentence serves a purpose: stating the action and model, clarifying output, and specifying the default model.
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 straightforward image description tool, the description covers the essential purpose and output. However, with many siblings, more context on differentiation could improve completeness. The presence of an output schema reduces the need for return value details.
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 baseline is 3. The description itself does not elaborate on parameters; all parameter details are already in the schema. No additional meaning is added.
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 action ('analyze and describe') and resource ('images'). It specifies the method (Google Gemini image models) and explicitly notes that no image is generated, preventing confusion with generation tools. The default model is also mentioned, adding specificity.
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 guidance is given on when to use this tool versus siblings like 'analyze_image' or 'extract_structured_data'. The description lacks context for appropriate usage scenarios or alternatives, leaving the agent without decision support.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
edit_imageEdit Image with GeminiA
Edit one or more images using Google Gemini image models (Nano Banana Pro). Provide images and natural-language instructions for how to modify them. Returns edited image with inline preview and saves full-resolution to disk.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | Instructions for how to edit the image(s) | |
| images | Yes | One or more images to edit | |
| model | No | Gemini image model to use (default: gemini-3-pro-image-preview) | |
| use_search | No | Enable Google Search grounding for data-driven editing | |
| global_media_resolution | No | Global image quality setting (default: HIGH). See generate_image for details. | |
| outputPath | No | Optional file path to save the edited image (e.g., ./output/edited.png) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It mentions returning an inline preview and saving to disk, but does not disclose potential side effects or requirements like authentication. Adequate but not detailed.
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 sentences, clearly front-loaded with the core action. Every sentence adds value, though could be structured with bullet points for better readability.
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 tool with 6 parameters and no output schema, the description partially addresses return values (inline preview, save to disk). However, it does not specify response structure or additional context like default save locations, leaving gaps.
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 provides detailed parameter meanings. The description adds no further parameter details beyond the schema, hence 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 tool edits images using Gemini models, with natural language instructions. It distinguishes itself from siblings like generate_image (creates) and analyze_image (analyzes).
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 editing images with natural language, but does not provide explicit when-to-use or when-not-to-use guidance. It lacks differentiation from similar tools like generate_image for image creation tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extract_structured_dataExtract Structured DataA
Extract structured JSON from text or almost any local file (text/code, PDF, image, audio, video) using Gemini JSON mode. Describe the fields you want in instructions, optionally constrain the output with a json_schema (Gemini/OpenAPI subset). Returns parsed JSON.
| Name | Required | Description | Default |
|---|---|---|---|
| instructions | Yes | What to extract, e.g. "invoice number, date, total, and an array of line items". | |
| text | No | The source text to extract from. Provide this or file_path. | |
| file_path | No | Absolute path to a local file to extract from (text/code, PDF, image, audio, video). | |
| json_schema | No | Optional response schema (Gemini OpenAPI subset) to enforce the JSON shape. JSON string or object. | |
| model | No | Model to use (defaults to the configured chat/analysis model). | |
| max_tokens | No | Maximum tokens in response (default 16384). |
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must fully disclose behavior. It mentions 'Gemini JSON mode' and that it 'returns parsed JSON', but does not discuss error handling, file size limits, or permissions needed. The phrase 'almost any local file' is vague. There is no annotation contradiction.
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 only two sentences, with the purpose and method in the first sentence and key parameters in the second. It is front-loaded and waste-free. However, it could be slightly more structured by separating the input types from the output.
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 tool's complexity (6 parameters, wide input types) and the presence of an output schema (though not provided), the description covers the core functionality well: what it does, how to specify fields, and how to constrain output. It is complete enough for most use cases, though it does not detail the exact return format (referencing 'parsed JSON' is sufficient given output schema).
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?
All 6 parameters have descriptions in the input schema (100% coverage), so the description adds minimal extra meaning. It clarifies the purpose of 'instructions' and mentions that 'json_schema' can constrain output, but these points are already implied by the schema descriptions. Baseline 3 is appropriate.
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 it extracts structured JSON from text or local files using Gemini JSON mode. It is specific about the verb 'extract' and the resource 'structured JSON', but does not explicitly differentiate from sibling tools like 'analyze_image' or 'ocr', which could also extract data from files. However, the scope is broad, and the description is unambiguous.
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 suggests using the tool when you need structured data from various file types, but it does not provide when-not-to-use or alternatives among siblings. The mention of 'optional' json_schema gives some guidance, but there is no explicit usage context or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini_agentLaunch Gemini AgentA
Delegate a task to an autonomous Gemini agent (via the agy CLI). Unlike gemini_chat (a single text response), the agent can read and edit files and run shell commands inside a working directory to actually carry out multi-step work, then returns its final report. Use it to offload self-contained coding/research/automation tasks. Returns a conversation_id you can pass back to continue iterating with the same agent. Pick a "Flash" model for speed, a "Pro" model for harder reasoning (see gemini_agent_models).
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | The instructions for the agent. Be explicit and self-contained: state the goal, relevant files/paths, constraints, and what a finished result looks like — the agent runs without further input. | |
| model | No | Agent model label exactly as listed by gemini_agent_models, e.g. "Gemini 3.1 Pro (High)" or "Gemini 3.5 Flash (Low)". Defaults to agy's configured model. | |
| directory | No | Absolute path of the primary working directory the agent runs in. Defaults to the MCP server working directory. | |
| add_directories | No | Additional absolute paths to grant the agent access to. | |
| conversation_id | No | Resume a previous agent run by its conversation_id to keep its context and continue iterating. | |
| continue_recent | No | Continue the most recent agy conversation. Ignored when conversation_id is provided. | |
| auto_approve | No | Auto-approve the agent's tool/permission requests so it can work unattended. Defaults to true (set GEMINI_AGY_AUTO_APPROVE=false to change the default). Without it the agent stalls on prompts. | |
| sandbox | No | Run the agent in agy's restricted sandbox. | |
| timeout_seconds | No | Hard time budget for the run. Agent runs can be slow, especially with Pro/High models. Defaults to the configured agy timeout. |
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| conversation_id | No | |
| timed_out | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses autonomous file editing, shell command execution, directory working, return of a conversation_id for continuation, auto_approve default, sandbox option, and timeout. It does not explicitly discuss destructive actions or permission requirements, but is largely transparent.
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 paragraph of six sentences, front-loaded with the primary action, followed by differentiation, usage context, return value, and model advice. Every sentence serves a purpose with no 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?
For a complex tool with 9 parameters and an output schema, the description covers the core behavior, usage context, sibling differentiation, return value, and model selection advice. It is well-rounded and provides sufficient context for an agent to select and invoke the tool correctly.
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 coverage is 100%, so baseline is 3. The description does not add significant per-parameter meaning beyond the schema; it repeats the task parameter's instruction to be explicit and mentions model selection advice, but does not elaborate on other parameters.
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 delegates a task to an autonomous Gemini agent that can read/edit files and run shell commands for multi-step work, returning a final report. It explicitly distinguishes from `gemini_chat`, a sibling tool that returns a single text response.
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 specifies that the tool is for 'self-contained coding/research/automation tasks' and contrasts with `gemini_chat`. It advises model selection (Flash for speed, Pro for reasoning) and refers to the sibling `gemini_agent_models` for exact labels, providing clear when-to-use and alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini_agent_modelsList Gemini Agent ModelsA
List the model labels available to the Gemini agent (gemini_agent). These come from agy models and differ from the API models in gemini_list_models — use the exact label as the agent's "model".
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| models | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that labels come from `agy models` and are agent-specific, which is useful. However, it does not mention any potential side effects, rate limits, or list ordering. For a simple listing tool, this is adequate.
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?
Two sentences, no wasted words. The first sentence states the purpose, the second adds the critical distinction and usage hint. Efficiently front-loaded.
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 0 parameters and an output schema, the description covers the tool's purpose, source, and differentiation from a sibling. It could briefly note that no arguments are needed, but that is inferable from the schema. Overall complete for a listing 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?
With 0 parameters, baseline is 4. The description adds meaning by specifying the output is model labels for the agent and that they should be used exactly as the 'model' parameter in the agent. This is beyond what the empty schema provides.
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 lists model labels for the Gemini agent, and distinguishes it from the sibling gemini_list_models by noting the source and purpose. The verb 'List' and resource 'model labels' are specific.
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 explicitly contrasts with gemini_list_models ('differ from the API models'), providing a clear when-to-use and when-not-to-use. It also instructs to use the exact label as the agent's model.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini_chatGemini ChatC
Chat with Google Gemini models
| Name | Required | Description | Default |
|---|---|---|---|
| message | Yes | The message to send | |
| model | No | Model to use (defaults to latest available) | |
| temperature | No | Controls randomness (0.0 to 1.0) | |
| max_tokens | No | Maximum tokens in response | |
| system_prompt | No | Optional system instruction | |
| grounding | No | Enable Google Search grounding for real-time information | |
| thinking_level | No | Thinking depth for Gemini 3 models only. "low" minimises latency for simple tasks. "high" (default for Gemini 3) maximises reasoning depth. "medium"/"minimal" available on Gemini 3 Flash only. Ignored for non-Gemini-3 models. |
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behaviors, but it only states the action. It does not mention that the tool mutates state (e.g., conversation history), requires authentication, has rate limits, or that some parameters like thinking_level are model-specific. The input schema covers defaults but not behavioral effects.
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 sentence, which is concise and front-loaded. It opens with the key purpose. However, given the tool's complexity (7 parameters, output schema, many siblings), it may be too brief and omits useful context.
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?
Despite the presence of an output schema, the description lacks context about how this tool fits into the broader toolset. It does not clarify when to prefer this over gemini_agent or gemini_prompt_assistant, and it omits details about conversation state, model selection behavior, or response structure.
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 coverage is 100%, so the schema documents all parameters with type, descriptions, and defaults. The description adds no extra meaning beyond what the schema provides, hence a baseline score of 3 is appropriate.
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 'Chat with Google Gemini models' clearly states the verb (chat) and resource (Gemini models). It distinguishes itself from sibling tools like gemini_deep_research or gemini_agent by focusing on conversational interaction, but does not explicitly differentiate from gemini_agent or gemini_prompt_assistant, which may overlap.
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 guidance on when to use this tool versus alternatives like gemini_agent or gemini_deep_research. There is no mention of use cases, preconditions, or exclusions, leaving the agent without context for choosing among similar tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini_deep_researchGemini Deep ResearchA
Conduct real Deep Research on complex topics: Google's autonomous Deep Research agent does multi-step live web search and returns a synthesised, cited report (takes several minutes). Runs the actual Deep Research agents via the Gemini Interactions API. [MCP_RECOMMENDED_TIMEOUT_MS: 900000]
| Name | Required | Description | Default |
|---|---|---|---|
| research_question | Yes | The complex research question or topic to investigate deeply | |
| model | No | Deep Research agent to use: "deep-research-pro-preview-12-2025" (default), "deep-research-preview-04-2026", or "deep-research-max-preview-04-2026" (most thorough/slowest). | |
| focus_areas | No | Optional: specific areas to focus the research on |
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description discloses key behaviors: autonomous, multi-step live web search, synthesized cited report, takes several minutes, and includes a recommended timeout. This gives sufficient transparency for an AI agent.
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 concise with two sentences, front-loading the purpose, and includes a valuable timeout hint. No unnecessary words.
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 an output schema, the description provides good context: behavior and API usage. It could mention the exact output format but is largely complete.
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 coverage is 100%, so each parameter is already described in the schema. The description does not add significant extra meaning beyond what's in the schema fields. Baseline 3 is appropriate.
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 it conducts 'real Deep Research' using Google's autonomous agent, distinguishing it from sibling tools like chat or image analysis. The verb 'conducts' and resource 'Deep Research' are specific and informative.
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 use for complex topics requiring multi-step web search and takes minutes, but does not explicitly state when not to use or name alternatives. It provides clear context but lacks exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini_helpGemini MCP HelpA
Get comprehensive help about Gemini MCP features, settings, and best practices
| Name | Required | Description | Default |
|---|---|---|---|
| topic | No | Help topic to display | overview |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the burden. It correctly indicates the tool returns help information and does not have side effects. While it could mention output format (e.g., textual), it is adequate for a simple read-only tool. No contradictions found.
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 concise sentence that front-loads the action and resource. It could be slightly more informative about the output, but it is not verbose and effectively communicates the core purpose.
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 tool has one optional parameter, no output schema, and no annotations, the description covers the essential purpose and usage. An agent can infer how to use it from the parameter enum. It is complete enough for a help 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?
The input schema has full coverage (100%) with a description for the 'topic' parameter. The tool description does not add extra meaning beyond the schema. At baseline, a score of 3 is appropriate since the schema already serves the purpose.
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 provides help about Gemini MCP features, settings, and best practices. The verb 'get comprehensive help' and specific resource 'Gemini MCP' make the purpose unambiguous and distinct from sibling tools that perform tasks like image analysis or chat.
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?
Usage is implied (ask for help on a topic), but no explicit guidance on when to use this tool versus alternatives. Given many sibling tools, the description would benefit from stating that it is for learning or reference rather than performing actions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini_list_modelsList Gemini ModelsA
List available Gemini models and their descriptions
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states the basic function without disclosing potential behaviors like authentication needs, caching, or pagination, though the tool is simple with no parameters.
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, concise sentence that is front-loaded and easy to parse, with no wasted words.
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 tool's simplicity (zero parameters, output schema present), the description is nearly complete, though it could provide a hint about the output structure or intended use case.
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 coverage is 100% (no parameters), so baseline applies; the description adds no parameter information beyond what the schema already conveys.
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 ('List') and the resource ('available Gemini models and their descriptions'), distinguishing it from sibling tools that use models rather than list them.
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 versus alternatives, but the tool's purpose is self-explanatory as a discovery tool; usage is implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
gemini_prompt_assistantImage & Chart Prompt AssistantA
Get expert prompt templates and guidance for Gemini image generation. Covers photography (portraits, products, cinematic), chart/diagram design (9 professional design systems including FT, Bloomberg, Tufte, Du Bois), lighting, colour grading, lens simulation, and style aesthetics. For charts: use chart_design with a color_scheme to get a full professional design system prompt.
| Name | Required | Description | Default |
|---|---|---|---|
| request_type | Yes | Type of assistance needed | |
| use_case | No | Specific use case for template (photography request types) | |
| current_prompt | No | Current prompt to optimize or troubleshoot | |
| desired_outcome | No | Description of what you want to achieve | |
| color_scheme | No | Chart colour scheme / design system (for chart_design, optimize_chart, get_palette) | |
| chart_type | No | Chart type for chart-specific guidelines | |
| emphasis | No | Design emphasis / audience priority |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It describes the types of assistance offered but does not disclose limitations, side effects, or input validation behavior. The description adds some context but lacks depth on operational details.
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 extremely concise with only two sentences plus a chart-specific hint. Every sentence adds unique value, and the structure is front-loaded with the core purpose, followed by scope and a specific usage tip.
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 7 parameters and no output schema, the description covers major use cases and provides a specific hint for chart design. It lacks detail on some request types like optimize_prompt or troubleshoot, but the schema fills those gaps. Overall, it is sufficiently complete for guiding 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 coverage is 100%, so the baseline is 3. The description adds extra semantics by explicitly linking chart_design request type with color_scheme and listing use cases that match the enum, providing guidance beyond 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: providing expert prompt templates and guidance for Gemini image generation, covering photography and chart design. It distinguishes itself from siblings like generate_image by focusing on prompting assistance rather than direct image generation.
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 includes explicit guidance for using chart_design with a color_scheme for professional design system prompts, which helps in choosing the right request type. However, it does not provide when-not-to-use scenarios or compare with alternative tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_imageGenerate Image with GeminiB
Generate an image using Google Gemini image models (Nano Banana Pro). Returns image with inline preview in Claude Desktop and saves full-resolution to disk. Default model: gemini-3-pro-image-preview.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | Description of the image to generate | |
| model | No | Gemini image model to use (default: gemini-3-pro-image-preview). Options: gemini-3-pro-image-preview, gemini-2.5-flash-image, nano-banana-pro-preview | |
| aspectRatio | No | Aspect ratio of the generated image | 1:1 |
| imageSize | No | Resolution of the generated image (only for image-specific models) | |
| images | No | Optional reference images to guide generation | |
| use_search | No | Enable Google Search grounding for data-driven image generation. Use for: weather forecasts, current events, stock prices, sports scores, statistics. The model will search the web for real-time data to inform image generation. | |
| global_media_resolution | No | Global image quality setting for cost optimization (default: HIGH). LOW (280 tokens, 75% savings) - Simple tasks, bulk operations. MEDIUM (560 tokens, 50% savings) - PDFs/documents (OCR saturates at medium). HIGH (1120 tokens) - Best quality, detailed analysis. Can be overridden per-image using mediaResolution in images array. | |
| outputPath | No | Optional file path to save the generated image (e.g., ./output/image.png) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses output delivery (inline preview, save to disk) and default model, but with no annotations, it does not cover potential behavioral traits like rate limits, authentication needs, or the ability to handle reference images. It provides some useful context but is not comprehensive.
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?
Two sentences, front-loaded with the key action. Every sentence adds value: first states the core function, second adds output details. No wasted words.
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 tool's complexity (8 parameters, 3 enums, no output schema), the description is too brief. It omits critical capabilities like reference images, search grounding, aspect ratio control, and the thoughtSignature editing feature. The user must rely entirely on the schema for understanding, which is inadequate for a high-level overview.
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 coverage is 100%, so baseline is 3. The description does not add any extra meaning beyond what the schema already provides for parameters. It does not mention any parameter details, so it neither harms nor significantly enhances 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 tool generates an image using specific models and mentions output behavior (inline preview, saving to disk). The verb 'generate' and resource 'image' are specific, and the tool name itself distinguishes from siblings like 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?
No guidance on when to use this tool over alternatives such as edit_image or generate_svg. The description does not provide any context about appropriate scenarios or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_landing_pageGenerate Landing PageA
Generate a complete, self-contained HTML landing page using Gemini. Returns inline preview with responsive viewport controls. No external dependencies; inline CSS and vanilla JS only.
| Name | Required | Description | Default |
|---|---|---|---|
| brief | Yes | Description of the product/service and page goals | |
| companyName | No | Company or product name | |
| primaryColour | No | Primary brand colour (e.g. #3B82F6 or "deep blue") | |
| style | No | Visual design style | startup |
| sections | No | Sections to include (e.g. ["hero", "features", "pricing", "cta"]) | |
| model | No | Gemini model to use (defaults to configured default) | |
| outputPath | No | Optional file path to save the HTML (e.g. C:/dev/output/landing.html) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description provides key behavioral traits: returns inline preview, responsive viewport controls, no external dependencies, inline CSS and vanilla JS. This goes beyond merely saying 'generate' but lacks details about output handling (e.g., success/error) beyond mentioning optional outputPath.
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?
Two sentences, front-loaded with the core action, and every word adds value. No redundancy or superfluous information.
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 7 parameters and no output schema, the description adequately communicates the output behavior. It could specify the exact return format (e.g., HTML string vs file) but overall covers key expectations.
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 coverage is 100%, so the baseline is 3. The description does not add significant parameter-level insights beyond what the schema already provides. The mention of 'inline preview' relates to output, not parameters.
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 uses a specific verb 'Generate' and identifies the resource as 'a complete, self-contained HTML landing page using Gemini'. It clearly distinguishes from sibling tools like generate_image or generate_svg by specifying the output type and constraints.
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 use for generating landing pages, which is distinct from sibling tools. However, it does not explicitly state when not to use this tool or suggest alternatives, though the context of sibling tools makes the purpose clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_summaryGenerate SummaryA
Summarise text or a local file with Gemini. Provide text, or file_path to almost any file: text/code, PDF, images, audio or video (Office docs must be exported to PDF first). Choose the length and optionally a focus or output language.
| Name | Required | Description | Default |
|---|---|---|---|
| text | No | The text to summarise. Provide this or file_path. | |
| file_path | No | Absolute path to a local file to summarise. Accepts text/code, PDF, images, audio and video — loaded server-side (bypasses MCP transport limits). | |
| length | No | Summary length/format: brief, standard, detailed, or bullets. | standard |
| focus | No | Optional angle to emphasise (e.g. "risks and open questions"). | |
| language | No | Optional output language (e.g. "German"). Defaults to the source language. | |
| model | No | Model to use (defaults to the configured chat/analysis model). |
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description effectively discloses key behavioral traits: supported file types, that file_path is loaded server-side (bypassing MCP limits). It does not mention idempotency, rate limits, or auth, but for a summarization tool these are less critical. The server-side loading detail adds value.
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 sentences, front-loaded with the core purpose, and every word adds value. No extraneous information, making it easy to parse 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?
Given the tool complexity (6 parameters, many file types), the description covers most key aspects: input options, length, focus, language. However, it does not clarify mutual exclusivity of text and file_path, nor file size limits. With an output schema present, return values need not be explained.
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 coverage is 100%, but the description adds meaning beyond the schema by specifying the types of files accepted for file_path and noting server-side loading. This enhances the agent's understanding beyond basic parameter descriptions.
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 explicitly states the tool summarizes text or local files with Gemini, listing supported file types. This clearly differentiates it from sibling tools like analyze_image or gemini_chat, which serve different 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 instructions on how to use the tool (provide text or file_path, choose length, optional focus/language) but does not explicitly state when to use this tool vs alternatives. It implies summarization tasks but lacks direct comparison with siblings like gemini_agent or chat.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_svgGenerate SVG GraphicA
Generate scalable vector graphics (SVG) using Gemini. Creates clean, production-ready SVG code for diagrams, illustrations, icons, and data visualizations. Returns inline preview with SVG viewer.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | Description of the SVG graphic to generate | |
| width | No | SVG width in pixels (default: 800) | |
| height | No | SVG height in pixels (default: 600) | |
| style | No | Visual style: technical (diagrams), artistic (illustrations), minimal (simple), data-viz (charts) | technical |
| model | No | Gemini model to use (defaults to configured default) | |
| outputPath | No | Optional file path to save the SVG (e.g. C:/output/diagram.svg) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description mentions using Gemini and returning an inline preview, which provides moderate transparency. However, it omits details like network usage, authorization, or potential side effects.
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 sentences, front-loaded with purpose, and contains no redundant information.
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 tool with 6 parameters and no output schema, the description mentions the return type (inline preview with SVG viewer) and covers the basic purpose, but lacks details on output format and error handling.
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 description adds little beyond what the schema already provides. It does not elaborate on parameter formats or constraints.
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 specifies the tool generates SVG graphics using Gemini for multiple use cases like diagrams and icons, distinguishing it from siblings like generate_image (raster) and generate_landing_page.
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 states what the tool does but does not provide explicit guidance on when to use it versus alternatives like generate_image or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_videoGenerate VideoA
Generate videos using Google Veo 3.1 AI model. Creates realistic 4-8 second videos from text prompts with optional first-frame image and reference images for character/style consistency. Supports native audio generation. Processing time: 2-5 minutes for 1080p videos. Returns video file path with optional thumbnail and HTML preview player. ⚠️ IMPORTANT: Video generation is ASYNC and takes 2-5 minutes. The tool will poll for completion automatically.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | Detailed description of the video to generate. Be specific about actions, camera movements, lighting, and style. Example: "A close-up shot of a futuristic coffee machine brewing a glowing blue espresso, with steam rising dramatically. Cinematic lighting, 4K quality." | |
| model | No | Video generation model (default: veo-3.1-generate-preview) | veo-3.1-generate-preview |
| aspectRatio | No | Video aspect ratio: 16:9 (landscape) or 9:16 (portrait/vertical) | 16:9 |
| resolution | No | Video resolution. Higher resolutions take longer to generate and result in larger files. | 1080p |
| durationSeconds | No | Video duration in seconds (4, 6, or 8 seconds) | |
| generateAudio | No | Generate native synchronized audio effects and dialogue based on the prompt | |
| sampleCount | No | Number of video samples to generate (1-4). Each sample is a separate generation. | |
| seed | No | Optional seed for deterministic output. Use the same seed with the same prompt for consistent results. | |
| outputPath | No | Optional custom output path for the video file (e.g., C:/videos/output.mp4). If not provided, saves to default output directory with timestamped filename. | |
| generateThumbnail | No | Extract thumbnail from video (requires ffmpeg installed). Thumbnail is saved alongside video. | |
| generateHTMLPlayer | No | Generate interactive HTML video player with preview and download options | |
| firstFrameImage | No | Starting frame image for image-to-video generation. Provide via filePath (local file) or data+mimeType (base64). The video will animate from this image. Supports JPEG, PNG, WebP. | |
| referenceImages | No | Up to 3 reference images for character/style consistency. Each needs a referenceType ("asset" or "style") and an image. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully carries the behavioral transparency burden. It discloses the async processing, auto-polling, processing time estimates, and output features (file path, thumbnail, HTML player). No contradictions exist since annotations are absent.
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 front-loaded with the core purpose and structured into two clear paragraphs. It is concise but includes necessary warnings and details. Minor redundancy (e.g., mentioning processing time twice) could be trimmed, but overall efficient.
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 tool's complexity (13 parameters, nested objects, no output schema), the description adequately covers inputs, behavior, and basic output format. However, it lacks explicit error handling details, failure modes, or return type schema, which would be beneficial for a complex async 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 coverage is 100%, so parameters are well-documented. The description adds value beyond the schema by summarizing key behaviors (e.g., resolution impact on time, audio generation, thumbnail extraction) and providing a concrete prompt example, which aids agent decision-making.
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 generates videos using Google Veo 3.1 AI model, specifying duration (4-8 seconds), input types (text prompts with optional images), and outputs (file path, thumbnail, HTML player). It distinguishes itself from siblings like generate_image (image generation) and transcribe (audio processing) by focusing on video creation.
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 implicitly guides usage by noting the async nature and 2-5 minute processing time, but it does not explicitly state when to use this tool versus alternatives like generate_image for static images or when not to use it (e.g., for editing existing videos). The warning and auto-polling note help manage expectations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
load_image_from_pathLoad Image from File PathA
Read a local image file and return it as base64-encoded data ready to pass to generate_image, edit_image, describe_image, or analyze_image tools. Supports JPEG, PNG, GIF, WebP, BMP.
| Name | Required | Description | Default |
|---|---|---|---|
| filePath | Yes | Absolute or relative path to the image file |
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description independently must cover behaviors. It mentions the return format and supported types but omits potential errors, file size limits, or path accessibility constraints.
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 concise (one sentence) and front-loaded with the main action, efficiently communicating key information without extraneous words.
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 tool's simplicity (one parameter, no nested objects) and the existence of an output schema, the description adequately covers what the tool does and how its output is used.
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 single parameter 'filePath' is fully described in the schema (100% coverage). The tool description adds no further detail about path semantics, such as relative base directory.
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 reads a local image file and returns base64-encoded data, listing specific compatible tools and supported formats. It distinguishes itself from sibling tools that consume such data.
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 implicitly indicates the tool is for loading local images before passing to other tools, but does not explicitly state when not to use it or mention alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ocrOCR (Extract Text)A
Extract text verbatim from images or PDFs using Gemini multimodal OCR. Returns the raw text (as Markdown for structure) — no summarising or analysis. For documents/PDFs, MEDIUM resolution gives the same OCR quality at half the token cost.
| Name | Required | Description | Default |
|---|---|---|---|
| images | Yes | One or more images/PDFs to OCR. Use filePath for large files (incl. .pdf). | |
| language | No | Optional hint for the document language (e.g. "German"). Improves accuracy. | |
| prompt | No | Optional override/extra instruction for the OCR (appended to the default). | |
| model | No | Model to use (defaults to the configured image-analysis model). | |
| max_tokens | No | Maximum tokens in response (default 16384). | |
| global_media_resolution | No | Image quality. MEDIUM (default) = same OCR quality as HIGH at 50% token cost. | MEDIA_RESOLUTION_MEDIUM |
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It transparently states the tool uses Gemini multimodal OCR, returns raw text as Markdown, and does no summarising or analysis. It also mentions token cost implications for resolution.
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 consists of two concise sentences. The first sentence clearly states the purpose and verb, and the second provides a valuable tip. No unnecessary words.
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 tool complexity (6 params, 1 required, output schema exists), the description covers the core purpose and a key performance tip. It doesn't explain all parameters, but the schema covers them adequately. Could mention handling multiple images, but not essential.
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 baseline is 3. The description adds marginal value beyond the schema, such as the tip about MEDIUM resolution and using filePath for large files. It does not compensate for any missing schema information.
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 extracts text verbatim from images or PDFs using Gemini multimodal OCR. It specifies the output as raw text in Markdown and explicitly notes no summarising or analysis, distinguishing it from sibling tools like analyze_image or extract_structured_data.
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 raw text extraction and provides a useful tip about MEDIUM resolution for documents/PDFs. However, it does not explicitly state when not to use this tool or mention alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transcribeTranscribe Audio/VideoB
Transcribe speech from an audio or video file to text using Gemini. Optional timestamps, speaker labels (diarization) and language hint. Provide a local file_path (loaded server-side) or inline base64 data.
| Name | Required | Description | Default |
|---|---|---|---|
| file_path | No | Absolute path to a local audio/video file (mp3, wav, m4a, mp4, mov, webm, ...). | |
| data | No | Base64-encoded audio/video data (alternative to file_path). | |
| mime_type | No | MIME type for inline data (e.g. "audio/mpeg", "video/mp4"). Required with data. | |
| language | No | Optional spoken-language hint (e.g. "German"). Improves accuracy. | |
| timestamps | No | Prefix lines with [mm:ss] timestamps. | |
| diarization | No | Label distinct speakers (Speaker 1, Speaker 2, ...). | |
| prompt | No | Optional extra instruction appended to the transcription prompt. | |
| model | No | Model to use (defaults to the configured image/analysis model). | |
| max_tokens | No | Maximum tokens in response (default 32768 for long transcripts). |
Output Schema
| Name | Required | Description |
|---|---|---|
| content | Yes | |
| success | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It does not disclose what happens to uploaded files, privacy implications, rate limits, or error behaviors (e.g., unsupported formats). The mention of 'using Gemini' implies cloud processing but lacks specifics.
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?
Two sentences, front-loaded with the core purpose. Every phrase adds value: 'using Gemini' signals the engine, 'Optional timestamps...' summarizes key params. No filler or 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 the tool's complexity (9 params, no required, output schema exists), the description covers key options and input methods. It could mention file size limits or performance notes, but is otherwise sufficient for standard transcription tasks.
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 baseline is 3. The description adds a high-level summary of optional features (timestamps, diarization, language hint) and input methods, but does not provide semantics beyond what the schema already offers.
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 'Transcribe speech from an audio or video file to text using Gemini.' It specifies the action (transcribe), resource (audio/video file), and model (Gemini), making the purpose immediately clear. No sibling tool does transcription, so differentiation is implicit.
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 guidance on when to use this tool versus alternatives is provided. The description does not mention prerequisites, file size limits, or alternative tools (e.g., gemini_agent for custom prompts). The agent would lack context for tool selection.
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.
19 tool updates
v2.3.0- First observed
analyze_image - First observed
describe_image - First observed
edit_image - First observed
extract_structured_data - First observed
gemini_agent - First observed
gemini_agent_models - First observed
gemini_chat - First observed
gemini_deep_research - First observed
gemini_help - First observed
gemini_list_models - First observed
gemini_prompt_assistant - First observed
generate_image - First observed
generate_landing_page - First observed
generate_summary - First observed
generate_svg - First observed
generate_video - First observed
load_image_from_path - First observed
ocr - First observed
transcribe
TDQS
Scored across 19 tools
Tools have largely distinct purposes, but analyze_image and describe_image are somewhat overlapping (both analyze/describe images, return text). Similarly, gemini_chat, gemini_agent, and gemini_deep_research all involve interacting with Gemini but with different scopes, which could cause confusion. Most other tools are clearly differentiated.
Naming follows two conventions: gemini_ prefix for core interactions (gemini_chat, gemini_agent, etc.) and verb_noun for task-specific tools (analyze_image, generate_image, etc.). However, there are single-word names (ocr, transcribe) and inconsistent verb forms (extract_structured_data, load_image_from_path). The pattern is not uniform.
19 tools cover a broad range of Gemini capabilities (image, video, audio, text, agent, research, etc.). While the count is slightly high, each tool serves a distinct function and the scope justifies the number. Some consolidation (e.g., merging analyze_image and describe_image) could reduce count without loss.
The toolset comprehensively covers Gemini's multimodal features: image analysis and generation, video, audio transcription, OCR, structured extraction, code generation, and autonomous agents. Minor gaps include no dedicated audio file loading tool (audio is handled via transcribe with file_path) and no deletion/update tools, but these are not essential for the server's purpose.
Maintenance
Related MCP Connectors
Turn any LLM multimodal; generate images, voices, videos, 3D models, music, and more.
Multiple Google accounts (Gmail, Calendar, Drive, Contacts, Tasks) in one Claude connector.
Use AI models for chat, image, and video generation from Claude Code and other MCP hosts.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA server implementing the Model Context Protocol that enables AI assistants like Claude to interact with Google's Gemini API for text generation, text analysis, and chat conversations.-
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables Claude to interact with Google's Gemini AI models, allowing users to ask Gemini questions directly from Claude.2-
- AlicenseAqualityCmaintenanceEnables Claude and other AI assistants to generate high-quality images up to 4K resolution using Google's Gemini image models, with support for flexible aspect ratios, natural language editing, and Google Search grounding for accurate results.412MIT
- AlicenseNot gradedqualityCmaintenanceEmpowers AI assistants with real-world capabilities including note management, Gmail integration, Google Calendar and Tasks management, and Git repository operations through the Model Context Protocol.13MIT



