Gemini

Provides access to Google Gemini AI capabilities as tools.

Gemini MCP Server

A Model Context Protocol (MCP) server that provides Google Gemini AI capabilities as tools. Built with Deno and TypeScript.

Features

  • ask_gemini: Unified AI assistant powered by Gemini 3 Pro with built-in Google Search and URL analysis capabilities

Prerequisites

Installation

Option 1: Use JSR Package (Recommended)

The easiest way is to use the published JSR package directly in your Claude Desktop configuration:

# No installation needed! Use jsr:@cong/gemini-mcp directly in your Claude config

Option 2: From Source

  1. Clone this repository:
git clone <repository-url>
cd gemini-mcp
  1. Set your environment variables:
export GEMINI_API_KEY=your_api_key_here
export GEMINI_MODEL=gemini-3-pro-preview

Usage

Start the Server

# Set your environment variables first
export GEMINI_API_KEY=your_api_key_here
export GEMINI_MODEL=gemini-3-pro-preview

# Development mode (with watch)
deno task dev

# Production mode
deno task start

Testing with MCP Inspector

To test the server with the MCP Inspector, make sure your environment variables are set:

# Set environment variables in your shell
export GEMINI_API_KEY=your_api_key_here
export GEMINI_MODEL=gemini-3-pro-preview

# Install MCP Inspector if you haven't already
npm install -g @modelcontextprotocol/inspector

# Run the inspector
npx @modelcontextprotocol/inspector src/server.ts

Important: The environment variables must be set in the same shell where you run the MCP Inspector.

Run Tests

# Run all tests
deno task test

# Run tests with watch mode
deno task test:watch

Code Quality

# Format code
deno fmt

# Lint code
deno lint

MCP Tool

ask_gemini

The unified AI assistant powered by Gemini 3 Pro with built-in Google Search and URL analysis capabilities.

Parameters:

  • prompt (required): Your question or request. Include URLs directly in the text for analysis.

Example:

{
  "name": "ask_gemini",
  "arguments": {
    "prompt": "What are the latest developments in quantum computing? Please analyze this paper: https://arxiv.org/abs/2301.01234"
  }
}

Capabilities:

  • 🔍 Automatically searches the web for current information
  • 📄 Analyzes URLs mentioned in your prompt text
  • 🧠 Uses Gemini 3 Pro with thinking capabilities, urlContext and googleSearch tools
  • 📚 Provides comprehensive, well-sourced answers with enhanced reasoning

Dependencies

Development

This project uses Deno with TypeScript. Key development commands:

  • deno task dev - Start development server with watch mode
  • deno task test - Run test suite
  • deno cache src/server.ts - Cache dependencies
  • deno fmt - Format code
  • deno lint - Lint code

Troubleshooting

Environment Variable Issues

If you get environment variable errors:

  1. Verify your environment variables are set:

    echo $GEMINI_API_KEY
    echo $GEMINI_MODEL
    
  2. For MCP Inspector testing, ensure both variables are set in the same terminal:

    export GEMINI_API_KEY=your_api_key_here
    export GEMINI_MODEL=gemini-3-pro-preview
    npx @modelcontextprotocol/inspector src/server.ts
    
  3. Check the server logs: When the server starts, it will show (API Key: configured) to confirm your key is loaded.

Support

Claude Desktop Configuration

To use this MCP server with Claude Desktop, add it to your Claude configuration:

macOS/Linux/Windows

Edit your Claude configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "gemini": {
      "command": "deno",
      "args": [
        "run",
        "--allow-net",
        "--allow-env",
        "jsr:@cong/gemini-mcp"
      ],
      "env": {
        "GEMINI_API_KEY": "your_api_key_here",
        "GEMINI_MODEL": "gemini-3-pro-preview"
      }
    }
  }
}

Local Development

If you're running from source code:

{
  "mcpServers": {
    "gemini": {
      "command": "deno",
      "args": [
        "run",
        "--allow-net",
        "--allow-env",
        "src/server.ts"
      ],
      "env": {
        "GEMINI_API_KEY": "your_api_key_here",
        "GEMINI_MODEL": "gemini-3-pro-preview"
      }
    }
  }
}

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run tests: deno task test
  5. Format code: deno fmt
  6. Submit a pull request

License

MIT License - see LICENSE file for details.

Related Servers