Skip to content

OpenGrok MCP Server

Local package path declaredNo credentials listedRepository declared by sourceUpdated 2026-09-16

io.github.IcyHot09/opengrok-mcp-server · Registry status: active

Report data on this entry

At a glance

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

Vendor's own description, untranslated and unverified

Execution location
Local package path declaredMCP-Register · 2026-08-06
Required secrets declared
No credentials listedMCP-Register · 2026-08-06
Declared version and change
9.6.0 · Source-reported change date 2026-09-16MCP-Register · 2026-09-17
Repository as declared
github.com/IcyHot09/opengrok-mcp-serverMCP-Register · 2026-08-06
Configuration
can be built from the disclosed start template

Inspect connection paths and prerequisites

Related categories

6 of 12 categories. All categories in the segment catalogue

What this entry shares with others

Same package, another registry entry

Same repository

2 registry entries for this repository

Page last changed:

Sources and collection
Runs
Local package path declared
Credentials
No credentials listed
Registry record changed
2026-09-16
Setup
Template available
Registry name
io.github.IcyHot09/opengrok-mcp-server
Package coordinate
npm:opengrok-mcp-server
Declared version
9.6.0
Source-reported listing date
2026-09-16
Source-reported change date
2026-09-16
First seen by tracevero
2026-08-06
Vendor's website
https://github.com/IcyHot09/opengrok-mcp-server

Evidence for this page: The values on this page come from several collections. Each row therefore states its own origin. What the confidence levels mean

Measured values

Measured values
Required secrets declaredNo credentials listed no
Original data – Required secret variables (raw): confirmed absent
Original data – Required secret headers (raw): confirmed absent
Source: MCP-Register · collected on 2026-08-06 · derived
Execution locationLocal package path declared local
Original data – Transports (raw): stdio
Source: MCP-Register · collected on 2026-08-06 · derived
Path argument presentno
Original data – Path arguments (raw): confirmed absent
Original data – Path environment variables (raw): confirmed absent
Source: MCP-Register · collected on 2026-08-06 · derived
Repository URL listedRepository declared by source yes
Original data – Repository (raw): https://github.com/IcyHot09/opengrok-mcp-server
Source: MCP-Register · collected on 2026-08-06 · derived
Declared version9.6.0
Source: MCP-Register · collected on 2026-09-17 · self-declared

What is measured is what a manifest declares, not what a piece of software does. This registry fetches no repository URL, no endpoint and no package index; nothing here is verified. Which value comes from which source, and by which rule it was formed, is set out in the Methodology.

Source data25

Evidence for this page: The values on this page come from several collections. Each row therefore states its own origin.

Raw values
Description (raw)MCP server bridging OpenGrok search engine with AI for instant context across massive codebases.
Source: MCP-Register · collected on 2026-08-26 · self-declared
Environment variables (raw)OPENGROK_BASE_URL, OPENGROK_USERNAME, OPENGROK_PASSWORD, OPENGROK_VERIFY_SSL, OPENGROK_CODE_MODE, OPENGROK_ENABLE_MEMORY_TOOLS, OPENGROK_DEFAULT_PROJECT, OPENGROK_CONTEXT_BUDGET, OPENGROK_API_VERSION, HTTP_PROXY, OPENGROK_RESPONSE_FORMAT_OVERRIDE, OPENGROK_MEMORY_BANK_DIR, OPENGROK_LOCAL_COMPILE_DB_PATHS, OPENGROK_ENABLE_ELICITATION, OPENGROK_ENABLE_SAMPLING, OPENGROK_SAMPLING_MODEL, OPENGROK_ENABLE_FILES_API, OPENGROK_ENABLE_OBSERVATION_MASKER, OPENGROK_OBSERVATION_MASKER_TURNS, OPENGROK_SAMPLING_MAX_TOKENS, OPENGROK_AUDIT_LOG_FILE, OPENGROK_RATELIMIT_RPM, OPENGROK_PER_TOOL_RATELIMIT, OPENGROK_TIMEOUT, OPENGROK_DEFAULT_MAX_RESULTS, OPENGROK_PASSWORD_FILE, OPENGROK_MAX_RESPONSE_BYTES, OPENGROK_SEARCH_AND_READ_CAP, OPENGROK_STRICT_SSRF, OPENGROK_JWT_ISSUER, OPENGROK_GRAMMAR_DIR
Source: MCP-Register · collected on 2026-09-17 · self-declared
Required secret variables (raw)confirmed absent
Source: MCP-Register · collected on 2026-08-06 · self-declared
Transports (raw)stdio
Source: MCP-Register · collected on 2026-08-06 · self-declared
Path arguments (raw)confirmed absent
Source: MCP-Register · collected on 2026-08-06 · self-declared
Repository (raw)https://github.com/IcyHot09/opengrok-mcp-server
Source: MCP-Register · collected on 2026-08-06 · self-declared
Package registries (raw)npm
Source: MCP-Register · collected on 2026-08-06 · self-declared
Required secret headers (raw)confirmed absent
Source: MCP-Register · collected on 2026-08-16 · self-declared
Path environment variables (raw)confirmed absent
Source: MCP-Register · collected on 2026-08-16 · self-declared
Remote URLs (raw)confirmed absent
Source: MCP-Register · collected on 2026-08-16 · self-declared
Remote hosts (raw)confirmed absent
Source: MCP-Register · collected on 2026-08-16 · self-declared
Registry status message (raw)confirmed absent
Source: MCP-Register · collected on 2026-08-16 · self-declared
First listed in the registry (raw)2026-09-16
Source: MCP-Register · collected on 2026-09-17 · self-declared
Last changed in the registry (raw)2026-09-16
Source: MCP-Register · collected on 2026-09-17 · self-declared
Schema version of the raw record (raw)https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json
Source: MCP-Register · collected on 2026-08-16 · self-declared
Delivery form (raw)package
Source: MCP-Register · collected on 2026-08-16 · self-declared
Repository platform (raw)github
Source: MCP-Register · collected on 2026-08-16 · self-declared
Repository subfolder (raw)confirmed absent
Source: MCP-Register · collected on 2026-08-16 · self-declared
Package identifiers (raw)opengrok-mcp-server
Source: MCP-Register · collected on 2026-08-16 · self-declared
Package versions (raw)9.6.0
Source: MCP-Register · collected on 2026-09-17 · self-declared
Runtime hints (raw)npx
Source: MCP-Register · collected on 2026-08-16 · self-declared
Environment variable formats (raw)boolean, string
Source: MCP-Register · collected on 2026-08-16 · self-declared
Environment variable descriptions (raw)HTTP_PROXY=HTTP/HTTPS proxy URL for all OpenGrok API requests (e.g. http://proxy.company.com:8080). Also set as HTTPS_PROXY. · OPENGROK_API_VERSION=OpenGrok REST API version. Use v2 for call graph features (requires OpenGrok 1.12+). · OPENGROK_AUDIT_LOG_FILE=Path to write structured audit events (CSV/JSON). Appends tool invocations, elicitation events, and errors. Leave unset to disable. · OPENGROK_BASE_URL=OpenGrok server base URL (e.g. https://opengrok.example.com/source/) · OPENGROK_CODE_MODE=Enable Code Mode: 2-tool sandbox interface with env.opengrok.* JavaScript API. Reduces AI token usage by ~90%. · OPENGROK_CONTEXT_BUDGET=Response size tier controlling token usage. · OPENGROK_DEFAULT_MAX_RESULTS=Default maximum number of results returned per search query. Default: 25. · OPENGROK_DEFAULT_PROJECT=Default project to scope all searches. Can be overridden per call. · OPENGROK_ENABLE_ELICITATION=Interactive 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_FILES_API=Files API Cache — avoids re-uploading unchanged investigation notes. Requires Files API support in the MCP client. · OPENGROK_ENABLE_MEMORY_TOOLS=Register the 3 memory tools in Code Mode (memory status, read, update). Off = api + execute only. · OPENGROK_ENABLE_OBSERVATION_MASKER=Observation 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_ENABLE_SAMPLING=AI 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_GRAMMAR_DIR=Directory containing tree-sitter WASM grammars. Overrides the bundled grammar lookup. · OPENGROK_JWT_ISSUER=Expected JWT issuer (iss claim) for HTTP transport OAuth. When set, JWTs from other issuers are rejected. · OPENGROK_LOCAL_COMPILE_DB_PATHS=Comma-separated paths to compile_commands.json for C/C++ compiler flag and include-path extraction. Leave unset for automatic workspace discovery. · OPENGROK_MAX_RESPONSE_BYTES=Hard cap on response payload size in bytes. Overrides the context-budget default. Non-positive values are ignored. · OPENGROK_MEMORY_BANK_DIR=Directory where the AI stores investigation notes (active-task.md, investigation-log.md). Defaults to ~/.config/opengrok-mcp/memory-bank/ or workspace-relative when set by the VS Code extension. · OPENGROK_OBSERVATION_MASKER_TURNS=Number of most-recent opengrok_execute results to keep as full text before masking older ones. Default: 10. · OPENGROK_PASSWORD=OpenGrok authentication password. Prefer storing via OS keychain using 'npx opengrok-mcp-server setup'. · OPENGROK_PASSWORD_FILE=Path to a file containing the OpenGrok password (file-mounted secret for containers). Takes precedence over the OS keychain when OPENGROK_PASSWORD is unset. · OPENGROK_PER_TOOL_RATELIMIT=Per-tool rate limits in requests per minute, as comma-separated tool:rpm pairs (e.g. opengrok_execute:15,opengrok_search_code:30). Overrides OPENGROK_RATELIMIT_RPM for specific tools. · OPENGROK_RATELIMIT_RPM=Maximum requests per minute to the OpenGrok server. Default: 60. · OPENGROK_RESPONSE_FORMAT_OVERRIDE=Force a specific response format for all tools. Leave unset for per-tool auto-selection (recommended). · OPENGROK_SAMPLING_MAX_TOKENS=Maximum tokens for AI sampling responses (error explanation, query reformulation). Range: 64–4096. · OPENGROK_SAMPLING_MODEL=Model preference for MCP Sampling (used for error explanation and query reformulation). · OPENGROK_SEARCH_AND_READ_CAP=Cap for the search_and_read compound tool in bytes. Overrides the context-budget default (2–8 KB depending on tier). Non-positive values are ignored. · OPENGROK_STRICT_SSRF=When true, reject OPENGROK_BASE_URL values pointing at private/loopback IPs at startup. Default: false (warn only; per-request guards still apply). · OPENGROK_TIMEOUT=HTTP request timeout in seconds for OpenGrok API calls. Increase for slow servers. Default: 30. · OPENGROK_USERNAME=OpenGrok authentication username. Leave unset for anonymous access. · OPENGROK_VERIFY_SSL=Verify TLS certificates. Set to false for self-signed or internal CA certs.
Source: MCP-Register · collected on 2026-09-17 · self-declared
Icon formats (raw)confirmed absent
Source: MCP-Register · collected on 2026-08-16 · self-declared
Connection paths (source structure){"packages":[{"registryType":"npm","identifier":"opengrok-mcp-server","version":"9.6.0","runtimeHint":"npx","transport":"stdio","environment":[{"name":"OPENGROK_BASE_URL","description":"OpenGrok server base URL (e.g. https://opengrok.example.com/source/)","format":"string","required":true,"secret":false},{"name":"OPENGROK_USERNAME","description":"OpenGrok authentication username. Leave unset for anonymous access.","format":"string","required":false,"secret":false},{"name":"OPENGROK_PASSWORD","description":"OpenGrok authentication password. Prefer storing via OS keychain using 'npx opengrok-mcp-server setup'.","format":"string","required":false,"secret":true},{"name":"OPENGROK_VERIFY_SSL","description":"Verify TLS certificates. Set to false for self-signed or internal CA certs.","format":"boolean","required":false,"secret":false},{"name":"OPENGROK_CODE_MODE","description":"Enable Code Mode: 2-tool sandbox interface with env.opengrok.* JavaScript API. Reduces AI token usage by ~90%.","format":"boolean","required":false,"secret":false},{"name":"OPENGROK_ENABLE_MEMORY_TOOLS","description":"Register the 3 memory tools in Code Mode (memory status, read, update). Off = api + execute only.","format":"boolean","required":false,"secret":false},{"name":"OPENGROK_DEFAULT_PROJECT","description":"Default project to scope all searches. Can be overridden per call.","format":"string","required":false,"secret":false},{"name":"OPENGROK_CONTEXT_BUDGET","description":"Response size tier controlling token usage.","format":"string","required":false,"secret":false},{"name":"OPENGROK_API_VERSION","description":"OpenGrok REST API version. Use v2 for call graph features (requires OpenGrok 1.12+).","format":"string","required":false,"secret":false},{"name":"HTTP_PROXY","description":"HTTP/HTTPS proxy URL for all OpenGrok API requests (e.g. http://proxy.company.com:8080). Also set as HTTPS_PROXY.","format":"string","required":false,"secret":false},{"name":"OPENGROK_RESPONSE_FORMAT_OVERRIDE","description":"Force a specific response format for all tools. Leave unset for per-tool auto-selection (recommended).","format":"string","required":false,"secret":false},{"name":"OPENGROK_MEMORY_BANK_DIR","description":"Directory where the AI stores investigation notes (active-task.md, investigation-log.md). Defaults to ~/.config/opengrok-mcp/memory-bank/ or workspace-relative when set by the VS Code extension.","format":"string","required":false,"secret":false},{"name":"OPENGROK_LOCAL_COMPILE_DB_PATHS","description":"Comma-separated paths to compile_commands.json for C/C++ compiler flag and include-path extraction. Leave unset for automatic workspace discovery.","format":"string","required":false,"secret":false},{"name":"OPENGROK_ENABLE_ELICITATION","description":"Interactive 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.","format":"boolean","required":false,"secret":false},{"name":"OPENGROK_ENABLE_SAMPLING","description":"AI 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).","format":"boolean","required":false,"secret":false},{"name":"OPENGROK_SAMPLING_MODEL","description":"Model preference for MCP Sampling (used for error explanation and query reformulation).","format":"string","required":false,"secret":false},{"name":"OPENGROK_ENABLE_FILES_API","description":"Files API Cache — avoids re-uploading unchanged investigation notes. Requires Files API support in the MCP client.","format":"boolean","required":false,"secret":false},{"name":"OPENGROK_ENABLE_OBSERVATION_MASKER","description":"Observation 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).","format":"boolean","required":false,"secret":false},{"name":"OPENGROK_OBSERVATION_MASKER_TURNS","description":"Number of most-recent opengrok_execute results to keep as full text before masking older ones. Default: 10.","format":"string","required":false,"secret":false},{"name":"OPENGROK_SAMPLING_MAX_TOKENS","description":"Maximum tokens for AI sampling responses (error explanation, query reformulation). Range: 64–4096.","format":"string","required":false,"secret":false},{"name":"OPENGROK_AUDIT_LOG_FILE","description":"Path to write structured audit events (CSV/JSON). Appends tool invocations, elicitation events, and errors. Leave unset to disable.","format":"string","required":false,"secret":false},{"name":"OPENGROK_RATELIMIT_RPM","description":"Maximum requests per minute to the OpenGrok server. Default: 60.","format":"string","required":false,"secret":false},{"name":"OPENGROK_PER_TOOL_RATELIMIT","description":"Per-tool rate limits in requests per minute, as comma-separated tool:rpm pairs (e.g. opengrok_execute:15,opengrok_search_code:30). Overrides OPENGROK_RATELIMIT_RPM for specific tools.","format":"string","required":false,"secret":false},{"name":"OPENGROK_TIMEOUT","description":"HTTP request timeout in seconds for OpenGrok API calls. Increase for slow servers. Default: 30.","format":"string","required":false,"secret":false},{"name":"OPENGROK_DEFAULT_MAX_RESULTS","description":"Default maximum number of results returned per search query. Default: 25.","format":"string","required":false,"secret":false},{"name":"OPENGROK_PASSWORD_FILE","description":"Path to a file containing the OpenGrok password (file-mounted secret for containers). Takes precedence over the OS keychain when OPENGROK_PASSWORD is unset.","format":"string","required":false,"secret":false},{"name":"OPENGROK_MAX_RESPONSE_BYTES","description":"Hard cap on response payload size in bytes. Overrides the context-budget default. Non-positive values are ignored.","format":"string","required":false,"secret":false},{"name":"OPENGROK_SEARCH_AND_READ_CAP","description":"Cap for the search_and_read compound tool in bytes. Overrides the context-budget default (2–8 KB depending on tier). Non-positive values are ignored.","format":"string","required":false,"secret":false},{"name":"OPENGROK_STRICT_SSRF","description":"When true, reject OPENGROK_BASE_URL values pointing at private/loopback IPs at startup. Default: false (warn only; per-request guards still apply).","format":"boolean","required":false,"secret":false},{"name":"OPENGROK_JWT_ISSUER","description":"Expected JWT issuer (iss claim) for HTTP transport OAuth. When set, JWTs from other issuers are rejected.","format":"string","required":false,"secret":false},{"name":"OPENGROK_GRAMMAR_DIR","description":"Directory containing tree-sitter WASM grammars. Overrides the bundled grammar lookup.","format":"string","required":false,"secret":false}],"additional_arguments_declared":false}],"remotes":[]}
Source: MCP-Register · collected on 2026-09-17 · self-declared
Embed this badge

Paste this line into a README of your own. The badge states how many values the registry holds for the entry and when it last looked, and it links back to this page.

tracevero: number of measured values and date of collection for this registry entry

[![tracevero: number of measured values and date of collection for this registry entry](https://tracevero.com/badge/mcp/io-github-icyhot09-opengrok-mcp-server.svg)](https://tracevero.com/mcp/io-github-icyhot09-opengrok-mcp-server)

The image is drawn again on every request, so it always reports the current state while the pasted line stays as it is. It carries no rating and no traffic light – only the two measured figures.

Changes

Changes
2026-09-17Declared version: 9.0.1 → 9.6.0
2026-09-17Last changed in the registry (raw): 2026-03-31 → 2026-09-16
2026-09-17First listed in the registry (raw): 2026-03-31 → 2026-09-16

These are the 3 most recent changes to this entry. Full history

tracevero · https://tracevero.com/mcp/io-github-icyhot09-opengrok-mcp-server