US Case Law

live LegalGovernment

US case law — search court opinions and dockets from the Supreme Court, federal circuit and district courts, and state appellate and supreme courts, plus PACER/RECAP docket archives. The case-law counterpart to the statute packs (us-code for federal statutes, the state code packs for state ones): statutes say what the rule is, these say how courts have applied it. Sourced from CourtListener (Free Law Project), keyless.

10 tools
0ms auth
free tier 50 calls/day

Tools

search_opinions

Search US court opinions — 8.3 million of them, 71% state case law, with no API key and no rate limit. Matches the case name, the judge, and (where CourtListener recorded one) a nature-of-suit/disposi

No parameters required.

Try it
search_dockets

Search US court dockets by keyword. Covers PACER and RECAP archives. Each result carries docket_id, case name, court, filing and termination dates, docket number, nature of suit, the cause of action,

No parameters required.

Try it
search_case_law

Search the FULL TEXT of US court opinions by subject matter — "qualified immunity for police dogs", "securities fraud scienter pleading standard". Searches the full text of CourtListener opinions with

No parameters required.

Try it
find_case

Find a US court case BY NAME and get its citations, filing date, judges and how often it has been cited. Searches 8.3 million opinions across 3,361 courts — no API key, no rate limit. Ranked by citati

No parameters required.

Try it
lookup_citation

Resolve a US reporter citation such as "410 U.S. 113" or "347 U.S. 483" to the case it refers to, with name, filing date, judges and citation count. No API key, no rate limit. Use when a brief, opinio

No parameters required.

Try it
list_case_opinions

List every opinion filed in one case (cluster) — majority, concurrences and dissents — with the opinion_id needed to read each one via get_opinion. No API key, no rate limit. Use after find_case or lo

No parameters required.

Try it
get_opinion

Get the FULL TEXT of a US court opinion by its CourtListener opinion ID (the opinion_id returned by search_opinions). Covers 8.3 million opinions, 71% state case law — no API key needed. Returns the o

No parameters required.

Try it
list_docket_filings

List the filings on a US FEDERAL district or bankruptcy court docket — every complaint, motion, order and exhibit RECAP has recorded for that case, in filing order, with the document id, entry number,

No parameters required.

Try it
get_docket_filing

Get one filing from a US federal court docket by its document id — the entry description as the clerk wrote it, the filing date, page count, the docket_id it belongs to, a text excerpt where the docum

No parameters required.

Try it
search_court_filings

Search the TEXT of US federal court filings — complaints, motions, briefs, orders and exhibits from PACER as archived in RECAP, roughly 9.7 million documents. Use this to find what was actually argued

No parameters required.

Try it

Test with curl

The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.

List available tools
bash
curl -X POST https://gateway.pipeworx.io/court-listener/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Call a tool
bash
curl -X POST https://gateway.pipeworx.io/court-listener/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"search_opinions","arguments":{}}}'

Use with the SDK

Install @pipeworx/sdk to call tools from any TypeScript/Node project.

TypeScript
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("search_opinions", {});
ask_pipeworx
// Or ask in plain English:
const answer = await px.ask("us case law — search court opinions and dockets from the supreme court, federal circuit and district courts, and state appellate and supreme courts, plus pacer/recap docket archives");