gemini-mcp-server
Allows accessing and summarizing emails in Gmail through Gemini CLI extensions.
Provides web search capabilities using Google Search grounding and enables access to Google Workspace extensions (Gmail, Drive, Sheets, Docs, Calendar) through Gemini CLI.
Allows searching and reading files in Google Drive, such as documents and sheets, through Gemini CLI extensions.
Click on "Install 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-serversearch the web for React 19 features"
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.
Gemini MCP Server
Give Claude superpowers with Gemini's massive context window. Analyze entire codebases, search the web, process images, and brainstorm ideas—all through MCP.
graph LR
A[Claude Code] --> B[Gemini MCP Server]
B --> C[gemini]
B --> S[web-search]
B --> M[analyze-media]
B --> SH[shell]
B --> D[brainstorm]
C --> H[Gemini CLI]
S --> H
M --> H
SH --> H
D --> H
H --> E[Extensions]
E --> W[Google Workspace]
E --> X[Custom Extensions]
style A fill:#FF6B35
style B fill:#4A90E2
style C fill:#00D4AA
style S fill:#00D4AA
style M fill:#00D4AA
style SH fill:#00D4AA
style D fill:#00D4AA
style H fill:#4285F4
style E fill:#FBBC05
style W fill:#34A853
style X fill:#EA4335Quick Start
Prerequisites
Install Gemini CLI:
npm install -g @google/gemini-cliAuthenticate: Run
geminiand login with Google (free: 60 req/min, 1000 req/day)Set default model (recommended):
export GEMINI_MODEL="gemini-3-pro-preview"
Install
One-Click
Manual
# Claude Code
claude mcp add gemini-cli -- npx -y @tuannvm/gemini-mcp-serverAdd to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%/Claude/claude_desktop_config.json (Windows):
{
"mcpServers": {
"gemini-cli": {
"command": "npx",
"args": ["-y", "@tuannvm/gemini-mcp-server"]
}
}
}Related MCP server: Gemini Pro MCP Server
What You Can Do
Tool | What it does |
gemini | Analyze files and codebases with Gemini's 1M+ token context |
web-search | Search the web with Google Search grounding |
analyze-media | Process images, PDFs, and screenshots |
shell | Generate and execute shell commands |
brainstorm | Creative ideation with structured methodologies |
Gemini CLI Extensions
Enable access to Gmail, Drive, Sheets, Docs, Calendar, and more through Gemini CLI extensions.
# Install the Google Workspace extension
gemini extensions install https://github.com/gemini-cli-extensions/workspaceThen use with yolo: true to auto-approve extension tool calls:
# Search your Google Drive
Use gemini with yolo=true to search my Google Drive for Q4 reports
# Read a Google Sheet
Use gemini with yolo=true to read the first sheet from "Budget 2025"
# Access Gmail
Use gemini with yolo=true to summarize my last 10 unread emailsNote: Any Gemini CLI extension can be used. Pass the full GitHub URL or local path to
gemini extensions install.
Examples
# Analyze an entire codebase
Use gemini to analyze @. and provide an architecture overview
# Compare files
Use gemini to compare @src/old.ts and @src/new.ts
# Search the web
Use web-search to find the latest React 19 features
# Analyze a screenshot
Use analyze-media with filePath "@error.png" and prompt "what's this error?"
# Brainstorm ideas
Use brainstorm with methodology "design-thinking" to improve user onboardingDocumentation
API Reference — Full tool parameters and options
Gemini CLI Integration — Setup, models, and troubleshooting
Development
npm install # Install dependencies
npm run dev # Development mode
npm run build # Build
npm test # Run testsAcknowledgments
Inspired by gemini-mcp-tool.
Related Projects
codex-mcp-server — MCP server for OpenAI Codex CLI with AI-powered code analysis and review
License
MIT — This is an unofficial tool, not affiliated with Google.
Available Tools
9 toolsanalyze-mediaARead-only
Analyze images, PDFs, or other media files using Gemini multimodal capabilities. Supports screenshots, diagrams, documents, and more.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Gemini model to use. DEFAULT: 'gemini-3-pro-preview' (best multimodal). Use 'gemini-3-flash-preview' for faster but less detailed analysis. | |
| prompt | Yes | What to analyze or extract from the media. REQUIRED. Be specific (e.g., "extract all text", "describe UI components", "summarize document"). | |
| detailed | No | Enable comprehensive analysis mode. DEFAULT: false. Set to true for structured output with overview, key elements, and recommendations. | |
| filePath | Yes | Path to the media file to analyze. REQUIRED. Use @ prefix (e.g., @screenshot.png, @diagram.pdf). Supports: PNG, JPG, JPEG, GIF, WebP, PDF. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds context about supported file types and multimodal capability but does not disclose additional behavioral traits like data handling or prerequisites.
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 contains no extraneous information. Every sentence adds value.
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?
With no output schema, the description could briefly mention the return format (e.g., text analysis). However, it covers supported file types, capability, and required parameters well, making it mostly complete 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 coverage is 100% with descriptions for all 4 parameters. The description text does not add significant meaning beyond the schema, so 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 clearly states the action (analyze), resource (media files), and capability (Gemini multimodal). It differentiates from sibling tools like 'gemini' implicitly by focusing on media analysis, but lacks explicit contrast.
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 does not provide explicit when-to-use or when-not-to-use guidance relative to sibling tools. It implies usage through examples (screenshots, diagrams) but lacks explicit alternatives or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
brainstormARead-only
Generate creative ideas using structured frameworks (SCAMPER, Design Thinking, etc.) with domain context, feasibility analysis, and iterative refinement.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Gemini model to use. OPTIONS: 'gemini-3-pro-preview' (default, best for creative thinking), 'gemini-3-flash-preview' (faster). Use Pro for complex brainstorming requiring deep domain knowledge. Omit for default. | |
| domain | No | Domain expertise to apply. EXAMPLES: 'software', 'business', 'marketing', 'product', 'research', 'healthcare', 'finance'. Helps Gemini apply domain-specific knowledge. Include for specialized output. | |
| prompt | Yes | The brainstorming challenge or question. REQUIRED. Be specific about what you need ideas for (e.g., "ways to reduce API latency", "features for a fitness app", "marketing strategies for B2B SaaS"). More context yields better ideas. | |
| ideaCount | No | Number of ideas to generate. DEFAULT: 12. Use higher (15-20) for exploration, lower (5-8) for focused detailed ideas. | |
| constraints | No | Limitations and requirements to respect. EXAMPLES: 'budget under $10k', 'must work offline', 'launch in 2 weeks'. Helps filter ideas to only feasible options. | |
| methodology | No | Brainstorming framework. OPTIONS: 'auto' (default, AI selects best approach), 'divergent' (maximize quantity of ideas), 'convergent' (refine and prioritize existing ideas), 'scamper' (systematic creative triggers), 'design-thinking' (human-centered solutions), 'lateral' (unexpected connections). Use 'auto' unless you have a specific preference. | auto |
| existingContext | No | Background information to build upon. EXAMPLES: 'we tried X but failed because Y', 'current solution uses React'. Provides context for more relevant ideas. | |
| includeAnalysis | No | Include feasibility/impact/innovation ratings for each idea. DEFAULT: true. Set to false for faster output without analysis. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate read-only and open-world behavior. The description adds value by specifying that it uses structured frameworks and includes feasibility analysis. No contradiction with annotations; the description enhances understanding beyond the structured fields.
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 conveys the core functionality without unnecessary words. It is appropriately front-loaded with the key action.
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 (8 parameters, no output schema), the description provides a high-level summary of capabilities including domain context, feasibility analysis, and iterative refinement. It covers the essential aspects, though return values are not detailed.
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%, with each parameter well-documented. The description does not add significant extra meaning beyond the schema. Baseline 3 is appropriate given the high 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's purpose: generating creative ideas using structured frameworks like SCAMPER and Design Thinking, with domain context and analysis. It distinguishes from sibling tools like web-search (factual retrieval) and analyze-media (media analysis) by focusing on ideation.
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 creative ideation but does not explicitly state when not to use it or mention alternatives. Given sibling tools for other tasks, more explicit guidance would improve clarity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetch-chunkARead-onlyIdempotent
Retrieves cached chunks from a changeMode response. Use this to get subsequent chunks after receiving a partial changeMode response.
| Name | Required | Description | Default |
|---|---|---|---|
| cacheKey | Yes | Cache key from a previous changeMode response. REQUIRED. Copy exactly from the response that contained "Chunk 1 of N". Cache expires after 10 minutes. | |
| chunkIndex | Yes | Chunk number to retrieve. REQUIRED. Use 1-based indexing (1, 2, 3...). If response said "Chunk 1 of 5", request chunkIndex=2 for next chunk. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, which the description aligns with. Beyond this, the parameter description for cacheKey adds behavioral detail: 'Cache expires after 10 minutes', which is not covered by annotations. No contradictions.
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 contains no extraneous words. Every sentence earns its place, making it highly efficient for an AI agent 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?
The description, combined with detailed schema and annotations, covers the tool's purpose, usage, and parameter constraints. However, since there is no output schema, the description could have briefly noted the structure of the returned chunk (e.g., 'returns the chunk data or an error'). This minor gap prevents a perfect score.
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%, with both cacheKey and chunkIndex fully described in the input schema. The tool description does not add further meaning beyond what the schema provides, so 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 explicitly states 'Retrieves cached chunks from a changeMode response', clearly identifying the verb (retrieves) and resource (cached chunks). The specificity of 'changeMode response' distinguishes it from sibling tools like web-search or analyze-media, 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 advises to 'Use this to get subsequent chunks after receiving a partial changeMode response', directly stating when to employ the tool. While it doesn't explicitly mention when not to use it or list alternatives, the context is clear and sufficient for an agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
geminiADestructive
Query Gemini AI. Supports model selection, sandbox mode for safe code execution, and structured change mode for applying edits.
| Name | Required | Description | Default |
|---|---|---|---|
| yolo | No | Enable YOLO mode (--yolo flag) to auto-approve ALL tool executions without confirmation prompts. REQUIRED when using Google Workspace extension (gemini-cli-extensions/workspace) to access Gmail, Google Drive, Sheets, Docs, Calendar, or Chat. Without this flag, Workspace extension tools will hang waiting for user approval. Set to true for any request involving Google Workspace data or actions. | |
| model | No | Gemini model to use. OPTIONS: 'gemini-3-pro-preview' (default, best quality), 'gemini-3-flash-preview' (faster, good for simple tasks). Use Flash for quick lookups or when Pro quota is exceeded. Omit to use default Pro model. | |
| prompt | Yes | The question or task for Gemini. REQUIRED. Use @ prefix to include files (e.g., '@src/app.ts explain the auth flow', '@package.json suggest improvements'). For code analysis, include relevant file paths. For general questions, just ask directly. | |
| sandbox | No | Enable sandboxed code execution (-s flag). Use when Gemini needs to run code, execute scripts, or test changes in isolation. Sandbox prevents modifications to your actual filesystem. Set to true for code execution tasks. | |
| changeMode | No | Enable structured edit mode for code modifications. Returns edits in OLD/NEW format that can be applied programmatically. Use when requesting code changes that need to be applied to files. The response will include exact line numbers and replacement blocks. | |
| chunkIndex | No | Chunk number to retrieve (1-based). Use ONLY when a previous changeMode response indicated multiple chunks. Combine with chunkCacheKey from the original response to get subsequent chunks. | |
| chunkCacheKey | No | Cache key from a previous chunked response. REQUIRED when fetching subsequent chunks. Copy the cacheKey from the original changeMode response that contained "Chunk 1 of N". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses destructive behavior via changeMode and sandbox, and adds context about yolo mode for auto-approval. Annotations already indicate destructiveHint=true and openWorldHint=true, and the description aligns without 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 extremely concise at three sentences, yet covers all key features. Parameter descriptions in the schema are equally efficient. No wasted words, and critical information is 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?
For a tool with no output schema, the description explains return formats for changeMode and chunking. It covers main usage scenarios but could mention that general queries return text. Overall, sufficient for most use cases.
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 coverage, the baseline is 3. The description adds significant value beyond schema: yolo flag prerequisites for Workspace, model selection advice, prompt @-syntax, sandbox/change mode explanations, and chunk handling. This greatly aids correct invocation.
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 'Query Gemini AI' as the primary purpose, with specific capabilities like model selection, sandbox mode, and structured change mode. This distinctly separates it from sibling tools like web-search or shell.
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 context on when to use sandbox mode for code execution and change mode for edits, and the yolo flag has detailed instructions for Workspace extension. However, it does not explicitly rule out usage compared to siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
helpARead-onlyIdempotent
Display Gemini CLI help and available options.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the description does not add behavioral context beyond what is structured. Acceptable for a simple 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?
Single sentence with no extraneous words. Information is front-loaded and concise.
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 (no parameters, no output schema, clear purpose), the description is complete enough for an agent to understand and use it 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?
No parameters exist, so description adds no parameter info. Schema coverage is 100% trivially, and per guidance, 0 parameters yields baseline score of 4.
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 'Display Gemini CLI help and available options,' specifying verb and resource. Distinguishes from siblings like web-search or shell which perform other actions.
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. However, as a help tool, usage is implied for obtaining general assistance. Score is adequately descriptive.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pingARead-onlyIdempotent
Test connectivity by echoing a message back.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | No | Message to echo |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint as true/true/false. Description adds the specific behavior of echoing a message, which is beyond annotations and provides useful context about the tool's effect.
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?
Single sentence with no wasted words. Every part is necessary and immediately conveys the core function.
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 simple ping tool with one optional parameter and no output schema, the description is sufficient. It covers the purpose and basic behavior without needing more detail.
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% with the 'prompt' parameter already having a description of 'Message to echo'. The tool description adds no further parameter semantics, so baseline score 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 verb (test) and resource (connectivity) with the action of echoing a message. Distinguishes from sibling tools like gemini or web-search. No tautology or vagueness.
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. While the tool is simple, the description does not mention use cases or when not to use it, 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.
shellADestructive
Generate and optionally execute shell commands using Gemini. By default runs in dry-run mode (explains commands). Set dryRun=false to execute in sandbox.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | Shell task description. REQUIRED. Describe what you want to accomplish (e.g., "find TypeScript files modified last week", "compress log files"). Gemini will generate appropriate commands. | |
| model | No | Gemini model to use. DEFAULT: 'gemini-3-flash-preview' (fast). Use 'gemini-3-pro-preview' for complex operations. | |
| dryRun | No | Command execution mode. DEFAULT: true (safe, explains without executing). When false: executes in sandbox. Set to false only for actual execution. | |
| workingDirectory | No | Directory to run commands in. OPTIONAL. Use @ prefix (e.g., @src/). If omitted, uses current working directory. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description explains dry-run safety and sandbox execution, adding context beyond annotations (destructiveHint: true, openWorldHint: true). No 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?
Two concise sentences that front-load the key purpose and execution modes. No fluff.
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?
No output schema, but description covers dry-run and execution behavior. Could mention potential destructive consequences explicitly, but sandbox implies safety.
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 3 applies. Description does not add new meaning beyond schema; the dry-run context is already in schema description. Parameter info is adequate.
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 it generates and optionally executes shell commands via Gemini, with a specific dry-run mode. It differentiates from sibling tools which are unrelated (e.g., web-search, brainstorm).
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?
Explicitly says dry-run default and when to set dryRun=false for execution. No explicit exclusions or alternatives, but sibling tools are distinct, so context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
timeout-testBRead-onlyIdempotent
Test timeout prevention by running for a specified duration
| Name | Required | Description | Default |
|---|---|---|---|
| duration | Yes | Duration in milliseconds (minimum 10ms) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds minimal behavioral context ('running for a specified duration') as already covered by the parameter schema. No indication of output or side effects beyond the annotation hints.
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?
Single sentence with no wasted words. It efficiently states the purpose and implies the parameter's role. Could be considered too minimal but appropriate for a simple tool.
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 simple test tool with one parameter and no output schema, the description is mostly adequate. However, it lacks explanation of what the tool returns after execution (e.g., success/failure), which would be helpful for an 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% with a clear description for the 'duration' parameter. The tool description only repeats that the tool runs for a duration, adding no new meaning beyond the schema. 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 'Test timeout prevention by running for a specified duration' clearly states the verb (test) and resource (timeout prevention), making the tool's purpose specific and distinguishable from siblings like 'ping' or 'shell'.
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 vs alternatives, no context for when-not or prerequisites. Siblings like 'ping' and 'shell' exist but no differentiation is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web-searchARead-only
Search the web using Gemini with Google Search grounding for real-time information.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Gemini model to use. DEFAULT: 'gemini-3-flash-preview' (optimized for speed). Use 'gemini-3-pro-preview' for complex research requiring deeper analysis. | |
| query | Yes | Search query for web search. REQUIRED. Use natural language or keywords (e.g., "latest React 19 features", "TypeScript 5.4 release date"). Gemini will search and synthesize results. | |
| summarize | No | Return summarized results vs raw output. DEFAULT: true. Set to false only if you need raw search results. Summarized mode provides cleaner, actionable information. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, etc. The description adds meaningful context about the grounding mechanism (Google Search) and real-time nature, which goes beyond the annotations. No contradictions.
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 effectively communicates the core purpose without wasted words. It is appropriately 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?
With no output schema, the description does not explain the return format or behavior (e.g., summarized vs raw results). It is minimal but acceptable for a simple search tool given the schema covers inputs.
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 already documents all parameters well. The description adds no additional parameter-level details beyond what the schema provides. 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 the action ('Search the web'), the method ('using Gemini with Google Search grounding'), and the purpose ('real-time information'). It distinctly separates from sibling tools like 'gemini' which is a general AI model.
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 real-time information but does not explicitly state when to use this tool versus alternatives like 'gemini' or when not to use it. No exclusions or when-not-to-use guidance is provided.
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. Dates show when Glama detected each change.
9 tool updates
v1.1.2- First observed
analyze-media - First observed
brainstorm - First observed
fetch-chunk - First observed
gemini - First observed
help - First observed
ping - First observed
shell - First observed
timeout-test - First observed
web-search
TDQS
Each tool has a clearly distinct purpose: general query, web search, media analysis, shell command, brainstorming, chunk retrieval, connectivity test, help, and timeout test. No two tools appear to overlap in functionality.
Most tools follow a lowercase hyphenated verb-noun pattern (e.g., web-search, analyze-media, fetch-chunk), but a few are single-word nouns or verbs (gemini, shell, ping, help, timeout-test), creating minor inconsistency.
With 9 tools, the server covers core capabilities without being overwhelming. The count is well-scoped for an AI assistant providing querying, search, media analysis, shell execution, brainstorming, and utilities.
The tool set covers major interaction modes: querying, web search, media analysis, shell commands, brainstorming, and utility functions. The fetch-chunk tool addresses a specific need, but there are no obvious gaps for the stated domain.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
One workspace of tools for Claude and ChatGPT: connect 600+ apps, generate media, build tools.
Connect your team's living knowledge base — docs, data, issues, CRM — to Claude and ChatGPT.
Claude-powered AI tools: research, write, code, analyze, translate, debate, pitch, score, and more.
Persistent context for Claude. Your AI always knows your projects and next actions across sessions.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceConnects Claude Code with Google's Gemini AI, allowing users to ask Gemini questions, get code reviews, and brainstorm ideas directly within Claude Code.248MIT
- AlicenseBqualityCmaintenanceEnables Claude Desktop to generate text and analyze images using Google's Gemini Pro API. Provides seamless integration between Claude and Gemini's AI capabilities through natural language commands.2MIT
- AlicenseBqualityDmaintenanceEnables Claude to use Google Gemini as a secondary AI through MCP for large-scale codebase analysis and complex reasoning tasks. Supports both Gemini Flash and Pro models with specialized functions for general queries and comprehensive code analysis.4MIT
- AlicenseNot gradedqualityDmaintenanceEnables Claude Code to consult Gemini for complex coding problems with session management, file attachments, and conversation persistence.105MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/tuannvm/gemini-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server