Skip to main content
Glama
kvnpetit

SRC (Structured Repo Context)

by kvnpetit

Get changed symbols

get_changed_symbols
Read-onlyIdempotent

Identify which source symbols changed in a Git working tree by mapping modified files and diff hunks to current definitions, including untracked files.

Instructions

Read-only Git working-tree analysis that maps changed files and zero-context diff hunks to current source symbols. Includes untracked files, bounded output, and explicit limitations when symbols cannot be resolved.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
directoryNoGit repository root.
max_filesNoMaximum changed files to inspect
max_symbolsNoMaximum changed symbols to return

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataNo
metaYes
errorNo
messageNo
successYes
schema_versionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv2.0.0

TDQS

A3.6/5.0
Behavior4/5

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

The description adds real behavioral context beyond the annotations: it is explicitly read-only, includes untracked files, relies on zero-context diff hunks, bounds output, and acknowledges limitations when symbols cannot be resolved. This complements rather than contradicts the readOnlyHint, idempotentHint, and destructiveHint annotations.

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

Conciseness5/5

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

The description is a single, tightly packed sentence with no filler. The most important framing (read-only, Git, maps changed files to symbols) is front-loaded, and subsequent clauses add meaningful constraints without redundancy.

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?

Given that the annotations cover safety/idempotence, the schema covers all parameters, and an output schema exists, the description offers sufficient behavioral context: untracked files, bounded output, and symbol-resolution limitations. Slightly more detail about how output bounding manifests could push this higher, but as is it is complete enough for invocation.

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 description coverage is 100%, so the schema already documents directory, max_files, and max_symbols well. The description only gestures at bounded output, which maps loosely to the max_* parameters, but does not need to add more because the schema carries the detailed 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 states what the tool does: it maps changed files and zero-context diff hunks to current source symbols. This is a specific verb and resource, and the read-only Git working-tree framing helps set expectations, though it does not explicitly differentiate from siblings like get_git_context.

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

Usage Guidelines2/5

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

The description explains what the operation is, but gives no guidance on when to use it versus sibling tools such as get_git_context, get_index_status, or analyze_impact. No alternative tools or exclusion criteria are mentioned, so an agent gets little help choosing between this and similar Git/analysis tools.

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