Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

Gemini Researcher

by capyBearistaversion 1.0.2i★ 0iRuns on your computer
Registry nameio.github.capyBearista/gemini-researcher

Install

Overview

Description from the maker (original English)

Stateless MCP server that proxies research queries to Gemini CLI, reducing agent context/model usage

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs on your computer
  • Transport: stdio
  • Category: Search & AI memory
  • You need to fill in: GEMINI_API_KEY

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 2 passed Fail
  • Runs on your computer with your user’s permissions (files, network, apps).
  • You fill in yourself: GEMINI_API_KEY, PROJECT_ROOT, RESPONSE_CHUNK_SIZE_KB, CACHE_TTL_MS, DEBUG, GOOGLE_APPLICATION_CREDENTIALS, GOOGLE_CLOUD_PROJECT, VERTEX_AI_PROJECT

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "gemini-researcher": {
      "command": "npx",
      "args": [
        "-y",
        "gemini-researcher"
      ],
      "env": {
        "GEMINI_API_KEY": "your-value",
        "PROJECT_ROOT": "your-value",
        "RESPONSE_CHUNK_SIZE_KB": "your-value",
        "CACHE_TTL_MS": "your-value",
        "DEBUG": "your-value",
        "GOOGLE_APPLICATION_CREDENTIALS": "your-value",
        "GOOGLE_CLOUD_PROJECT": "your-value",
        "VERTEX_AI_PROJECT": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add gemini-researcher --env GEMINI_API_KEY=your-value --env PROJECT_ROOT=your-value --env RESPONSE_CHUNK_SIZE_KB=your-value --env CACHE_TTL_MS=your-value --env DEBUG=your-value --env GOOGLE_APPLICATION_CREDENTIALS=your-value --env GOOGLE_CLOUD_PROJECT=your-value --env VERTEX_AI_PROJECT=your-value -- npx -y gemini-researcher

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "gemini-researcher": {
      "command": "npx",
      "args": [
        "-y",
        "gemini-researcher"
      ],
      "env": {
        "GEMINI_API_KEY": "your-value",
        "PROJECT_ROOT": "your-value",
        "RESPONSE_CHUNK_SIZE_KB": "your-value",
        "CACHE_TTL_MS": "your-value",
        "DEBUG": "your-value",
        "GOOGLE_APPLICATION_CREDENTIALS": "your-value",
        "GOOGLE_CLOUD_PROJECT": "your-value",
        "VERTEX_AI_PROJECT": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "gemini-researcher": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "gemini-researcher"
      ],
      "env": {
        "GEMINI_API_KEY": "your-value",
        "PROJECT_ROOT": "your-value",
        "RESPONSE_CHUNK_SIZE_KB": "your-value",
        "CACHE_TTL_MS": "your-value",
        "DEBUG": "your-value",
        "GOOGLE_APPLICATION_CREDENTIALS": "your-value",
        "GOOGLE_CLOUD_PROJECT": "your-value",
        "VERTEX_AI_PROJECT": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • GEMINI_API_KEY secret env
    Gemini API key (optional if you already authenticated Gemini CLI via "gemini" login)
  • PROJECT_ROOT env
    Override the project root directory used for path validation (defaults to current working directory)
  • RESPONSE_CHUNK_SIZE_KB env
    Chunk size threshold (KB) for large responses (default: 10)
  • CACHE_TTL_MS env
    Chunk cache TTL in milliseconds (default: 3600000 / 1 hour)
  • DEBUG env
    Enable debug logging (set to "true" or "1")
  • GOOGLE_APPLICATION_CREDENTIALS env
    Vertex AI / Google auth: path to a service account JSON credentials file
  • GOOGLE_CLOUD_PROJECT env
    Vertex AI / Google auth: GCP project ID (used by some auth configurations)
  • VERTEX_AI_PROJECT env
    Vertex AI / Google auth: Vertex AI project identifier (used by some auth configurations)

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

Which apps can use it

Based on how this server connects and on each app’s own docs, checked Nov 10, 2026.

Run on your computer in

ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast

All apps, with pros and cons →

What it can do

Runs on your computer; the tool list appears in your AI app after you install it.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 11, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account capyBearista, which owns the repo

  • ✕ Fail

    Still maintained

    No code changes for over a year, or the repo is archived

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • – Not applicable

    Endpoint responds

    This one runs on your computer; there is no internet endpoint

  • – Not applicable

    Sign-in with OAuth

    Runs on your computer and uses local settings instead

  • … Not checked yet

    No hidden instructions in tool descriptions

    Runs on your computer; we can only read tool lists from internet endpoints

Compared with others in Search & AI memoryi

  • More stars than 0% of the other 5862 servers in this category
  • Published to the registry more recently than 2% of the other 5862 servers in this category
  • Basic checks equal to or better than 14% of the other 5862 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is Gemini Researcher safe?

It passed 1 of 2 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: GEMINI_API_KEY

Does it run on my computer or in the cloud?

It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).

Is it still maintained?

The GitHub repo last changed 5 months ago, and the latest version (1.0.2) reached the registry 10 months ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.

What can I use instead?

In the same category: Ruflo, Context7, Metabase

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Ruflo

Agent teams, swarms, memory and hooks for Claude Code and Codex, served over MCP.

by ruvnetWidely used↓ 74.3K/wk★ 81.4KUpdated today

Runs on your computer

Context7

Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.

by upstashWidely used↓ 1.2M/wk★ 64.4KUpdated yesterday

Computer or cloud

Metabase

Lets AI clients search, explore, query, and visualize data in a Metabase instance.

by metabaseWidely used★ 50.3KUpdated 6 months ago

Runs in the cloud

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

Gemini Researcher

A lightweight, stateless MCP (Model Context Protocol) server that lets developer agents (Claude Code, GitHub Copilot) hand off deep repository analysis to the Gemini CLI. The server is read-only, returns structured JSON (as text content), and is designed to reduce the calling agent's context and model usage.

Status: v1 complete. Core features are stable, but still early days. Feedback welcome!

If this saved you tokens, ⭐ please consider giving it a star! :)

The primary goals:

  • Reduce agent context usage by letting Gemini CLI read large codebases locally and do its own research
  • Reduce calling-agent model usage by offloading heavy analysis to Gemini
  • Keep the server stateless and read-only for safety

Why use this?

Instead of copying entire files into your agent's context (burning tokens and cluttering the conversation), this server lets Gemini CLI read files directly from your project. Your agent sends a research query, Gemini reads and synthesizes using its large context window, and returns structured results. You save tokens, your agent stays focused, and complex codebase analysis becomes practical.

Verified clients: Claude Code, Cursor, VS Code (GitHub Copilot)

[!NOTE]

It definitely works with other clients, but I haven't personally tested them yet. Please open an issue if you try it elsewhere!

Table of contents

  • Gemini Researcher
  • Overview
  • Prerequisites
  • Quickstart
  • Step 1: Validate environment
  • Step 2: Configure your MCP client
  • Step 3: Restart your MCP client
  • Step 4: Test it
  • Tools
  • Example workflows
  • Docker
  • Platform guides
  • Troubleshooting (common issues)
  • Contributing
  • License

Overview

Gemini Researcher accepts queries from your AI agent and uses Gemini CLI to analyze your local code files. Results are returned as formatted JSON for your agent to use.

Runtime safety

The server runs Gemini CLI with safety restrictions enabled. See docs/runtime-contract.md for full technical details.

Default invocation pattern:

gemini [ -m <model> ] --output-format json --approval-mode default [--admin-policy <path>] -p "<prompt>"

Key safety points:

  • Uses --approval-mode default (not yolo mode) for controlled execution
  • Enforces read-only policy by default to prevent file changes
  • Policy blocks mutating tools like write_file, replace, run_shell_command
  • Strict enforcement can be disabled with GEMINI_RESEARCHER_ENFORCE_ADMIN_POLICY=0 (not recommended)
Auth and health check

Run health_check with includeDiagnostics: true to see auth status and server health.

authStatusWhat it meansImpact
configuredGemini CLI is authenticatedServer ready to use
unauthenticatedNo valid authentication foundServer marked as degraded
unknownCould not verify auth statusServer marked as degraded

health_check.status values:

  • ok: Gemini CLI is available, auth is working, and safety policy is enforced
  • degraded: Setup incomplete, auth unclear, or safety policy disabled

Prerequisites

  • Node.js 18+ installed
  • Gemini CLI installed: npm install -g @google/gemini-cli
  • Gemini CLI authenticated (recommended: gemini → Login with Google) or set GEMINI_API_KEY

Quick checks:

node --version

gemini --version

Quickstart

Step 1: Validate environment

Run the setup wizard to verify Gemini CLI is installed and authenticated:

npx gemini-researcher init
Step 2: Configure your MCP client

Standard config works in most of the tools:

{

"mcpServers": { "gemini-researcher": { "command": "npx", "args": [ "gemini-researcher" ] } } }

[!NOTE]

On native Windows, some MCP hosts use shell-less process spawning and may not resolve npm command shims reliably (npx, gemini).

If startup fails with launch errors (spawn ... ENOENT / GEMINI_CLI_LAUNCH_FAILED despite working in PowerShell), prefer Docker or WSL for immediate reliability.

See the full remediation tree in docs/platforms/windows.md.

VS Code

Add to your VS Code MCP settings (create .vscode/mcp.json if needed):

{

"servers": { "gemini-researcher": { "command": "npx", "args": [ "gemini-researcher" ] } } }

Claude Code

Option 1: Command line (recommended)

Local (user-wide) scope

# Add the MCP server via CLI

claude mcp add --transport stdio gemini-researcher -- npx gemini-researcher

Verify it was added

claude mcp list

Project scope

Navigate to your project directory, then run:

# Add the MCP server via CLI

claude mcp add --scope project --transport stdio gemini-researcher -- npx gemini-researcher

Verify it was added

claude mcp list

Option 2: Manual configuration

Add to .mcp.json in your project root (project scope):

{

"mcpServers": { "gemini-researcher": { "command": "npx", "args": [ "gemini-researcher" ] } } }

Or add to ~/.claude/settings.json for local scope.

After adding the server, restart Claude Code and use /mcp to verify the connection.

Cursor

Go to Cursor Settings -> Tools & MCP -> Add a Custom MCP Server. Add the following configuration:

{

"mcpServers": { "gemini-researcher": { "type": "stdio", "command": "npx", "args": [ "gemini-researcher" ] } } }

[!NOTE]

The server automatically uses the directory where the IDE opened your workspace as the project root or where your terminal is. To analyze a different directory, optionally set PROJECT_ROOT:

Example

{

"mcpServers": { "gemini-researcher": { "command": "npx", "args": [ "gemini-researcher" ], "env": { "PROJECT_ROOT": "/path/to/your/project" } } } }

Step 3: Restart your MCP client
Step 4: Test it

Ask your agent: "Use gemini-researcher to analyze the project."

Tools

All tools return structured JSON (as MCP text content). Large responses are chunked (~10KB per chunk) and cached for 1 hour.

ToolPurposeWhen to use
quick_queryFast analysis with flash modelQuick questions about specific files or small code sections
deep_researchIn-depth analysis with pro modelComplex multi-file analysis, architecture reviews, security audits
analyze_directoryMap directory structureUnderstanding unfamiliar codebases, generating project overviews
validate_pathsPre-check file pathsVerify files exist before running expensive queries
health_checkDiagnosticsTroubleshooting server/Gemini CLI issues
fetch_chunkGet chunked responsesRetrieve remaining parts of large responses

Query tool fallback chains are family-aware:

  • quick_query: flash -> flash_lite -> auto
  • deep_research: pro -> flash -> flash_lite -> auto
  • analyze_directory: flash -> flash_lite -> auto

When using API-key auth, fallback also handles model-unavailable/unsupported errors (not only quota/capacity errors).

Example workflows

Understanding a security vulnerability:

Agent: Use deep_research to analyze authentication flow across @src/auth and @src/middleware, focusing on security

Quick code explanation:

Agent: Use quick_query to explain the login flow in @src/auth.ts, be concise

Mapping an unfamiliar codebase:

Agent: Use analyze_directory on src/ with depth 3 to understand the project structure

Full tool schemas (for reference)

quick_query

{

"prompt": "Explain @src/auth.ts login flow", "focus": "security", "responseStyle": "concise" }

deep_research

{

"prompt": "Analyze authentication across @src/auth and @src/middleware", "focus": "architecture", "citationMode": "paths_only" }

analyze_directory

{

"path": "src", "depth": 3, "maxFiles": 200 }

validate_paths

{

"paths": ["src/auth.ts", "README.md"] }

health_check

{

"includeDiagnostics": true }

fetch_chunk

{

"cacheKey": "cache_abc123", "chunkIndex": 2 }

Docker

A pre-built multi-platform Docker image is available on Docker Hub:

# Pull the image (works on Intel/AMD and Apple Silicon)

docker pull capybearista/gemini-researcher:latest

Run the server (mount your project and provide API key)

docker run -i --rm \ -e GEMINI_API_KEY="your-api-key" \ -v /path/to/your/project:/workspace \ capybearista/gemini-researcher:latest

For MCP client configuration with Docker:

{

"mcpServers": { "gemini-researcher": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "GEMINI_API_KEY", "-v", "/path/to/your/project:/workspace", "capybearista/gemini-researcher:latest" ], "env": { "GEMINI_API_KEY": "your-api-key-here" } } } }

[!NOTE]

- The -i flag is required for stdio transport

- The container mounts your project to /workspace (the project root)

- Replace /path/to/your/project with your actual project path

- Replace your-api-key with your actual Gemini API key (this is required for Docker usage)

Platform guides

Troubleshooting (common issues)

  • Remediation decision tree:
Error / signalRun this check firstChange this configuration next
GEMINI_CLI_LAUNCH_FAILED or spawn ... ENOENTgemini --help and npx --version in the same terminal profile used by your MCP hostPrefer Docker or WSL config. If staying native, point host command to a stable shim/binary path and restart host.
health_check warning: "resolves only through cmd /c fallback"Run health_check with includeDiagnostics: true and inspect diagnostics.resolutionUpdate host config to launch the reported .cmd shim directly instead of relying on cmd /c fallback.
MCP host cannot launch server via npxnpx --versionChange host server command from npx gemini-researcher to installed binary path (or Docker transport).
ADMIN_POLICY_UNSUPPORTED / output format unsupportedgemini --help and confirm --admin-policy, json, stream-jsonUpgrade Gemini CLI to v0.36.0+
AUTH_MISSING / AUTH_UNKNOWNgemini interactive login and rerun health_checkAuthenticate Gemini CLI or set GEMINI_API_KEY
  • GEMINI_CLI_NOT_FOUND: Install Gemini CLI: npm install -g @google/gemini-cli
  • GEMINI_CLI_LAUNCH_FAILED: This is a launch-path issue, not an auth/capability issue. On Windows, command shims can fail in shell-l

Only the beginning is shown; read the rest in the repo