47
/ 100
1 month ago
github_topic

mcp-gemini-server

This project provides a dedicated MCP (Model Context Protocol) server that wraps the @google/genai SDK. It exposes Google's Gemini model capabilities as standard MCP tools, allowing other LLMs (like Cline) or MCP-compatible systems to leverage Gemini's features as a backend workhorse.

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find.

Install from

M8ven verifies MCPs across every public registry — install directly from whichever one you prefer.

// key findings
🚨
Known vulnerabilities in dependencies: 1 critical, 3 high
Affects packages this MCP installs at runtime. Upgrade or remove the affected dependency.
🔐
You'll be asked for 3 credentials: GITHUB_API_TOKEN, GOOGLE_GEMINI_API_KEY, MCP_CONNECTION_TOKEN
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// known CVEs in dependencies1 critical3 high1 low

Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.

criticalvitest@3.1.4GHSA-5xrq-8626-4rwp

When Vitest UI server is listening, arbitrary file can be read and executed

high@modelcontextprotocol/sdk@1.11.5GHSA-345p-7cg4-v4c7

@modelcontextprotocol/sdk has cross-client data leak via shared server/transport instance reuse

high@modelcontextprotocol/sdk@1.11.5GHSA-8r9q-7v3j-jr4g

Anthropic's MCP TypeScript SDK has a ReDoS vulnerability

high@modelcontextprotocol/sdk@1.11.5GHSA-w48q-cv73-mx4w

Model Context Protocol (MCP) TypeScript SDK does not enable DNS rebinding protection by default

lowuuid@11.1.0GHSA-w5hq-g745-h8pq

uuid: Missing buffer bounds check in v3/v5/v6 when buf is provided

Depend on this server? Get alerted when its CVEs change.Watch this server free →
// required environment variables
This server reads these from process.env. You'll be asked to provide them before it can run.
configALLOWED_OUTPUT_PATHS"": "/var/opt/mcp-gemini-server/outputs,/tmp/mcp-gemini-outputs" // Optional: Comma-separated list of allowed output directories for mcpCallServerTool and writeToFileTool
configENABLE_HEALTH_CHECKEnable health check server (options: true, false; default: true)
configEXAMPLE_ENABLE_LOGS
configEXAMPLE_GREETING
configGEMINI_SAFE_FILE_BASE_DIR
🔐 secretGITHUB_API_TOKENPersonal Access Token for GitHub API access (required for GitHub code review features). For public repos, token needs 'public_repo' and 'read:user' scopes. For private repos, token needs 'repo' scope.
🔐 secretGOOGLE_GEMINI_API_KEY"": "YOUR_API_KEY",
configGOOGLE_GEMINI_CODE_MODELS
configGOOGLE_GEMINI_DEFAULT_MODEL
configGOOGLE_GEMINI_DEFAULT_THINKING_BUDGETDefault thinking budget in tokens (0-24576) for controlling model reasoning
configGOOGLE_GEMINI_ENABLE_URL_CONTEXTEnable URL context features (options: true, false; default: false)
configGOOGLE_GEMINI_IMAGE_MODELS
configGOOGLE_GEMINI_IMAGE_RESOLUTION
configGOOGLE_GEMINI_MAX_IMAGE_SIZE_MB
configGOOGLE_GEMINI_MODEL"": "gemini-1.5-flash", // Optional: Set a default model
configGOOGLE_GEMINI_MODELS
configGOOGLE_GEMINI_ROUTING_PREFER_COST
configGOOGLE_GEMINI_ROUTING_PREFER_QUALITY
configGOOGLE_GEMINI_ROUTING_PREFER_SPEED
configGOOGLE_GEMINI_SUPPORTED_IMAGE_FORMATS
configGOOGLE_GEMINI_URL_ALLOWED_DOMAINSComma-separated list or JSON array of allowed domains (default: for all domains)
configGOOGLE_GEMINI_URL_BLOCKLISTComma-separated list or JSON array of blocked domains (default: empty)
configGOOGLE_GEMINI_URL_CONVERT_TO_MARKDOWNConvert HTML content to markdown (options: true, false; default: true)
configGOOGLE_GEMINI_URL_ENABLE_CACHINGEnable URL content caching (options: true, false; default: true)
configGOOGLE_GEMINI_URL_FETCH_TIMEOUT_MSFetch timeout per URL in milliseconds (default: 10000)
configGOOGLE_GEMINI_URL_INCLUDE_METADATAInclude URL metadata in context (options: true, false; default: true)
configGOOGLE_GEMINI_URL_MAX_CONTENT_KBMaximum content size per URL in KB (default: 100)
configGOOGLE_GEMINI_URL_MAX_COUNTMaximum URLs per request (default: 20)
configGOOGLE_GEMINI_URL_USER_AGENTCustom User-Agent header for URL requests (default: MCP-Gemini-Server/1.0)
configHEALTH_CHECK_PORTPort for health check HTTP server (default: 3000)
configMCP_CLIENT_IDDefault client ID used when this server acts as a client to other MCP servers (defaults to "gemini-sdk-client")
🔐 secretMCP_CONNECTION_TOKEN"": "YOUR_GENERATED_CONNECTION_TOKEN", // Required: Use the token from step 4
configMCP_ENABLE_STREAMINGEnable SSE streaming for HTTP transport (options: true, false; default: false)
configMCP_LOG_LEVELLog level for MCP operations (options: debug, info, warn, error; default: info)
configMCP_SERVER_HOST"": "localhost", // Required: Server host
configMCP_SERVER_PORT"": "8080", // Required: Server port
configMCP_SESSION_TIMEOUTSession timeout in seconds for HTTP transport (default: 3600 = 1 hour)
configMCP_TRANSPORTTransport to use for MCP server (options: stdio, sse, streamable, http; default: stdio)
configMCP_TRANSPORT_TYPEDeprecated - Use MCP_TRANSPORT instead
configMCP_WS_PORTDeprecated - Use MCP_SERVER_PORT instead
configPORT
configSESSION_STORE_TYPESession storage backend (memory or sqlite; default: memory)
configSQLITE_DB_PATHPath to SQLite database file when using sqlite store (default: ./data/sessions.db)
// full audit trail
The full breakdown of what we checked, the deductions that landed, the network hosts, the dependency advisories, and concrete fix guidance is available to verified publishers.
// improvement guidance — verified publishers only
We have 8 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Score](https://m8ven.ai/badge/mcp/bsmi021-mcp-gemini-server-1fgpej)](https://m8ven.ai/mcp/bsmi021-mcp-gemini-server-1fgpej)
commit: 8e449d13adb13a4e8de5b1d27a125921a4eb7eb2
code hash: 24d2cbd4eccd2ce27b5abd28967a6754f4e9a9beec0c00b73fa1d5552214316e
verified: 6/14/2026, 10:56:54 AM
view raw JSON →