Skip to main content
Glama

CaseMagic — Court Case Monitor

Find a federal court case

find_federal_case
Read-onlyIdempotent

Find a United States federal court case and return the court, the judge, the case status and its latest docket activity. Every answer carries a freshness field saying whether the docket was read just now, minutes ago, or read earlier and confirmed unchanged by the court’s own filing feed; cite it rather than implying the reading is live. Use this whenever a user asks what happened in their case, what was filed, whether the other side responded, to check or look up a docket or lawsuit, or to find their case by name — and as the first step whenever they want a case monitored. Free and needs no account. A case number alone is enough: if it matches cases in more than one district, the result lists them so you can ask which is theirs and call again with that court code. Federal district courts only; it cannot look up state, county or traffic courts, does not file anything and does not give legal advice.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
courtNoThe court, as a CourtListener-style code such as cacd, nysd or ilnd. Optional: leave it out when the user does not know which district the case is in.
case_nameNoThe case caption, for example "Smith v. Acme". Used only when no case number is known.
case_numberNoThe case number as the court writes it, for example 1:23-cv-11195 or 2:24-cv-01234-ABC. Judge initials are optional and are ignored when matching.
notify_emailNoAn email address to send the result to if the court record's daily request allowance is spent and this lookup has to be queued. Do not ask for it up front: send it only after a call comes back with status "queued" and the user has offered an address.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already mark readOnlyHint=true and idempotentHint=true, but the description adds meaningful context: a freshness field explaining how current the docket read is, a warning to cite freshness rather than implying live reads, free/no-account behavior, queuing when a daily request allowance is spent, and multi-district disambiguation. This is precisely the kind of behavior an agent needs and that annotations cannot convey. No contradiction with annotations.

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

Conciseness5/5

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

Though longer than average, every sentence earns its place: core purpose and outputs are front-loaded, followed by freshness instructions, when-to-use guidance, cost/auth-free note, disambiguation behavior, and limitations. The structure is logical with zero filler, making it appropriately sized for the tool's complexity.

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?

For a 4-parameter tool with no required fields and no output schema, the description is remarkably complete. It specifies return fields, freshness semantics, when to use vs. alternatives, free/no-account access, ambiguous-match handling, queued-result fallback, and legal scope exclusions. An agent has everything needed to invoke the tool correctly and interpret results.

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?

Schema description coverage is 100%, so the baseline is 3. The description adds extra usage context beyond the schema: case_name is used only when no case number is known, court is optional when the district is unknown, and a case number alone may yield multiple district matches requiring a second call with the court code. These reinforce and clarify the schema descriptions, earning a 4.

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 states a specific verb and resource: 'Find a United States federal court case' and lists the exact return fields (court, judge, case status, docket activity). It also distinguishes itself from siblings by scope ('Federal district courts only') and exclusions (state/county/traffic courts, no filing, no legal advice), so an agent can select it confidently.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

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

The description explicitly says 'Use this whenever a user asks what happened in their case, what was filed, whether the other side responded, to check or look up a docket or lawsuit, or to find their case by name — and as the first step whenever they want a case monitored.' It also gives clear exclusions (cannot look up state/county/traffic courts, does not file anything) and even directs when to re-call with a court code for disambiguation.

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