Skip to main content
Glama
Treeweft

treeweft-mcp

Official
by Treeweft

find_callers

Find every caller of a function or method by providing its name or ID, returning call sites to trace code dependencies.

Instructions

Find callers of a function/method. Accepts either a name (auto-resolves; returns callers across all matches with target_id set) or a full entity id.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
source_idNo
name_or_idYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2026.9.23

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It explains that name resolution auto-resolves and returns callers across all matches with target_id set, which is a useful behavioral detail. However, it does not disclose whether the operation is read-only, any potential side effects, error behavior, or what happens when no callers are found or the entity does not exist. This is insufficient for a query tool with zero annotation coverage.

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 dense sentence with no filler. It front-loads the core purpose ('Find callers of a function/method') and packs the two input modes into a compact, readable structure. Every phrase earns its place, making it both concise and efficiently structured.

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?

Although an output schema exists and the parameter count is small, the description leaves critical gaps: source_id is unexplained, and there is no guidance on when to use this tool relative to siblings like find_references. The tool could be called correctly with name_or_id alone, but an agent lacks context about optional parameters and selection criteria, making the description incomplete for optimal usage.

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 the missing parameter documentation. It explains the meaning of name_or_id (either a name that auto-resolves or a full entity id) and notes that results include target_id. However, source_id is completely undocumented in both the schema and the description, leaving agents to guess its purpose and behavior. The description adds some value for one parameter but fails to cover the other.

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

Purpose5/5

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

The description clearly states the tool's purpose: finding callers of a function/method. It specifies the resource (function/method) and the action (find callers), and distinguishes it from sibling tools like find_references by focusing on callers specifically. The two input modes (name or full entity id) are explicitly described, making the intent unambiguous.

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 by defining what the tool does and how inputs are handled, but it provides no explicit guidance on when to use this over alternatives like find_references or graph_explore. There is no mention of scenarios where this tool is preferable or when it should not be used. The input mode details (auto-resolve name vs. full id) are helpful but not contextual usage guidance.

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