@navigation-agent/mcp-server
v0.8.3
Published
Workspace-only MCP server for structural code discovery, symbol lookup, impact analysis, and downstream flow tracing before reading or modifying code.
Maintainers
Readme
@navigation-agent/mcp-server
Workspace-only MCP server for structural code navigation. It helps CLI agents inspect a repository before opening files by exposing a stable code.* tool surface for tree inspection, symbol lookup, endpoint discovery, text search, caller impact, and downstream flow tracing.
Repository: https://github.com/j0k3r-dev-rgl/navigation-agent-mcp
Quick Start
Run it through npx from any MCP client:
npx -y @navigation-agent/mcp-serverThe server uses stdio by default. By default it analyzes the MCP process current working directory. To pin a project, set NAVIGATION_MCP_WORKSPACE_ROOT in your MCP client config.
Requirements:
- Node.js 18+
rgfrom ripgrep, optional and only needed forcode.search_text
CLI Agent Setup
Claude Code
claude mcp add --transport stdio navigation-agent -- npx -y @navigation-agent/mcp-serverOpenCode
Add to ~/.config/opencode/opencode.json:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"navigation-agent": {
"type": "local",
"command": ["npx", "-y", "@navigation-agent/mcp-server"],
"enabled": true,
"timeout": 30000
}
}
}Gemini CLI
gemini mcp add navigation-agent npx -- -y @navigation-agent/mcp-serverOr add it manually to ~/.gemini/settings.json or .gemini/settings.json:
{
"mcpServers": {
"navigation-agent": {
"command": "npx",
"args": ["-y", "@navigation-agent/mcp-server"],
"timeout": 30000
}
}
}Use the hyphenated server name navigation-agent. Avoid underscores in Gemini MCP server names because Gemini derives fully-qualified tool names from the server name.
Cursor
Add to ~/.cursor/mcp.json or .cursor/mcp.json:
{
"mcpServers": {
"navigation-agent": {
"command": "npx",
"args": ["-y", "@navigation-agent/mcp-server"]
}
}
}OpenAI Codex
codex mcp add navigation-agent -- npx -y @navigation-agent/mcp-serverOr add to ~/.codex/config.toml:
[mcp_servers.navigation-agent]
command = "npx"
args = ["-y", "@navigation-agent/mcp-server"]
startup_timeout_sec = 30
tool_timeout_sec = 60Agent Usage
This package does not require a private skill registry. It publishes MCP server instructions and per-tool descriptions so clients that honor MCP instructions can teach the model when and how to use the tools.
Optional skill users can copy the portable skill from the repository: skills/navigation-mcp/SKILL.md.
Use this workflow:
- Use
code.inspect_treeto orient in an unknown module without reading files. - Use
code.find_symbolwhen you know a class, function, method, type, enum, or annotation name. - Pass
find_symbolresults intocode.trace_callersfor upstream impact orcode.trace_flowfor downstream behavior. - Use
code.list_endpointsbefore changing REST, GraphQL, or route surfaces. - Use
code.search_textfor textual patterns, imports, decorators, or when symbol lookup is not enough. - Read only the relevant files returned by the navigation tools.
Fallbacks agents should use:
| Situation | Correct fallback |
|---|---|
| code.find_symbol returns zero for constants, config keys, decorators, imports, or generated names | Use code.search_text scoped by path, include, and language. |
| A trace result is too broad or noisy | Narrow path, language, framework, or symbol; for trace_callers, lower max_depth. |
| A route or endpoint inventory returns zero | Retry with a narrower path and the most specific framework or kind before concluding there is no public surface. |
| A navigation result has truncated: true | Narrow the query before reading files or increasing limit. |
Do not treat an empty result as proof by itself. Use one scoped fallback, then explain the limitation if results still stay empty.
Canonical tools:
code.inspect_treecode.find_symbolcode.list_endpointscode.search_textcode.trace_flowcode.trace_callers
Some clients expose MCP tools with a server prefix or normalized separators, such as navigation-agent_code_find_symbol. Treat those names as aliases of the canonical code.* tools.
Supported filters:
- Languages:
typescript,javascript,go,java,php,python,rust,csharp - Frameworks:
react-router,spring
Do not use this MCP for web search, external repositories, arbitrary filesystem access, or reading file contents. It is a workspace-only navigation layer.
Inspect Published Tool Guidance
npx -y @navigation-agent/mcp-server --describe-toolsThis prints the MCP instructions, tool names, input schemas, and descriptions that CLI agents receive from the server.
