Skip to main content
Glama
Raheem-19

Serena MCP Server

by Raheem-19

find_referencing_symbols

Find every reference to a symbol in a codebase, returning metadata and code snippets for each usage. Useful for understanding dependencies and refactoring impact.

Instructions

Finds references to the symbol at the given name_path. The result will contain metadata about the referencing symbols as well as a short code snippet around the reference. Returns a list of JSON objects with the symbols referencing the requested symbol.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
name_pathYesFor finding the symbol to find references for, same logic as in the `find_symbol` tool.
exclude_kindsNoSame as in the `find_symbol` tool.
include_kindsNoSame as in the `find_symbol` tool.
relative_pathYesThe relative path to the file containing the symbol for which to find references. Note that here you can't pass a directory but must pass a file.
max_answer_charsNoSame as in the `find_symbol` tool.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior3/5

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

No annotations are provided, so the description carries the burden. It discloses the return format (list of JSON objects with metadata and code snippets) but does not explicitly state that the tool is read-only or mention error conditions, permissions, or performance implications. The verb 'finds' implies non-mutating behavior, but this is implicit.

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 two sentences, front-loaded with the primary action, and every clause adds value. It is concise without sacrificing essential information about what the tool does and what it returns.

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 the presence of an output schema and fully described parameters, the description sufficiently covers the tool's core function and return format. It lacks explicit usage scenarios and exclusions, but for a well-schema'd symbol-reference tool, it is adequately complete for an agent to select and invoke it.

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%, and each parameter already has a descriptive comment referencing find_symbol where applicable. The tool description itself adds no further parameter-level detail, which is acceptable given the schema's completeness. Cross-references to find_symbol provide contextual meaning but are embedded in the schema.

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 function: finding references to a symbol at a given name_path. It specifies the output includes metadata and code snippets, distinguishing it from sibling tools like find_symbol (which finds definitions) or search_for_pattern (which searches text patterns).

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 implicitly conveys when to use the tool (when you need to find references to a symbol), but it does not explicitly state when not to use it or mention alternative tools. Repeated references to find_symbol's parameter logic provide some context but no direct decision guidance.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Raheem-19/serena-optimized'

If you have feedback or need assistance with the MCP directory API, please join our Discord server