OpenGrok MCP Server

io.github.IcyHot09/opengrok-mcp-server

MCP server bridging OpenGrok search engine with AI for instant context across massive codebases.

Connect this server

Add this to your MCP client config — claude_desktop_config.json (Claude Desktop) or .cursor/mcp.json (Cursor).Suits: Claude Desktop · Cursor.

{
  "mcpServers": {
    "opengrok-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "opengrok-mcp-server@9.6.0"
      ],
      "env": {
        "OPENGROK_BASE_URL": "<your OPENGROK_BASE_URL>",
        "OPENGROK_PASSWORD": "<your OPENGROK_PASSWORD>",
        "OPENGROK_VERIFY_SSL": "true",
        "OPENGROK_CODE_MODE": "true",
        "OPENGROK_ENABLE_MEMORY_TOOLS": "false",
        "OPENGROK_CONTEXT_BUDGET": "standard",
        "OPENGROK_API_VERSION": "v1",
        "OPENGROK_ENABLE_ELICITATION": "true",
        "OPENGROK_ENABLE_SAMPLING": "false",
        "OPENGROK_ENABLE_FILES_API": "false",
        "OPENGROK_ENABLE_OBSERVATION_MASKER": "false",
        "OPENGROK_OBSERVATION_MASKER_TURNS": "10",
        "OPENGROK_SAMPLING_MAX_TOKENS": "256",
        "OPENGROK_RATELIMIT_RPM": "60",
        "OPENGROK_TIMEOUT": "30",
        "OPENGROK_DEFAULT_MAX_RESULTS": "25",
        "OPENGROK_STRICT_SSRF": "false"
      }
    }
  }
}
Environment variables
  • OPENGROK_BASE_URLrequiredOpenGrok server base URL (e.g. https://opengrok.example.com/source/)
  • OPENGROK_PASSWORDsecretOpenGrok authentication password. Prefer storing via OS keychain using 'npx opengrok-mcp-server setup'.
  • OPENGROK_VERIFY_SSLVerify TLS certificates. Set to false for self-signed or internal CA certs.
  • OPENGROK_CODE_MODEEnable Code Mode: 2-tool sandbox interface with env.opengrok.* JavaScript API. Reduces AI token usage by ~90%.
  • OPENGROK_ENABLE_MEMORY_TOOLSRegister the 3 memory tools in Code Mode (memory status, read, update). Off = api + execute only.
  • OPENGROK_CONTEXT_BUDGETResponse size tier controlling token usage.
  • OPENGROK_API_VERSIONOpenGrok REST API version. Use v2 for call graph features (requires OpenGrok 1.12+).
  • OPENGROK_ENABLE_ELICITATIONInteractive AI Prompts — the AI pauses to ask questions during investigations (project selection, file disambiguation). Requires Claude Code v2.1.76+ or a client that supports MCP Elicitation.
  • OPENGROK_ENABLE_SAMPLINGAI Sampling — allow the server to request LLM completions for error explanations and summaries. Off by default to avoid consuming premium requests (e.g. GitHub Copilot).
  • OPENGROK_ENABLE_FILES_APIFiles API Cache — avoids re-uploading unchanged investigation notes. Requires Files API support in the MCP client.
  • OPENGROK_ENABLE_OBSERVATION_MASKERObservation Masker — prepend compact history summaries to opengrok_execute results after N turns. Disabled by default; has no benefit for clients that retain full context (Claude Code, Cursor).
  • OPENGROK_OBSERVATION_MASKER_TURNSNumber of most-recent opengrok_execute results to keep as full text before masking older ones. Default: 10.
  • OPENGROK_SAMPLING_MAX_TOKENSMaximum tokens for AI sampling responses (error explanation, query reformulation). Range: 64–4096.
  • OPENGROK_RATELIMIT_RPMMaximum requests per minute to the OpenGrok server. Default: 60.
  • OPENGROK_TIMEOUTHTTP request timeout in seconds for OpenGrok API calls. Increase for slow servers. Default: 30.
  • OPENGROK_DEFAULT_MAX_RESULTSDefault maximum number of results returned per search query. Default: 25.
  • OPENGROK_STRICT_SSRFWhen true, reject OPENGROK_BASE_URL values pointing at private/loopback IPs at startup. Default: false (warn only; per-request guards still apply).

A starting point — check the repository for exact arguments and setup. Restart your client after editing the config.

Category
Developer Tools
Version
9.6.0
Registry
active
Published
9/16/2026
Browse all Developer Tools →

Add the badge to your site

Show visitors that OpenGrok MCP Server is listed here — it’s also the link we check for a free listing.

OpenGrok MCP Server — listed on Serverdex

HTML — for your website

<a href="https://serverdex.io/server/io-github-icyhot09-opengrok-mcp-server?utm_source=badge"><img src="https://serverdex.io/brand/badge.svg" alt="OpenGrok MCP Server — listed on Serverdex" width="123" height="40" loading="lazy"></a>

Recommended. A dofollow link from your own domain is the one that counts for search engines, and it's the link we check for a free listing.

Markdown — for your README

[![OpenGrok MCP Server — listed on Serverdex](https://serverdex.io/brand/badge.svg)](https://serverdex.io/server/io-github-icyhot09-opengrok-mcp-server?utm_source=badge)

Nice for visibility, but GitHub marks README links nofollow, so it doesn't pass authority. Use the HTML badge on your site as well.