Skip to main content
Glama

discover_reference_stability

Read-only

Ask whether the genes used to normalize expression (reference or housekeeping genes, such as GAPDH, ACTB or B2M) are more or less variable across human tissues than genes of the same abundance, on GTEx v8 median expression. Each candidate's standard deviation of log2(TPM + pseudocount) across the chosen tissues is ranked among the genes nearest it in mean expression (1,000 by default, from the 19,107 protein-coding genes GTEx measures), giving one p for 'more variable than its peers' and one for 'steadier', each corrected across the candidates. The four rankers the field runs (geNorm M, NormFinder, BestKeeper, comparative ΔCt, and RefFinder's consensus) also order the candidates against each other, reading the tissues as samples. A ranker always finds a most stable gene; the null says whether any candidate is stable at all. Tissue medians hide the variation between people within a tissue, so this answers 'across tissues', not 'across samples of one tissue'.

Input Schema

NameRequiredDescriptionDefault
alphaNofalse discovery rate at which a candidate is called more variable, or steadier, than its peers.
genesYesthe candidate reference genes, as current HGNC symbols (GAPD is GAPDH).
_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.
tissuesNoGTEx tissue names to compare across, three or more; empty means all 54.
_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.
correctionNoBenjamini–Hochberg (independent or positively dependent tests) or Benjamini–Yekutieli (any dependence; less power). Values: BH (Benjamini–Hochberg), BY (Benjamini–Yekutieli).BH
neighboursNohow many genes nearest in mean expression each candidate is ranked among. The smallest p it can give is 1 / (neighbours + 1).
pseudocountNoadded to TPM before the logarithm, so a tissue with no expression has one. Advanced.

Output Schema

NameRequiredDescriptionDefault
resultYesthe full result
stableYesthe candidates steadier than their expression peers at the chosen false discovery rate
rankersYesgeNorm M, NormFinder, BestKeeper, comparative ΔCt and the RefFinder consensus over the candidates
unstableYesthe candidates more variable across tissues than their expression peers at the chosen false discovery rate
candidatesYesevery candidate's mean and SD of log2 expression, the expression band of its peers, its percentile among them and both p and q

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already cover readOnlyHint and non-destructiveness, so the bar is lower, but the description adds real interpretive context: that 'a ranker always finds a most stable gene' so only the null tells you if a candidate is actually stable, and that tissue medians hide within-tissue inter-individual variation. These are genuine behavioral caveats not present in the structured fields.

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 core question is front-loaded and almost every clause carries information. It is a single dense block with very long sentences, and it contains a small internal slip ('four rankers' followed by a list of five), which slightly undercuts readability.

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?

For an 8-parameter, nested-schema, output-schema-bearing tool, the description supplies the statistical model, the null/ranker distinction, and the tissue-vs-sample limitation. With an output schema present it need not explain return values, and the remaining gap (which sibling to use for pure ranking) is minor.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description earns an extra point by giving semantics the schema does not, such as the 1,000-neighbour default, the 19,107 protein-coding background, the FDR correction applying across candidates, and the smallest attainable p (1/(neighbours+1)). It stops short of mapping these to individual named parameters.

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 states a precise, testable question: whether reference/housekeeping genes (GAPDH, ACTB, B2M) are more or less variable across tissues than abundance-matched peers on GTEx v8. This is a specific verb+resource that an agent can distinguish from the neighboring rank_reference_genes and discover_reference_concordance tools. The statistical framing (p for 'more variable' vs 'steadier') pins down exactly what is being asked.

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?

It gives an explicit scope exclusion — 'this answers across tissues, not across samples of one tissue' — and explains when the null hypothesis matters versus the rankers. However, it never names the sibling tools (e.g. rank_reference_genes) or says which alternative to pick, so routing is left partly to inference.

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