Skip to main content
Glama

caselaw_get_case

Read-onlyIdempotent

Fetch one judgment by id.

section='summary' (default) returns metadata + the headnote (plain-language summary, the
laws/provisions referred, and keyword tags) — read this first to judge relevance cheaply.
section='full' additionally returns the judgment text; a long judgment arrives in its first part and says so.
Long judgment: section='outline' gives a map (the judge's paragraph numbers, each separate opinion, the order),
then paras='41-55' reads exactly those paragraphs (paras='2:3-5' = opinion 2, paragraphs 3-5, where separate
opinions each restart their numbers), find='words' returns the paragraphs of this judgment that
match, and start=N continues from a character position. These return the court's own words, never a summary.

Input Schema

NameRequiredDescriptionDefault
findNoWords to look for inside this one judgment: returns the matching paragraphs, with their numbers
parasNoThe judge's own paragraph numbers to read, e.g. '41-55' or '7'; '2:3-5' = opinion 2, paragraphs 3-5 ('notes' = the footnotes)
startNoRead on from this character position (when a reply says More follows)
case_idYesNumeric judgment id (from a search/lookup/graph result)
sectionNo'summary' = metadata + headnote (cheap); 'outline' = a map of a long judgment; 'full' = + judgment textsummary
response_formatNomarkdown

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / paras / description
      Previous value: -"The judge's own paragraph numbers to read, e.g. '41-55' or '7' ('notes' = the footnotes)"New value: +"The judge's own paragraph numbers to read, e.g. '41-55' or '7'; '2:3-5' = opinion 2, paragraphs 3-5 ('notes' = the footnotes)"
  2. Changed5 schema fields changed
    • addedInput schema / properties / find
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 300,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Words to look for inside this one judgment: returns the matching paragraphs, with their numbers",
      +  "title": "Find"
      +}
    • addedInput schema / properties / paras
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "The judge's own paragraph numbers to read, e.g. '41-55' or '7' ('notes' = the footnotes)",
      +  "title": "Paras"
      +}
    • changedInput schema / properties / section / description
      Previous value: -"'summary' = metadata + headnote (cheap); 'full' = + judgment text"New value: +"'summary' = metadata + headnote (cheap); 'outline' = a map of a long judgment; 'full' = + judgment text"
    • changedInput schema / properties / section / enum
      Previous value: -[
      -  "summary",
      -  "full"
      -]New value: +[
      +  "summary",
      +  "full",
      +  "outline"
      +]
    • addedInput schema / properties / start
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "integer"
      +    },
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Read on from this character position (when a reply says More follows)",
      +  "title": "Start"
      +}
  3. Changed9 schema fields changed
    • removedInput schema / $defs
      Removed value: -{
      -  "Fmt": {
      -    "enum": [
      -      "markdown",
      -      "json"
      -    ],
      -    "title": "Fmt",
      -    "type": "string"
      -  },
      -  "Section": {
      -    "enum": [
      -      "summary",
      -      "full"
      -    ],
      -    "title": "Section",
      -    "type": "string"
      -  }
      -}
    • removedInput schema / properties / response_format / $ref
      Removed value: -"#/$defs/Fmt"
    • addedInput schema / properties / response_format / enum
      Added value: +[
      +  "markdown",
      +  "json"
      +]
    • addedInput schema / properties / response_format / title
      Added value: +"Response Format"
    • addedInput schema / properties / response_format / type
      Added value: +"string"
    • removedInput schema / properties / section / $ref
      Removed value: -"#/$defs/Section"
    • addedInput schema / properties / section / enum
      Added value: +[
      +  "summary",
      +  "full"
      +]
    • addedInput schema / properties / section / title
      Added value: +"Section"
    • addedInput schema / properties / section / type
      Added value: +"string"
  4. Changed1 schema field changed
    • changedInput schema / properties / section / description
      Previous value: -"'summary' = metadata + AI headnote (cheap); 'full' = + judgment text"New value: +"'summary' = metadata + headnote (cheap); 'full' = + judgment text"
  5. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Beyond the read-only annotations, the description discloses important behavioral traits: summary is a cheap relevance check, full text may arrive only in its first part with an explicit signal, outline maps opinions and paragraph numbering, and paras/find return the court's own words rather than summaries. These details materially affect how the agent should call and interpret the tool.

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 purpose is front-loaded in one sentence, followed by a compact explanation of section modes and the long-judgment tools. It is dense and useful, though the long-judgment sentence bundles several parameters together and could be slightly easier to scan.

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?

Given six parameters, multiple enum modes, and the existence of an output schema, the description covers the full retrieval workflow: cheap summary first, full text, outline for long judgments, paragraph ranges, keyword search, and continuation. Nothing essential for correctly invoking the tool appears to be missing.

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 description coverage is already 83%, and the schema itself documents the section enum, paras formats such as '41-55' and '2:3-5,' and start as a continuation character position. The description reinforces those meanings and the workflow around them, but adds little syntax-level or semantic detail 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 a precise verb and resource: 'Fetch one judgment by id.' That immediately distinguishes it from sibling tools such as caselaw_search and caselaw_get_citations, which are listed separately and imply broader or different operations.

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?

It explicitly recommends reading section='summary' first 'to judge relevance cheaply,' explains when to use section='full,' and describes a clear workflow for long judgments via section='outline' then paras, find, or start. This gives the agent strong when-to-use guidance and names the practical alternatives within the same tool.

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