Skip to main content
Glama
JSungMin

vs-token-safer

read_symbol

Retrieve the source code of a single declaration (function, class, etc.) from a file, avoiding full file reads. Works with symbol name, optional line disambiguation, and can return only the signature.

Instructions

USE INSTEAD OF Read on a file when you only need ONE function/class — returns just that named declaration's source (its span), not the whole file (the read twin of replace_symbol_body). signatureOnly = head only; body capped by VTS_SYMBOL_MAX_LINES.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
lineNo0-based line; disambiguate same-named (optional).
pathNoFile holding the symbol (else resolved via the index).
symbolYesDeclaration name to read.
backendNo
projectPathNo
signatureOnlyNoReturn just the declaration head.
Behavior4/5

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

With no annotations, the description carries full burden. It discloses that only the named declaration's span is returned (not whole file), the signatureOnly mode, and the body cap by VTS_SYMBOL_MAX_LINES. Missing details on error cases (e.g., symbol not found) and return format, but for a read-only tool this is adequate.

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-loading the primary purpose and usage guidance. Every sentence adds value: the first states the key differentiation, the second provides parameter hints. No superfluous text.

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 6 parameters, 1 required, and no output schema, the description explains the core behavior (span return) and parameter nuances. Lacks explicit return type/format and error handling, but for a targeted read tool it covers essential context well.

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 67% (4 of 6 params described). The description adds value by explaining the 'line' disambiguation role and 'signatureOnly' behavior, and mentions the body cap on results. However, it does not cover the undocumented 'projectPath' and 'backend' parameters, so baseline 3 is appropriate.

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 reads a specific named declaration's source span instead of the whole file, distinguishing it from a 'Read' tool and positioning it as the read twin of replace_symbol_body. The verb 'read' and resource 'symbol' are specific, and the sibling differentiation is explicit.

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

Usage Guidelines5/5

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

The description explicitly tells when to use ('when you only need ONE function/class'), when not ('instead of Read on a file'), and mentions an alternative (the read twin of replace_symbol_body). It also explains the 'signatureOnly' option and the body cap limit.

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/JSungMin/vs-token-safer'

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