Skip to main content
Glama

variant_consequences

Read-only

Annotate every call in a VCF or BCF in this project against the transcripts of a GenBank reference: the Sequence Ontology term per transcript, Ensembl's IMPACT, HGVS c. and p., the CDS and protein positions, and the distance for an upstream, downstream or intronic call. Each call's most severe consequence is picked by Ensembl's own ranking. A symbolic allele, or a REF the reference does not carry at that position, is reported as not annotated rather than read against the wrong sequence. A CDS naming no /transl_table is read on the standard code, as INSDC specifies.

Input Schema

NameRequiredDescriptionDefault
fileNowhich call set in this project, by name. Unset, it is the project's only one, and it refuses rather than guessing when there is more than one.
limitNohow many calls to return in `calls`; the counts are always of all of them. Advanced.
_filesNoThe project: record references shaped like _subject. Their records become library documents a tool names in sequences/parts/document; a trace or alignment is found by file name.
offsetNothe coordinate the reference's FIRST base has in the call set's contig. Default 1, the reference is the whole contig; a region cut out of a genome sets where it was cut from.
_subjectNoThe record to act on: exactly one of sequence, accession (+source), sample (an id from list_samples) or file ({name, text} or {name, base64}); record_index picks one record of several.
referenceNothe GenBank file the calls were made against, by name. Unset, every GenBank file in the project is a candidate: one is used for every call, several are matched to each call by its CHROM (accession or LOCUS).
min_impactNokeep only calls whose most severe consequence is rated at least this. Unset keeps every call.
up_down_stream_bpNohow far from a transcript a call still counts as upstream or downstream of it. SnpEff’s own default is 5,000; the window decides how many annotations each call gets. In bp.

Output Schema

NameRequiredDescriptionDefault
callsYesone row per ALT allele: chrom, pos, ref, alt, the most severe term, its IMPACT, gene, transcript, HGVS c. and p., and why it was not annotated when it was not
by_termYeshow many calls have each most-severe term, over all of them
summaryYeswhat the set holds, generated from the annotation
annotatedYesalleles annotated
annotationsYesevery consequence of every returned call, one per transcript it reaches
not_annotatedYesalleles skipped, each with its reason in `calls`

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.8/5.0
Behavior4/5

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

The read-only annotations already establish the safety profile, and the description adds meaningful behavioral detail: Ensembl ranking selects the most severe consequence, symbolic/REF-mismatch alleles are reported as not annotated, and CDS records without /transl_table use the standard code. These are substantive domain behaviors beyond what the annotations provide, though permission/performance context is absent.

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 front-loaded with the core operation and then adds only relevant behavioral details: output fields, severity ranking, edge-case handling, and genetic-code default. There is no filler, and each sentence contributes information an agent would need to interpret the tool correctly.

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?

With eight parameters, nested objects, and an output schema, the description is complete enough for correct invocation: it explains the annotation behavior, reference handling, severity ranking, and edge cases. The main remaining gap is explicit routing versus sibling variant tools, but the output schema and 100% schema coverage fill most other gaps.

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%, so the input schema already documents the eight parameters thoroughly. The description mentions concepts like the GenBank reference and upstream/downstream distance, but it does not add syntax, defaults, or parameter-specific guidance beyond the schema. Baseline 3 applies.

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

Purpose4/5

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

The description states a specific verb (annotate) and resource (every call in a VCF or BCF) and lists exactly what annotations are produced, making the operation clear. It does not explicitly name or contrast with sibling tools such as score_variant_effect or read_variant_calls, but the scope is still specific enough to distinguish it in practice.

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 intended use is implied: annotate calls in a VCF/BCF against a GenBank reference. However, the description does not say when to choose this tool over alternatives, nor does it give explicit exclusions. The usage context is clear but not fully guided.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources