Skip to main content
Glama

List a Term's cases

list_term_cases
Read-onlyIdempotent

List Supreme Court cases by Term in argument order, returning docket numbers for get_case and optional stage, date, and holding summaries.

Instructions

List the Supreme Court cases from a given Term, in order of argument.

Each line gives the docket number to pass to get_case. Where cases in the Term share one (Brown I and Brown II are both "No. 1"), the line gives the get_case call that reaches that case instead.

Args: term: The Term year - the year the Term began, e.g. "2014" for OT2014 (October 2014 through June/July 2015). limit: Maximum cases to list, 1-400 (default 60). include_summary: Also give each case's stage and date (decided, argued, or granted) and its one-line holding, or its question presented before a decision. About 300 characters more per case; the way to browse a Term by topic.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
termYes
limitNo
include_summaryNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior5/5

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

Goes well beyond the readOnly/idempotent/openWorld annotations by disclosing output shape (one line per case, docket number for get_case), ordering by argument, the duplicate-docket edge case (Brown I/II) and how lines route around it, and the roughly 300-character cost per case of include_summary. That is real operational context an agent cannot get from 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?

Front-loads the core purpose, then uses an Args block for the parameters; the prose is tight and each sentence adds information. The only minor waste is restating the limit default, which is already present in the schema.

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?

With no output schema, the description still explains the return format, ordering, and the gotcha around shared docket numbers, and it defines every parameter. An agent has everything needed to call this correctly and interpret the result.

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

Parameters5/5

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

Schema description coverage is 0%, so the description carries the full burden and does: 'term' is defined as the year the Term began with a concrete example ("2014" = OT2014), and 'limit' is bounded at 1-400 with a stated default. include_summary's effect and cost are explained rather than just named.

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 (list Supreme Court cases) with an explicit scope and ordering ('from a given Term, in order of argument'), which makes it distinguishable from get_case in practice. It does not name the closest sibling, search_cases, 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 Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clear context: this is the Term-browsing tool, and the description explains that include_summary is 'the way to browse a Term by topic'. It also tells the agent where the output goes next (docket numbers feed get_case), but it never states when to prefer search_cases instead, so there are no explicit exclusions.

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