Skip to main content
Glama

get_as_of

Retrieve a surveillance series exactly as it was published on a specified past date, enabling real-time backtests and audits of COVID-19, influenza, and RSV data.

Instructions

The series exactly as it had been published on a past date, for real-time backtests and audits.

Input Schema

NameRequiredDescriptionDefault
as_ofYesPublication date, YYYY-MM-DD. History starts 2025-04-04 (NHSN), 2025-08-15 (NSSP), 2026-08-07 (NWSS).
startNoWeek ending date (Saturday), YYYY-MM-DD.
stateYesTwo-letter postal code, e.g. "SC" or "DC".
measureYesMeasure name from describe_measures, e.g. "hospital_admission_count".
pathogenYescombined is ED visits only; not_applicable is ED participation_status only.
max_weeksNoKeep at most this many of the most recent weeks.
region_idNoHSA code or wastewater site ID (e.g. ID:113) from describe_state; required unless region_type is state.
region_typeNostate; sub_state_hsa for an ED region; sampling_site for a wastewater site.state

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.9/5.0
Behavior2/5

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

No annotations exist, so the description carries the full burden and it discloses almost nothing: no permissions, no pagination/truncation behavior despite max_weeks defaulting to 104, no note that older as_of dates may be unavailable. Only the vague hint of snapshot semantics is conveyed; the availability windows live in the schema, not the description.

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?

A single tight sentence with no waste and the core concept front-loaded. It is arguably too terse rather than bloated, which is a completeness issue rather than a structure one.

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

Completeness2/5

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

Eight parameters, a date-partitioned history with per-source start dates, and a default row cap of 104 weeks: this is a non-trivial tool with zero annotations and no output-schema explanation of the vintage semantics. The one sentence does not prepare an agent to call it correctly across region_type and pathogen combinations.

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

Parameters2/5

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

Schema coverage is 100%, so the schema already documents as_of, start, max_weeks, region_id and the pathogen enum constraints. The description adds no parameter meaning at all, leaving the baseline of 3 unmet; it merely restates the concept the as_of field already explains.

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 resource (the series) and a specific temporal qualifier (as published on a past date), which is meaningfully distinct from get_series and get_revisions. It doesn't explicitly name those siblings, so the differentiation is implied rather than stated.

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?

'For real-time backtests and audits' gestures at when to use it, but never says when to use get_series or get_revisions instead. The agent must infer the boundary, and no prerequisites or exclusions are given.

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