Skip to main content
Glama

jean — Molecular Biology & Genomics

read_structure_consensus

Read-only

Read the consensus RNA secondary structure a Stockholm alignment states in its #=GC SS_cons line (WUSS, the notation Rfam and Infernal write), and measure how well the aligned rows actually support it. Reports the base pairs, what each unpaired column is (hairpin, bulge, multifurcation, external, insertion, local end), and per pair the fraction of rows whose two bases form a canonical or GU wobble pair. Use it to check whether a family's published structure is borne out by the sequences, or to pull a pair table out of an alignment for drawing. Reading only, and it REFUSES a Pfam alignment by name: SS_cons is two alphabets, and Pfam writes protein DSSP states in the same field, where C/H/E are pseudoknot letters in WUSS — parsing one as the other would invent base pairs for a protein.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYesthe alignment file's contents. Stockholm is the only format that records `#=GC` annotation, so a CLUSTAL or PHYLIP file is refused by name rather than returning an empty structure.
_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.
_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.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
rowsYesaligned sequences the support was measured over
pairsYesbase pairs the consensus states
rolesYesper column, what its glyph said: pair, hairpin, bulge, multifurcation, external, insertion or missing
columnsYesalignment width the annotation covers
supportYesper column, {observed, paired} or null where the column is unpaired — the denominator travels so a caller can say "no evidence" instead of drawing a zero
alphabetYeswhich alphabet the `SS_cons` line was written in: `wuss`, `protein-dssp`, or `unknown`
pairListYesevery pair as {i, j}, plus `knotLetter` when it came from a pseudoknot letter rather than a bracket
pairTableYesper column, its partner column or -1 — the same shape `pairTable` returns, so it wires straight into an arc drawing
medianSupportYesthe median, over pairs that any row spans, of the fraction of those rows forming a canonical or wobble pair. The panel's own headline number — a family whose structure is real sits high here, and a low value means the rows do not do what the annotation says

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already establish that this is a read-only, non-destructive, closed-world operation, and the description adds substantial context beyond that. It discloses that it refuses Pfam alignments by name and explains the alphabet-collision reason, which prevents a serious parsing error. It also describes what is reported, including column classifications and per-pair support fractions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the core read-and-measure action, then follows with reporting details, usage guidance, and a necessary format exclusion. The Pfam explanation is somewhat lengthy but every part prevents a specific misuse, so it largely earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema and rich annotations, the description covers the essential behavioral and input constraints an agent needs. It explains the accepted format, the refusal case, the reported outputs, and the biological rationale for the Pfam exclusion, leaving no significant gap for correct invocation.

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 schema already documents the parameters and the required `text` field. The description reinforces that `text` must be a Stockholm alignment but does not add syntax, format, or selection semantics for `_files` or `_subject` beyond what the schema provides.

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?

States a specific verb and resource: reads the consensus RNA secondary structure from a Stockholm alignment's `#=GC SS_cons` line and measures how well aligned rows support it. It distinguishes itself from siblings like `read_structure` and `fold_rna` by naming the exact field, notation, and support measurement it provides.

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

Usage Guidelines4/5

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

Clearly says when to use it: to check whether a published family structure is borne out by sequences, or to pull a pair table for drawing. It also gives explicit exclusions by format and source (Pfam, CLUSTAL, PHYLIP), but does not name specific alternative tools for those cases.

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