Skip to main content
Glama
aimasteracc

tree-sitter-analyzer

by aimasteracc

nav

Read-onlyIdempotent

Explore code structure by tracing call paths, callees, callers, and impact. Get context, lineage, and test maps for any symbol or file to analyze dependencies and changes.

Instructions

Code-intelligence (codegraph-compatible) navigation facade. Actions: call_path, callee_tree, callees, caller_tree, callers, co_change, context, impact, lineage, navigate, pulse, pulse_batch, resolve, test_map, trace, xref. Pass action=help with target_action for an exact action schema. Cost: action=callers is slow (prefer nav action=context (1-hop, warm)).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeNoAction sub-mode (e.g. summary|cycles).
limitNoMax results.
queryNoSearch query/pattern.
scopeNoAction discriminator (e.g. point|graph).
actionYesWhich business capability to invoke, or help for discovery. One of: call_path, callee_tree, callees, caller_tree, callers, co_change, context, help, impact, lineage, navigate, pulse, pulse_batch, resolve, test_map, trace, xref
symbolNoSymbol/function name.
languageNoLanguage hint (usually auto).
file_pathNoTarget file path.
access_modeNoUse only a certified existing index snapshot.
snapshot_idNoOwner-issued certified index snapshot ID.
function_nameNoFunction name (alias of symbol).
output_formatNoOutput format: JSON.
target_actionNoBusiness action to describe when action is help.
source_generationNoOwner-issued certified source generation.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changedv2.2.0
    • changedInput schema / properties / action / description
      Previous value: -"Which capability to invoke. One of: call_path, callee_tree, callees, caller_tree, callers, co_change, context, impact, lineage, navigate, pulse, pulse_batch, resolve, test_map, trace, xref"New value: +"Which business capability to invoke, or help for discovery. One of: call_path, callee_tree, callees, caller_tree, callers, co_change, context, help, impact, lineage, navigate, pulse, pulse_batch, resolve, test_map, trace, xref"
    • changedInput schema / properties / action / enum
      Previous value: -[
      -  "call_path",
      -  "callee_tree",
      -  "callees",
      -  "caller_tree",
      -  "callers",
      -  "co_change",
      -  "context",
      -  "impact",
      -  "lineage",
      -  "navigate",
      -  "pulse",
      -  "pulse_batch",
      -  "resolve",
      -  "test_map",
      -  "trace",
      -  "xref"
      -]New value: +[
      +  "call_path",
      +  "callee_tree",
      +  "callees",
      +  "caller_tree",
      +  "callers",
      +  "co_change",
      +  "context",
      +  "help",
      +  "impact",
      +  "lineage",
      +  "navigate",
      +  "pulse",
      +  "pulse_batch",
      +  "resolve",
      +  "test_map",
      +  "trace",
      +  "xref"
      +]
    • addedInput schema / properties / target_action
      Added value: +{
      +  "description": "Business action to describe when action is help.",
      +  "type": "string"
      +}
  2. Changed7 schema fields changedv1.30.0
    • addedInput schema / properties / access_mode
      Added value: +{
      +  "description": "Use only a certified existing index snapshot.",
      +  "enum": [
      +    "read_existing"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / action / description
      Previous value: -"Which capability to invoke. One of: call_path, callee_tree, callees, caller_tree, callers, co_change, context, impact, lineage, navigate, resolve, test_map, trace, xref"New value: +"Which capability to invoke. One of: call_path, callee_tree, callees, caller_tree, callers, co_change, context, impact, lineage, navigate, pulse, pulse_batch, resolve, test_map, trace, xref"
    • changedInput schema / properties / action / enum
      Previous value: -[
      -  "call_path",
      -  "callee_tree",
      -  "callees",
      -  "caller_tree",
      -  "callers",
      -  "co_change",
      -  "context",
      -  "impact",
      -  "lineage",
      -  "navigate",
      -  "resolve",
      -  "test_map",
      -  "trace",
      -  "xref"
      -]New value: +[
      +  "call_path",
      +  "callee_tree",
      +  "callees",
      +  "caller_tree",
      +  "callers",
      +  "co_change",
      +  "context",
      +  "impact",
      +  "lineage",
      +  "navigate",
      +  "pulse",
      +  "pulse_batch",
      +  "resolve",
      +  "test_map",
      +  "trace",
      +  "xref"
      +]
    • changedInput schema / properties / output_format / description
      Previous value: -"Output format (toon|json)."New value: +"Output format: JSON."
    • addedInput schema / properties / output_format / enum
      Added value: +[
      +  "json"
      +]
    • addedInput schema / properties / snapshot_id
      Added value: +{
      +  "description": "Owner-issued certified index snapshot ID.",
      +  "type": "string"
      +}
    • addedInput schema / properties / source_generation
      Added value: +{
      +  "description": "Owner-issued certified source generation.",
      +  "type": "string"
      +}
  3. First observedv1.23.0

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds value beyond those by surfacing a concrete performance trait (action=callers is slow, context is warm/1-hop) and explaining the help discovery mechanism. This is useful behavioral context and does not contradict the annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is compact and front-loaded with the tool's identity, followed by a useful action list, help hint, and cost warning. The action enumeration is long but necessary for a 16-action facade; it slightly duplicates the schema enum but remains scannable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a facade with 16 actions and no output schema, the description cannot fully document every action, but it provides the complete action list and an explicit path to obtain exact schemas via action=help. It also flags the one expensive action, which is important for correct invocation. Per-action semantics and sibling differentiation are still gaps, but the help mechanism mitigates much of the missing detail.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3 because every parameter already has a description. The description mostly restates the action enum and the action=help + target_action behavior already present in the schema; only the cost note for callers adds marginal parameter-level meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies this as a code-intelligence navigation facade and lists the 16 supported actions, so an agent can see the resource and domain at a glance. However, it does not state a single crisp outcome or explicitly differentiate itself from siblings like search, structure, or viz, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for code-graph navigation and gives an internal cost preference (prefer context over slow callers), which is useful. But it never explains when to choose nav over sibling tools, nor does it state exclusions or when not to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.