Skip to main content
Glama

jean — Molecular Biology & Genomics

population_site_stats

Read-only

Per-site and per-sample genotype statistics of a call set, for all samples or one population: allele counts and frequencies, called and missing calls, heterozygous and homozygous counts, observed and expected heterozygosity and the inbreeding coefficient F (scikit-allel), and the exact Hardy–Weinberg test with its excess-heterozygosity tail (bcftools +fill-tags). Validated on every site and sample of 1000 Genomes phase 3 APOL1 in 32 groups.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
vcfYesthe call set as VCF text (a .vcf, or a .vcf.gz already decompressed); every record's GT is read, ploidy 2.
groupNocompute over this group's samples only; empty is every sample.
_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.
groupByNowhich column of the sample table groups the samples; empty is its first grouping column.
_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.
populationsNoa sample table: a header row with a `sample` column and one or more grouping columns (tab-separated, as 1000 Genomes' .panel). Samples it does not list belong to no group.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
sitesYesone row per record: chrom, pos, ref, alts, allele counts and frequencies, AN, called, missing, het, homRef, homAlt, ho, he, f, hwe and excHet per ALT
samplesYesone row per sample: its group, called, missing, het, homAlt and the missing and het rates
summaryYessites, samples, segregating, biallelic and multiallelic sites, mean Ho and He, and the sites with the smallest HWE p-values

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so safety is covered; the description goes beyond them by disclosing the underlying implementations (scikit-allel for the statistics, bcftools +fill-tags for the HWE test), the ploidy-2 assumption, and provenance via validation on 1000 Genomes phase 3 APOL1 across 32 groups. It stops short of stating performance/scale characteristics or output shape details, so it is useful added context rather than a complete behavioral profile.

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 purpose and the full statistic inventory are front-loaded in one dense sentence, with a short second sentence for validation provenance. Every clause carries content, though the enumeration is long enough that key constraints (ploidy 2, group scoping) are buried mid-sentence rather than signposted.

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?

An output schema exists, so return values need not be explained, and the description still covers what is computed, the ploidy-2 expectation, and the all-samples-vs-one-group behavior. For a 6-parameter tool with nested objects it is nearly adequate; the missing piece is any guidance on choosing among the other population-genetics siblings.

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 baseline is 3. The description echoes the group semantics ('for all samples or one population') but adds no syntax or format detail beyond the schema, which already explains vcf, group, groupBy, and populations; no parameter meaning is enriched.

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?

States a specific verb+resource: per-site and per-sample genotype statistics computed from a call set, and enumerates the exact statistics produced (allele counts/frequencies, call rates, het/hom counts, Ho/He, F, HWE with excess-het tail). It never names or distinguishes itself from adjacent population tools such as population_fst, population_ancestry, linkage_disequilibrium, or variant_call_summary, so the sibling differentiation that would earn a 5 is absent.

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?

Usage is only implied: you supply a VCF call set and optionally restrict to one group's samples or supply a populations sample table. There is no explicit statement of when to reach for this tool rather than population_fst/ancestry/LD, nor any 'when not to use' or prerequisite guidance, and the scoping sentence 'for all samples or one population' is the only routing signal.

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