Files
gh-rafaelcalleja-claude-mar…/skills/mcp-management/references/gemini-cli-integration.md
2025-11-30 08:48:52 +08:00

4.2 KiB

Gemini CLI Integration Guide

Overview

Gemini CLI provides automatic MCP tool discovery and execution via natural language prompts. This is the recommended primary method for executing MCP tools.

Installation

npm install -g gemini-cli

Verify installation:

gemini --version

Configuration

Gemini CLI reads MCP servers from .gemini/settings.json. Create a symlink to .claude/.mcp.json:

# Create .gemini directory
mkdir -p .gemini

# Create symlink (Unix/Linux/macOS)
ln -sf .claude/.mcp.json .gemini/settings.json

# Create symlink (Windows - requires admin or developer mode)
mklink .gemini\settings.json .claude\.mcp.json

Security

Add to .gitignore:

.gemini/settings.json

This prevents committing sensitive API keys and server configurations.

Usage

Basic Syntax

gemini [flags] -p "<prompt>"

Essential Flags

  • -y: Skip confirmation prompts (auto-approve tool execution)
  • -m <model>: Model selection
    • gemini-2.5-flash (fast, recommended for MCP)
    • gemini-2.5-flash (balanced)
    • gemini-pro (high quality)
  • -p "<prompt>": Task description

Examples

Screenshot Capture:

gemini -y -m gemini-2.5-flash -p "Take a screenshot of https://www.google.com.vn"

Memory Operations:

gemini -y -m gemini-2.5-flash -p "Remember that Alice is a React developer working on e-commerce projects"

Web Research:

gemini -y -m gemini-2.5-flash -p "Search for latest Next.js 15 features and summarize the top 3"

Multi-Tool Orchestration:

gemini -y -m gemini-2.5-flash -p "Search for Claude AI documentation, take a screenshot of the homepage, and save both to memory"

Browser Automation:

gemini -y -m gemini-2.5-flash -p "Navigate to https://example.com, click the signup button, and take a screenshot"

How It Works

  1. Configuration Loading: Reads .gemini/settings.json (symlinked to .claude/.mcp.json)
  2. Server Connection: Connects to all configured MCP servers
  3. Tool Discovery: Lists all available tools from servers
  4. Prompt Analysis: Gemini model analyzes the prompt
  5. Tool Selection: Automatically selects relevant tools
  6. Execution: Calls tools with appropriate parameters
  7. Result Synthesis: Combines tool outputs into coherent response

Advanced Configuration

Trusted Servers (Skip Confirmations)

Edit .claude/.mcp.json:

{
  "mcpServers": {
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"],
      "trust": true
    }
  }
}

With trust: true, the -y flag is unnecessary.

Tool Filtering

Limit tool exposure:

{
  "mcpServers": {
    "chrome-devtools": {
      "command": "npx",
      "args": ["-y", "chrome-devtools-mcp@latest"],
      "includeTools": ["navigate_page", "screenshot"],
      "excludeTools": ["evaluate_js"]
    }
  }
}

Environment Variables

Use $VAR_NAME syntax for sensitive data:

{
  "mcpServers": {
    "brave-search": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-brave-search"],
      "env": {
        "BRAVE_API_KEY": "$BRAVE_API_KEY"
      }
    }
  }
}

Troubleshooting

Check MCP Status

gemini
> /mcp

Shows:

  • Connected servers
  • Available tools
  • Configuration errors
# Unix/Linux/macOS
ls -la .gemini/settings.json

# Windows
dir .gemini\settings.json

Should show symlink pointing to .claude/.mcp.json.

Debug Mode

gemini --debug -p "Take a screenshot"

Shows detailed MCP communication logs.

Comparison with Alternatives

Method Speed Flexibility Setup Best For
Gemini CLI All tasks
Direct Scripts Specific tools
mcp-manager Fallback

Recommendation: Use Gemini CLI as primary method, fallback to scripts/subagent when unavailable.

Resources