Skip to main content
Glama
flyfei-cmd

CodeQL LSP MCP Server

by flyfei-cmd

codeql_references

Locate every reference to a symbol in CodeQL files at a given position, returning reference locations and metadata for efficient code navigation and analysis.

Instructions

Finds all references to a symbol at a specific position.

Args: file_uri: URI of the CodeQL file line: 0-based line number character: 0-based character position

Returns: Dictionary with reference locations and metadata

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
lineYes
file_uriYes
characterYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Behavior3/5

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

With no annotations, the description carries the burden of behavioral disclosure. It mentions the return format (dictionary with reference locations and metadata) and parameter conventions (0-based line/character), which adds some transparency. However, it does not disclose potential errors, limitations, side effects, or whether the operation is read-only. The description is adequate but not rich in behavioral context.

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 short, well-organized with explicit Args and Returns sections, and free of redundant information. Every sentence serves a purpose: stating the tool's function, defining parameters, and clarifying the output. It is appropriately front-loaded and easy to scan.

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 tool's simplicity and the presence of an output schema, the description covers the core usage completely: what it does, how to call it, and what it returns. It lacks information about edge cases or error behavior, but for a code navigation tool, the provided details are sufficient for an agent to select and invoke it correctly. Sibling names set additional context for differentiation.

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

Parameters5/5

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

The schema provides only types and required flags with zero description coverage. The description compensates fully by explaining each parameter in the Args section: file_uri (URI of the CodeQL file), line (0-based line number), and character (0-based character position). This adds clear meaning beyond the schema and enables correct invocation.

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 uses a specific verb ('Finds') and a specific resource ('all references to a symbol at a specific position'). It clearly distinguishes from siblings like codeql_definition (which finds a definition) by stating it finds references. The purpose is unambiguous and action-oriented.

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

Usage Guidelines2/5

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

The description implies when to use the tool (when you need references to a symbol) but provides no explicit guidance on when not to use it or how it compares to alternatives. No prerequisites or exclusions are mentioned, leaving the agent to infer usage from sibling names rather than explicit instructions.

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/flyfei-cmd/codeql-lsp-mcp-python'

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