Stellarion
Tools

stellarion_get_symbol_info

Quick metadata for any symbol -- signature, visibility, kind, and properties

Returns lightweight metadata about a symbol (function, class, variable, type) without the full context that heavier tools provide. The fastest way to check what a symbol is, see its signature, or get a usage count.

When to Use

  • Quickly checking a function's signature or return type
  • Confirming whether a symbol is public or private
  • Getting a usage count before deciding to modify or delete
  • Glancing at symbol properties (async, static, exported)
  • When stellarion_get_ai_context would be too heavy for what you need

Parameters

ParameterTypeRequiredDefaultDescription
uristringYes--File URI containing the symbol (e.g., file:///path/to/file.ts)
linenumberYes--Line number of the symbol (0-indexed)
includeReferencesbooleanNofalseInclude all reference locations. Can be slow on large workspaces.

Examples

Quick Signature Check

Natural Language: "What's the signature of the function on line 42?"

MCP Tool Call:

{
  "name": "stellarion_get_symbol_info",
  "arguments": {
    "uri": "file:///home/dev/project/src/utils/transform.ts",
    "line": 42
  }
}

Returns:

{
  "name": "transformData",
  "kind": "function",
  "signature": "function transformData(input: RawData, options?: TransformOptions): Result<ProcessedData>",
  "visibility": "public",
  "uri": "file:///home/dev/project/src/utils/transform.ts",
  "lineRange": [42, 78],
  "properties": {
    "is_async": true,
    "is_exported": true
  }
}

Check Usage Before Deleting

Natural Language: "How many places reference OldFormatter?"

MCP Tool Call:

{
  "name": "stellarion_get_symbol_info",
  "arguments": {
    "uri": "file:///home/dev/project/src/formatters/old.py",
    "line": 5,
    "includeReferences": true
  }
}

Returns: Symbol metadata plus a references array listing every file and line where OldFormatter is referenced. Useful for confirming whether it is safe to remove.

Inspect a Class

Natural Language: "What kind of symbol is on line 10 of models.rs?"

MCP Tool Call:

{
  "name": "stellarion_get_symbol_info",
  "arguments": {
    "uri": "file:///home/dev/project/src/models.rs",
    "line": 10
  }
}

Returns: Name, kind (struct), visibility (pub(crate)), signature, line range, and properties like whether it derives common traits.

Output Format

  • name -- Symbol name
  • kind -- Symbol type: function, class, method, variable, interface, type, module, struct, enum, trait
  • signature -- Full signature string
  • visibility -- Access level: public, private, protected, pub(crate), etc.
  • uri -- File URI where the symbol is defined
  • lineRange -- startLine, endLine in the file
  • properties -- Object with boolean flags: is_async, is_static, is_exported, is_abstract, etc.
  • references -- (only when includeReferences: true) Array of {uri, line} for every reference location

Tips

  • This is the lightest analysis tool. Use it for quick lookups. Use stellarion_get_ai_context or stellarion_get_detailed_symbol when you need full source code and relationships.
  • Leave includeReferences off by default. It requires scanning the entire workspace and can be slow on large codebases. Only enable it when you specifically need reference locations.
  • The properties object varies by language. TypeScript symbols may have is_async and is_exported. Rust symbols may have is_unsafe and is_generic. Python symbols may have is_classmethod and is_staticmethod.
  • For a more complete view that includes source code, callers, and callees, use stellarion_get_detailed_symbol instead.