Skip to main content
Glama

source_sync

Scan current files to identify moved, changed, missing, or ambiguous symbol bindings and list affected Blocks and Chains, without including source in the response to keep context grounded.

Instructions

Scan current files for bound symbols without loading source into the response. Reports moved, changed, missing, or ambiguous bindings and affected Blocks/Chains.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
projectRootNo
sinceRevisionNo
taskContextIdNo
includeUnchangedNo
includeStructuredNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.3.3

TDQS

B3.4/5.0
Behavior4/5

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

With no annotations, the description bears the full behavioral disclosure burden. It meaningfully discloses that source content is intentionally not loaded into the response and that the output categorizes bindings as moved, changed, missing, or ambiguous plus affected Blocks/Chains. This goes beyond a generic scan description, though it omits side-effect or permission details, which are likely irrelevant for a read-only scan.

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 exceptionally concise: two sentences, with the key non-loading behavior front-loaded and the report contents delivered in a compact clause. Every word earns its place and no filler is present.

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

Completeness2/5

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

With five undocumented optional parameters, no annotations, and no output schema, the description is not complete enough for confident invocation. It gives a high-level summary of what the tool reports but leaves the agent unclear about which parameters are relevant for a given scenario, how to interpret the bindings output, and how the tool fits into the larger workflow. The absence of any parameter guidance is a significant gap.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for explaining the five parameters, but it does not. 'Scan current files' only loosely hints at projectRoot, and nothing clarifies sinceRevision, includeUnchanged, includeStructured, or taskContextId. The description provides domain context but no parameter-specific semantics, leaving the agent to guess from names alone.

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 states a specific verb ('Scan') and resource ('current files for bound symbols'), and clearly distinguishes the tool's purpose from a generic file read by stating it does not load source into the response. It reports binding status and affected Blocks/Chains, making the purpose understandable. It does not explicitly differentiate itself from sibling tools, 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 usage when one needs to detect moved, changed, missing, or ambiguous symbol bindings in current files. However, it gives no explicit guidance on when to choose this tool over siblings like timeline_sync, changes_since, or graph_validate, and no conditions for using it. This is implied usage, not explicit task-selection guidance.

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