Skip to main content
Glama
chrischall

maxpreps-mcp

by chrischall

Get a MaxPreps team schedule and scores

maxpreps_get_schedule
Read-onlyIdempotent

Retrieve a high school team's season schedule with scores, results, and playoff appearances. Filter by completed/upcoming games, season, and include hidden or tournament contests.

Instructions

Every game for a team season, with the result and both scores. Scores are oriented team-vs-opponent (teamScore/opponentScore); the raw resultString MaxPreps renders is winner-first, so a loss reads "L 20-13" even when the team scored 13. Soft-deleted contests are hidden by default, matching the site. Before opening day a current season legitimately has no results — check a prior season. Also returns any playoff or championship tournaments the season fed into. Read-only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
teamYesTeam site path or URL, e.g. nc/charlotte/myers-park-mustangs/football
playedNoFilter to games with a result, games without one, or bothall
seasonNoSeason label, e.g. 25-26. Omit for the current season.
includeDeletedNoInclude soft-deleted contests the site hides
includeTournamentsNoInclude playoff/championship tournament entries the schedule references

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.0.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. First observedv0.2.0

TDQS

A4.1/5.0
Behavior5/5

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

The description adds substantial behavioral detail beyond the annotations: score orientation (team-vs-opponent), the winner-first rendering of `resultString`, the default hiding of soft-deleted contests, the season-caveat for opening day, and the inclusion of playoff tournaments. These details directly affect interpretation of the return data and are not provided by the annotations, which only declare read-only/idempotent/open-world hints.

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 a compact paragraph that front-loads the core purpose in the first sentence, then packs important caveats and behavioral notes efficiently. While it is slightly dense, every sentence adds value and there is no fluff or repetition, earning a strong score without being minimalist.

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?

Given the tool's complexity (5 parameters, no output schema), the description covers the key gotchas an agent needs: score orientation, result-string ambiguity, deleted-contest defaults, season timing, and tournament inclusion. It does not explicitly describe the `played` filter behavior beyond the schema, and error cases are not mentioned, but overall the description is sufficiently complete for a 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 coverage is 100%, so all five parameters are already documented with types, defaults, and descriptions. The description mentions 'soft-deleted contests are hidden by default' and 'also returns any playoff or championship tournaments,' but these merely restate the existing defaults of `includeDeleted` and `includeTournaments`. It does not add new meaning or syntax for parameters beyond what the schema already provides, so the baseline of 3 is appropriate.

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 opens with 'Every game for a team season, with the result and both scores,' which names a specific verb and resource and clearly differentiates it from sibling tools like maxpreps_get_team or maxpreps_get_standings. It further specifies the scope (team season) and the inclusion of tournament entries, leaving no ambiguity about what the tool returns.

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 gives a useful context cue ('Before opening day a current season legitimately has no results — check a prior season') but does not explicitly state when to use this tool versus alternatives or name any sibling tool. The usage context is implied by the tool name and description rather than stated as a decision rule, so it stays at a mid-range score.

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