Court Listener logo

Court Listener

Searches US case law, opinions, dockets, filings, and patent references through CourtListener over MCP.

Install Court Listener

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "court-listener": {
      "command": "npx",
      "args": [
        "-y",
        "@pipeworx/mcp-court-listener"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

Court Listener MCP server connects AI agents to Free Law Project's CourtListener corpus of US opinions, dockets, and RECAP filings. It supports case-name and citation lookup, opinion retrieval, docket searches, filing inspection, and patent references extracted from patent litigation. Basic case lookup and opinion text require no authentication, while topic and docket searches are upstream and throttled. Reach for it when an agent needs structured legal research across state, federal, territorial, military, or tribal court records.

Use cases

  • Find a case by name or reporter citation
  • Retrieve the full text of a judicial opinion
  • Trace a docket from search through individual filings
  • Search motions, briefs, and orders separately from opinions
  • Extract asserted patents from patent litigation records

Key features

  • Case-name and citation lookup
  • Full opinion text retrieval
  • Opinion, docket, and filing search
  • Docket filing and PDF retrieval
  • Patent-number extraction with optional USPTO metadata
  • Relaxed matching for abbreviated case names

Tools10

What Court Listener lets your agent do. Expand a tool for its parameters.

Self-reported~201 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 3d ago

Recent health check succeeded.

8/8 checks healthy over the last 51d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 4d ago via OSV.dev · @pipeworx/mcp-court-listener (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

npm downloads1kPackage downloads in the last 30 days.
Last commit4d agoMost recent push to the default branch.
Tools exposed10Callable tools this server registers over MCP.

How Court Listener works

What Court Listener MCP server does

Court Listener MCP server exposes Free Law Project's CourtListener data through MCP tools for researching US case law and litigation records. The corpus contains approximately 8.3 million opinions from 3,361 courts, with coverage reaching back to 1761. State materials make up most of the collection, alongside federal, territorial, military, and tribal opinions.

The server separates judicial opinions from party filings. Opinion tools help identify what a court decided, while filing tools retrieve docket activity such as motions, briefs, orders, and other submitted documents. A patent-focused tool cross-references patent litigation with patent numbers and, when configured, USPTO metadata.

How it works

For ordinary case research, use find_case when you know a case name, or lookup_citation when you have a reporter citation. Then pass the identified case to list_case_opinions to distinguish majority, concurring, and dissenting opinions, and use get_opinion for the complete text. Search results are ranked by citation count within CourtListener's corpus.

search_opinions supports searches by name, judge, category, or topic. It normally favors a local mirror, while a query with a specific court code searches upstream. Search results can include an excerpt from the most-cited matching case's lead opinion. Messy case names may receive a relaxed match after abbreviations, citation scaffolding, and corporate suffixes are removed; callers should verify the returned case name.

For litigation records, the intended sequence is search_dockets, list_docket_filings, and get_docket_filing. Docket tools use CourtListener docket_id values; a PACER case number does not resolve directly. Filing searches operate through CourtListener's upstream search path rather than the opinion mirror.

Setup and configuration

Basic case lookup and opinion text work without an API key or signup. Topic searches and docket-related tools are subject to CourtListener throttling; a free Free Law Project token can lift that restriction.

find_case_patents can return asserted patent numbers without additional configuration. Setting PLATFORM_USPTO_KEY adds USPTO titles, statuses, grant dates, and first-inventor information to those numbers. The key is the same USPTO Open Data Portal credential used by the related patents pack.

Tools and capabilities

  • find_case: resolve a case by its name.
  • lookup_citation: find a case from a reporter citation.
  • list_case_opinions: enumerate majority, concurring, and dissenting opinions.
  • get_opinion: retrieve the full text for an opinion ID.
  • search_opinions: search opinions by topic, name, judge, category, or court.
  • search_dockets: search docket-level records.
  • list_docket_filings: list filings associated with a CourtListener docket ID.
  • get_docket_filing: retrieve a filing and its PDF when one is available.
  • search_court_filings: search filing text rather than opinion text.
  • find_case_patents: identify patent numbers and defendants in a patent case, with optional USPTO metadata.

Limitations and notes

Docket and topic searches are upstream and throttled. Without a token, filing tools have a budget of roughly 125 requests per day; opinion tools are unaffected. A docket entry may exist without a PDF because nobody has purchased that document through PACER. Patent extraction only finds patent references present in indexed docket text or available document text, so it is not a complete substitute for reviewing every complaint or filing.

Responses include a snapshot_date, and newer opinions may fall through to upstream search. About 14.2% of the opinion corpus is OCR-derived, and responses identify those records with extracted_by_ocr. date_created records when CourtListener received a record, not when the court filed or issued it; use date_filed for the ruling date. Citation counts measure references within CourtListener's corpus rather than universal legal importance.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Court Listener

Court Listener is an MCP server that connects AI agents to Free Law Project's CourtListener data, including US opinions, dockets, and RECAP filings. Its main tools find cases by name or citation, retrieve opinion text, search dockets and filings, and cross-reference patent litigation with asserted patent numbers and optional USPTO metadata.

The server is used through an MCP-compatible client, but its installation command and client configuration are not specified here. Basic case lookup and opinion text require no CourtListener key; optional credentials affect upstream search throttling and USPTO metadata.

No, basic case lookup and opinion text work without authentication. Topic searches and docket-related tools are subject to CourtListener throttling, which a free Free Law Project token can lift; `find_case_patents` also accepts the optional `PLATFORM_USPTO_KEY` for USPTO metadata.

Search for the docket with `search_dockets`, list its entries using `list_docket_filings`, and retrieve a specific document with `get_docket_filing`. These tools require a CourtListener `docket_id`, and a filing may have no PDF even when the docket entry is real.

Yes, `find_case_patents` extracts asserted patent numbers from indexed RECAP docket and document text and associates them with defendants from the case caption. With `PLATFORM_USPTO_KEY`, results can also include patent titles, status, grant dates, and first inventors.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewCourt Listener AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/court-listener?style=directory)](https://allmcps.com/mcp/court-listener)
HTML Embed
<a href="https://allmcps.com/mcp/court-listener"><img src="https://allmcps.com/api/badge/court-listener?style=directory" alt="Court Listener on AllMCPs" /></a>