Skip to main content
Glama

allele_info

Read-onlyIdempotent

Look up one name in the pinned release and return what it is: assigned (G/P group, first release, confirmed status, WMDA serology, null flag), valid_prefix (member count and sample), group (a G or P group name: member count and sample), or deleted (successor). Reported shorthands are accepted as /v1/normalize accepts them — legacy spellings (A0101, Cw0702, Cw07:02), the XX code (A02:XX), two-field A02:01g, an optional HLA- prefix — and answer with the facts of the name they stand for plus resolves_to and a flag (deprecated_name, xx_code, lg_notation); an NMDP multiple allele code (A02:AB) returns mac_code, recognised but not expanded. Not found if the name has never existed in any release.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesAn HLA allele name of any era: exact name, lower-resolution prefix, deleted name, G/P group, legacy colon-less name, XX code or lg notation. An allele string only, never a patient name, medical record number or other identifier.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNo
noteNomac_code: what a multiple allele code is and why it is not expanded.
flagsNoPresent for a shorthand: deprecated_name (legacy spelling: colon-less A*0101, or the Cw locus label as in Cw*07:02), xx_code, lg_notation, or mac_code. Absent for a plain name.
detailNoPresent only when the name is not assigned in this release (and then no other field is).
statusNoassigned: an exact allele in this release; valid_prefix: a lower-resolution prefix of assigned alleles; group: a G or P group name (see group_type); deleted: withdrawn or renamed (see successor); mac_code: an NMDP multiple allele code (A*02:AB), recognised but not expanded or checked.
g_groupNoassigned: G group, or null.
ligandsNoClass I (A/B/C) ligand facts, aggregated over member alleles: 'ambiguous' when members disagree, 'unknown' when no residue data.
p_groupNoassigned: P group, or null.
releaseNoIPD-IMGT/HLA release every verdict was computed against.
serologyNoassigned: WMDA serologic equivalents by column (non-empty columns only).
confirmedNoassigned: confirmed (vs unconfirmed) allele.
successorNodeleted: the current name, or null if none.
group_typeNogroup: whether the name is a G group (identical exons 2+3 / exon 2) or a P group (identical peptide-binding domain).
attributionNoData attribution (IPD-IMGT/HLA, CC-BY-ND).
null_alleleNoassigned: true for an N (null, not expressed) allele.
resolves_toNoPresent when the name was a reported shorthand (legacy colon-less or Cw spelling, XX code, lg notation): the current-style name it stands for, whose facts this result carries.
first_releaseNoassigned: first release the exact name appeared in.
members_countNovalid_prefix / group: number of assigned alleles under the prefix or in the group.
members_sampleNovalid_prefix / group: up to 10 member alleles.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • changedOutput schema / properties / flags / description
      Previous value: -"Present for a shorthand: deprecated_name (legacy colon-less name), xx_code, lg_notation, or mac_code. Absent for a plain name."New value: +"Present for a shorthand: deprecated_name (legacy spelling: colon-less A*0101, or the Cw locus label as in Cw*07:02), xx_code, lg_notation, or mac_code. Absent for a plain name."
    • changedOutput schema / properties / resolves_to / description
      Previous value: -"Present when the name was a reported shorthand (legacy colon-less, XX code, lg notation): the current-style name it stands for, whose facts this result carries."New value: +"Present when the name was a reported shorthand (legacy colon-less or Cw spelling, XX code, lg notation): the current-style name it stands for, whose facts this result carries."
  2. Changed6 schema fields changed
    • changedInput schema / properties / name / description
      Previous value: -"Exact HLA allele name, a lower-resolution prefix, or a deleted name. An allele string only, never a patient name, medical record number or other identifier."New value: +"An HLA allele name of any era: exact name, lower-resolution prefix, deleted name, G/P group, legacy colon-less name, XX code or lg notation. An allele string only, never a patient name, medical record number or other identifier."
    • addedOutput schema / properties / flags
      Added value: +{
      +  "description": "Present for a shorthand: deprecated_name (legacy colon-less name), xx_code, lg_notation, or mac_code. Absent for a plain name.",
      +  "items": {
      +    "type": "string"
      +  },
      +  "type": "array"
      +}
    • addedOutput schema / properties / note
      Added value: +{
      +  "description": "mac_code: what a multiple allele code is and why it is not expanded.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / resolves_to
      Added value: +{
      +  "description": "Present when the name was a reported shorthand (legacy colon-less, XX code, lg notation): the current-style name it stands for, whose facts this result carries.",
      +  "type": "string"
      +}
    • changedOutput schema / properties / status / description
      Previous value: -"assigned: an exact allele in this release; valid_prefix: a lower-resolution prefix of assigned alleles; group: a G or P group name (see group_type); deleted: withdrawn or renamed (see successor)."New value: +"assigned: an exact allele in this release; valid_prefix: a lower-resolution prefix of assigned alleles; group: a G or P group name (see group_type); deleted: withdrawn or renamed (see successor); mac_code: an NMDP multiple allele code (A*02:AB), recognised but not expanded or checked."
    • changedOutput schema / properties / status / enum
      Previous value: -[
      -  "assigned",
      -  "valid_prefix",
      -  "group",
      -  "deleted"
      -]New value: +[
      +  "assigned",
      +  "valid_prefix",
      +  "group",
      +  "deleted",
      +  "mac_code"
      +]
  3. Changed5 schema fields changed
    • addedOutput schema / properties / group_type
      Added value: +{
      +  "description": "group: whether the name is a G group (identical exons 2+3 / exon 2) or a P group (identical peptide-binding domain).",
      +  "enum": [
      +    "G",
      +    "P"
      +  ],
      +  "type": "string"
      +}
    • changedOutput schema / properties / members_count / description
      Previous value: -"valid_prefix: number of assigned alleles under the prefix."New value: +"valid_prefix / group: number of assigned alleles under the prefix or in the group."
    • changedOutput schema / properties / members_sample / description
      Previous value: -"valid_prefix: up to 10 member alleles."New value: +"valid_prefix / group: up to 10 member alleles."
    • changedOutput schema / properties / status / description
      Previous value: -"assigned: an exact allele in this release; valid_prefix: a lower-resolution prefix of assigned alleles; deleted: withdrawn or renamed (see successor)."New value: +"assigned: an exact allele in this release; valid_prefix: a lower-resolution prefix of assigned alleles; group: a G or P group name (see group_type); deleted: withdrawn or renamed (see successor)."
    • changedOutput schema / properties / status / enum
      Previous value: -[
      -  "assigned",
      -  "valid_prefix",
      -  "deleted"
      -]New value: +[
      +  "assigned",
      +  "valid_prefix",
      +  "group",
      +  "deleted"
      +]
  4. Changed1 schema field changed
    • changedInput schema / properties / name / description
      Previous value: -"Exact allele, prefix, or deleted name."New value: +"Exact HLA allele name, a lower-resolution prefix, or a deleted name. An allele string only, never a patient name, medical record number or other identifier."
  5. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so safety is covered. The description adds genuine behavioral value on top: the shape of each result branch, the accompanying resolves_to and flag fields (deprecated_name, xx_code, lg_notation), that MAC codes are recognised but not expanded, and the not-found condition.

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

Conciseness3/5

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

The purpose and the resolution branches are front-loaded, but the body is a single dense run-on packed with nested parentheticals and em-dash asides, which hurts scanability. Most clauses carry information, but the lack of sentence breaks costs it.

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?

An output schema exists, so return values need not be enumerated, yet the description still covers the resolution branches, flags, MAC-code caveat and the not-found case. Combined with full parameter coverage and annotations, an agent has everything needed to call this correctly.

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?

With one param at 100% schema coverage the baseline is 3, but the description goes beyond the schema by detailing accepted legacy spellings, XX codes, lg notation, HLA- prefixes and MAC codes, and by clarifying what the resolved answer carries. It does not contradict the schema's explicit warning against patient identifiers.

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 scope ('look up one name in the pinned release and return what it is') and then enumerates the four possible resolutions (assigned, valid_prefix, group, deleted). This is far more specific than the sibling names alone and lets an agent tell it apart from normalize_allele and validate_gl_string.

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 description explains which name forms are accepted and ties them to /v1/normalize's behaviour, which implies usage context, but it never states when to choose this tool over siblings like normalize_allele or validate_gl_string, nor any exclusion beyond 'never existed in any release'.

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.