Skip to content

OpenGrok MCP Server for Zed

io.github.icyhot09/opengrok-mcp-server

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

client:Zed transport:stdio runtime:npm

Install OpenGrok MCP Server in Zed

~/.config/zed/settings.json · windows: %APPDATA%\Zed\settings.json

Held in this page only — never stored, logged, or sent anywhere but back to your screen.

{
  "context_servers": {
    "opengrok-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "opengrok-mcp-server"
      ],
      "env": {
        "OPENGROK_BASE_URL": "<OPENGROK_BASE_URL>",
        "OPENGROK_USERNAME": "<OPENGROK_USERNAME>",
        "OPENGROK_PASSWORD": "<OPENGROK_PASSWORD>",
        "OPENGROK_VERIFY_SSL": "<OPENGROK_VERIFY_SSL>",
        "OPENGROK_CODE_MODE": "<OPENGROK_CODE_MODE>",
        "OPENGROK_ENABLE_MEMORY_TOOLS": "<OPENGROK_ENABLE_MEMORY_TOOLS>",
        "OPENGROK_DEFAULT_PROJECT": "<OPENGROK_DEFAULT_PROJECT>",
        "OPENGROK_CONTEXT_BUDGET": "<OPENGROK_CONTEXT_BUDGET>",
        "OPENGROK_API_VERSION": "<OPENGROK_API_VERSION>",
        "HTTP_PROXY": "<HTTP_PROXY>",
        "OPENGROK_RESPONSE_FORMAT_OVERRIDE": "<OPENGROK_RESPONSE_FORMAT_OVERRIDE>",
        "OPENGROK_MEMORY_BANK_DIR": "<OPENGROK_MEMORY_BANK_DIR>",
        "OPENGROK_LOCAL_COMPILE_DB_PATHS": "<OPENGROK_LOCAL_COMPILE_DB_PATHS>",
        "OPENGROK_ENABLE_ELICITATION": "<OPENGROK_ENABLE_ELICITATION>",
        "OPENGROK_ENABLE_SAMPLING": "<OPENGROK_ENABLE_SAMPLING>",
        "OPENGROK_SAMPLING_MODEL": "<OPENGROK_SAMPLING_MODEL>",
        "OPENGROK_ENABLE_FILES_API": "<OPENGROK_ENABLE_FILES_API>",
        "OPENGROK_ENABLE_OBSERVATION_MASKER": "<OPENGROK_ENABLE_OBSERVATION_MASKER>",
        "OPENGROK_OBSERVATION_MASKER_TURNS": "<OPENGROK_OBSERVATION_MASKER_TURNS>",
        "OPENGROK_SAMPLING_MAX_TOKENS": "<OPENGROK_SAMPLING_MAX_TOKENS>",
        "OPENGROK_AUDIT_LOG_FILE": "<OPENGROK_AUDIT_LOG_FILE>",
        "OPENGROK_RATELIMIT_RPM": "<OPENGROK_RATELIMIT_RPM>",
        "OPENGROK_PER_TOOL_RATELIMIT": "<OPENGROK_PER_TOOL_RATELIMIT>",
        "OPENGROK_TIMEOUT": "<OPENGROK_TIMEOUT>",
        "OPENGROK_DEFAULT_MAX_RESULTS": "<OPENGROK_DEFAULT_MAX_RESULTS>",
        "OPENGROK_PASSWORD_FILE": "<OPENGROK_PASSWORD_FILE>",
        "OPENGROK_MAX_RESPONSE_BYTES": "<OPENGROK_MAX_RESPONSE_BYTES>",
        "OPENGROK_SEARCH_AND_READ_CAP": "<OPENGROK_SEARCH_AND_READ_CAP>",
        "OPENGROK_STRICT_SSRF": "<OPENGROK_STRICT_SSRF>",
        "OPENGROK_JWT_ISSUER": "<OPENGROK_JWT_ISSUER>",
        "OPENGROK_GRAMMAR_DIR": "<OPENGROK_GRAMMAR_DIR>"
      }
    }
  }
}

Merge this into your existing settings object — do not replace the file. Zed docs

OpenGrok MCP Server in other clients