
Gemini
โ 1from alexcong
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
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
- @modelcontextprotocol/sdk - MCP TypeScript SDK
- @google/generative-ai - Google Gemini API client
- zod - Runtime type validation
- @std/assert - Deno standard library assertions
Development
This project uses Deno with TypeScript. Key development commands:
deno task dev- Start development server with watch modedeno task test- Run test suitedeno cache src/server.ts- Cache dependenciesdeno fmt- Format codedeno lint- Lint code
Support
# 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.tsBefore it works, you'll need: GEMINI_API_KEYGEMINI_MODEL
Prerequisites
- Deno (v1.40+)
- Google Gemini API key (Get one here)
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 configOption 2: From Source
- Clone this repository:
git clone <repository-url>
cd gemini-mcp- Set your environment variables:
export GEMINI_API_KEY=your_api_key_here
export GEMINI_MODEL=gemini-3-pro-previewUsage
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 startTesting 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.tsImportant: 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:watchCode Quality
# Format code
deno fmt
# Lint code
deno lintClaude 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"
}
}
}
}Troubleshooting
Environment Variable Issues
If you get environment variable errors:
-
Verify your environment variables are set:
echo $GEMINI_API_KEY echo $GEMINI_MODEL -
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 -
Check the server logs: When the server starts, it will show
(API Key: configured)to confirm your key is loaded.
Licensed under MITโ you can use, modify, and redistribute it under that license's terms.
License
MIT License - see LICENSE file for details.