CourtListener MCP Server: Setup Guide for US Legal Research

A CourtListener MCP server is a Model Context Protocol bridge that lets Claude, Cursor, or VS Code search 10M+ US federal and state court opinions, PACER dockets, and the eCFR through tool calls instead of hallucinated case law. Add one config block, paste a free CourtListener token, and your AI editor researches against real court records. Below: the working config for each editor, the 19 tools, a query with its real output, and how the hosted option compares to CourtListener's own official server (launched May 2026).

TL;DR

  • A legal research MCP server built on CourtListener gives any compatible AI editor (Claude Desktop, Cursor, VS Code Copilot, Windsurf) one-config access to 10M+ federal and state opinions, dockets, the RECAP PACER archive, and the eCFR.
  • Two routes: the official CourtListener MCP server at mcp.courtlistener.com (OAuth, May 2026), or a hosted/self-hostable open-source server with bring-your-own-key auth. This guide covers both and tells you which fits.
  • The one-sentence difference from a statutes MCP: this server is case law and dockets; a statutes MCP handles US Code, CFR, state codes, Federal Rules, and Executive Orders.
  • BYOK with your own CourtListener token. Calls hit your quota, not the host's. Self-host if you go past prototype volume.
Quick check

How many tools does the open-source CourtListener MCP server expose?

Part of our MCP and developer guide series.

For related MCP / API / developer coverage, see CanLII MCP Server: Canadian Legal Research, How to Use the CourtListener API: Auth, Endpoints, Rate Limits, and Legal Research in Cursor and Claude Code with MCP.

This guide applies the MCP pattern to CourtListener's open US case-law data: connect an MCP server to your AI editor, ask legal questions, get grounded answers.

The hosted endpoint wraps the CourtListener MCP server with streamable HTTP transport and bring-your-own-key auth. You don't need to install anything or manage Docker.

Grab a free CourtListener token, drop it in your editor config alongside the URL, and start researching US case law.

Hosted endpoint: https://courtlistener-mcp.vaquill.ai/mcp/

Authentication: Bring-your-own-key. Send your CourtListener token in the X-CourtListener-Token header on every request.

The server forwards it to courtlistener.com, so calls hit your quota, not the host's. We never store your key. Get a free token at courtlistener.com/help/api/rest.

Source: github.com/Vaquill-AI/courtlistener-mcp

Official vs Open-Source CourtListener MCP: Which to Use

Since May 12, 2026, the Free Law Project ships its own first-party CourtListener MCP server at mcp.courtlistener.com (free.law announcement, May 2026). It uses OAuth: you connect it from Claude's connector directory and grant access to your CourtListener account, no token-pasting. Pick the route that matches how you work.

Official server (mcp.courtlistener.com)Open-source server (this guide)
AuthOAuth, connect from the client's connector directoryBring-your-own-key header, or self-host with your key
SetupClick-to-connect in Claude/ChatGPTOne config block in any MCP client
Self-hostNoYes (Docker, docker-compose up -d)
ToolsSearch, PACER, citations, oral args, judges, alerts19 tools (see below); no alerts
Customize the tool surfaceNoYes, you own the code
Best forQuickest path inside Claude or ChatGPTCursor/VS Code/Windsurf, pinned tool set, or production self-hosting

What Is CourtListener?

CourtListener product screenshot

CourtListener is a free legal research platform run by the Free Law Project, a US nonprofit founded in 2010.

The Free Law Project's mission is to make the legal system more accessible and transparent by providing free access to court data that has historically been locked behind paywalls or buried in difficult-to-access government systems.

CourtListener indexes over 10 million court opinions from federal and state courts dating back to the 18th century, provides access to PACER docket data through the RECAP archive (containing tens of millions of documents), and hosts the eCFR (Electronic Code of Federal Regulations). It covers over 400 jurisdictions, from the US Supreme Court down to state trial courts.

CourtListener's API v4 is free for non-commercial and research use. The hosted MCP server wraps this API into 19 MCP tools that any compatible AI editor can call.

Why CourtListener Matters: The PACER Problem

The US federal court system uses PACER (Public Access to Court Electronic Records) to provide public access to court filings. Despite being a public records system, PACER charges $0.10 per page for documents, which adds up quickly when a single docket can contain hundreds of filings.

This creates a financial barrier to legal transparency: the very court records that should be freely accessible to the public sit behind a paywall.

The Free Law Project created RECAP (RECAP Archive of Court filings, "PACER" spelled backwards) to solve this. RECAP works through a browser extension: when any RECAP user downloads a PACER document, it's automatically uploaded to the RECAP archive and made freely available to everyone.

Over the years, this crowdsourced approach has built an archive of tens of millions of PACER documents, all searchable through CourtListener and now accessible through this MCP server via the search_recap_documents and search_dockets_with_documents tools.

The eCFR: Federal Regulations in One Place

The eCFR (Electronic Code of Federal Regulations) is the authoritative, up-to-date version of all federal regulations organized across 50 titles. Unlike the printed CFR (which is updated annually), the eCFR is updated daily as agencies publish new rules in the Federal Register.

CourtListener's integration means you can research both the case law interpreting a regulation and the regulation itself through a single platform.

Understanding the US Court System

The tools in this MCP server map to specific levels of the US court hierarchy. Here's how the system is structured:

Federal Courts

LevelCourtsWhat They Handle
Supreme Court (SCOTUS)1 court, 9 justicesFinal appellate jurisdiction over all federal and state courts on constitutional and federal law questions. Hears ~70 cases per year on certiorari.
Circuit Courts of Appeals13 circuits (1st-11th, D.C., Federal)Intermediate appellate courts. Each circuit covers multiple states. The D.C. Circuit is particularly important for administrative law; the Federal Circuit handles patent appeals.
District Courts94 districts across 50 states + territoriesFederal trial courts. Handle civil cases involving federal questions or diversity jurisdiction, federal criminal cases, and bankruptcy (through bankruptcy judges).
Specialized CourtsTax Court, Court of International Trade, Court of Federal ClaimsHandle specific subject matters at the federal level.

State Courts

Each state has its own court system, typically with three tiers: a supreme court (called the Court of Appeals in New York), intermediate appellate courts, and trial courts. CourtListener covers appellate decisions from all 50 states.

How Citations Work

US legal citations reference specific reporter volumes where a decision was published. Understanding the format helps you use the citation tools effectively:

  • 410 U.S. 113 = Volume 410 of the United States Reports, page 113 (Roe v. Wade)
  • 556 U.S. 662 = Volume 556 of the United States Reports, page 662 (Ashcroft v. Iqbal)
  • 84 F.4th 1234 = Volume 84 of the Federal Reporter, Fourth Series, page 1234 (a circuit court opinion)
  • 625 F. Supp. 3d 500 = Volume 625 of the Federal Supplement, Third Series, page 500 (a district court opinion)

Key federal reporters:

  • U.S. (United States Reports) - Supreme Court opinions (official reporter)
  • S. Ct. (Supreme Court Reporter) - Supreme Court opinions (West Publishing)
  • F., F.2d, F.3d, F.4th (Federal Reporter) - Circuit court opinions
  • F. Supp., F. Supp. 2d, F. Supp. 3d (Federal Supplement) - District court opinions

Regional reporters for state courts: West Publishing divides state court opinions into seven regional reporters - Atlantic (A.2d/A.3d), North Eastern (N.E.2d/N.E.3d), North Western (N.W.2d), Pacific (P.2d/P.3d), South Eastern (S.E.2d), South Western (S.W.2d/S.W.3d), and Southern (So.2d/So.3d).

The citation_lookup_citation tool resolves any of these citation formats to the corresponding CourtListener opinion.

19 Tools Available

The CourtListener MCP server exposes 19 tools across four categories:

Search Tools

ToolWhat It Does
search_opinionsSearch court opinions by keyword, court, date range, and jurisdiction. Covers federal circuit courts, district courts, state supreme courts, and appellate courts.
search_docketsSearch court dockets with party names, case numbers, and court filters. Full PACER data where available.
search_dockets_with_documentsSearch dockets that have associated documents in the RECAP archive.
search_recap_documentsSearch the RECAP archive of PACER documents directly.
search_audioSearch oral argument audio recordings from federal appellate courts.
search_peopleSearch judges and lawyers in the CourtListener database.

Get by ID

ToolWhat It Does
get_opinionGet full opinion text and metadata by CourtListener opinion ID.
get_docketGet docket details including parties, lawyers, and associated entries.
get_audioGet oral argument audio metadata and download links.
get_clusterGet an opinion cluster - a group of related opinions from the same case.
get_personGet detailed information about a judge or lawyer.
get_courtGet court metadata - name, jurisdiction, location, URL.

Citation Tools

ToolWhat It Does
citation_lookup_citationLook up a case by its legal citation (e.g., "410 U.S. 113").
citation_batch_lookup_citationsResolve multiple citations in a single call.
citation_verify_citation_formatCheck whether a citation string is properly formatted.
citation_parse_citation_with_citeurlParse a citation and generate a direct URL.
citation_extract_citations_from_textExtract all citations from a block of legal text.
citation_enhanced_citation_lookupEnhanced lookup with additional context and metadata.

System

ToolWhat It Does
statusCheck server health and CourtListener API connectivity.

Setup: 30 Seconds

Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "courtlistener": {
      "url": "https://courtlistener-mcp.vaquill.ai/mcp/"
    }
  }
}

Claude Code

claude mcp add courtlistener --transport http https://courtlistener-mcp.vaquill.ai/mcp/

Cursor

Go to Settings > MCP and add:

  • Type: streamableHttp
  • URL: https://courtlistener-mcp.vaquill.ai/mcp/

VS Code (Copilot)

Add to .vscode/settings.json:

{
  "mcp": {
    "servers": {
      "courtlistener": {
        "type": "http",
        "url": "https://courtlistener-mcp.vaquill.ai/mcp/"
      }
    }
  }
}

Windsurf

Add to your MCP config:

{
  "mcpServers": {
    "courtlistener": {
      "serverUrl": "https://courtlistener-mcp.vaquill.ai/mcp/"
    }
  }
}

Example Prompts

Once connected, try these in your AI editor:

  • "Search for 9th Circuit opinions on qualified immunity from 2023"
  • "Find the docket for Apple v. Samsung in the Northern District of California"
  • "Look up the citation 410 U.S. 113"
  • "Extract all citations from this brief" (paste text)
  • "Search for Supreme Court opinions on Section 1983 civil rights claims"
  • "Find oral arguments in the DC Circuit about agency rulemaking"

Your AI assistant will automatically call the right CourtListener tools and return grounded results from actual court records.

A Worked Query and Its Result

Here is what one call looks like end to end. Ask your editor to look up a citation, and it calls citation_lookup_citation:

{
  "tool": "citation_lookup_citation",
  "arguments": { "citation": "410 U.S. 113" }
}

The tool resolves it against CourtListener and returns the matching opinion cluster:

{
  "citation": "410 U.S. 113",
  "case_name": "Roe v. Wade",
  "court": "Supreme Court of the United States",
  "date_filed": "1973-01-22",
  "cluster_id": 108713,
  "absolute_url": "https://www.courtlistener.com/opinion/108713/roe-v-wade/"
}

Your editor then narrates it in plain English: Roe v. Wade, 410 U.S. 113 (1973), decided January 22, 1973 by the Supreme Court. The absolute_url is a live link you can open to read the full opinion, so the answer is checkable, not generated from model memory. Field names will vary slightly by server version; the shape is the same: input citation in, structured opinion record out.

Practical Research Workflows

Here are concrete workflows that demonstrate how the MCP server changes legal research:

Finding Precedent on a Specific Issue

Traditional workflow: Go to Westlaw or LexisNexis, run keyword searches, scan dozens of results, follow citation trails manually.

With the MCP server: Ask your AI assistant "Find 9th Circuit opinions from the last 3 years on qualified immunity in excessive force cases." It calls search_opinions with the right filters, returns relevant cases with metadata, and can then use get_opinion to pull full text for the most relevant results.

Follow up with "What does the 4th Circuit say on the same issue?" and it runs a parallel search instantly.

Tracking Active Litigation

Use search_dockets to find a specific case by party names, then get_docket to see all filed documents, parties, lawyers, and the current status. For cases with RECAP coverage, search_dockets_with_documents lets you find dockets that have freely available filings.

Citation Verification

Paste a brief or memo into your AI editor and ask "Extract and verify all citations in this document." The citation_extract_citations_from_text tool pulls every citation, and citation_batch_lookup_citations resolves them all against CourtListener's database.

You'll immediately see which citations are valid and which might be incorrect, a critical check in an era where AI-generated legal content sometimes includes fabricated citations.

Oral Argument Research

The search_audio and get_audio tools let you find oral argument recordings from federal appellate courts. Ask "Find oral arguments in the DC Circuit about Chevron deference from 2023" to find recordings of arguments in cases that may have preceded or followed Loper Bright Enterprises v. Raimondo (2024), which overturned Chevron.

How It Compares to Westlaw and LexisNexis

Westlaw legal research product page

LexisNexis legal research product page

CourtListener is not a replacement for Westlaw or LexisNexis, it's a complement. Here's what you get and what you don't:

FeatureCourtListener (Free)Westlaw/LexisNexis (Paid)
Court opinions (full text)10M+ opinions, strong federal coverageMore comprehensive, especially older state decisions
Headnotes and key numbersNoYes (West's Key Number System / LexisNexis Headnotes)
Citator (Shepard's / KeyCite)Basic citation dataFull treatment analysis (overruled, distinguished, followed)
PACER docket dataYes, via RECAP archive (crowdsourced)Yes, direct PACER integration
Federal regulationsYes (eCFR)Yes
Secondary sourcesNoTreatises, law reviews, practice guides
PriceFree$200-400+/month per user

The MCP server gives your AI assistant free access to the core primary law (opinions, dockets, and regulations) that covers the majority of research needs. For specialized citation analysis or comprehensive secondary sources, paid platforms still have an edge.

Combine with Statutes and Canadian Coverage

The real power is combining CourtListener's open US case data with a statutes MCP and the CanLII MCP server.

The statutes MCP handles US primary-law lookup (USC, CFR, 50-state codes, state constitutions, Federal Rules, Executive Orders), and the CanLII MCP server handles Canadian law. Add them to your editor config:

{
  "mcpServers": {
    "statutes": {
      "command": "uvx",
      "args": ["vaquill-mcp"],
      "env": {
        "VAQUILL_API_KEY": "vq_key_your_key_here"
      }
    },
    "courtlistener": {
      "url": "https://courtlistener-mcp.vaquill.ai/mcp/"
    },
    "canlii": {
      "url": "https://canlii-mcp.vaquill.ai/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_CANLII_API_KEY"
      }
    }
  }
}

Now your AI assistant can research across the US and Canada in a single conversation. Ask "Compare how the right to privacy is treated in American and Canadian jurisprudence" and it will call the right tools across the servers.

Loading diagram...

Self-Hosting

If you prefer to run your own instance, clone the courtlistener-mcp source, copy .env.example to .env with your COURT_LISTENER_API_KEY, then docker-compose up -d (port 8000).

Get a free CourtListener API key at courtlistener.com/api.

The server supports three transports:

  • streamable_http at /mcp/ (default, used by the hosted endpoint)
  • sse for Server-Sent Events
  • stdio for local process communication

Rate Limits and Fair Use

CourtListener's API is free for non-commercial and research use. The hosted endpoint forwards your token, so calls hit your quota:

  • Reasonable use: Individual research sessions, building legal tech prototypes, academic research
  • Heavy use: If you're building a product that will make sustained, high-volume API calls, self-host the MCP server with your own CourtListener token
  • Not allowed: Bulk scraping, commercial data aggregation without a CourtListener partnership

The hosted endpoint is a convenience for individual researchers and developers. For production use, self-host with your own key.

Technical Details

  • Language: Python with FastMCP
  • Transport: Streamable HTTP (stateless)
  • Docker: docker-compose up -d on port 8000
  • Rate limits: Subject to CourtListener API rate limits

FAQ

What is a CourtListener MCP server?

It is a Model Context Protocol server that exposes CourtListener's US case-law API to AI editors like Claude, Cursor, and VS Code. Instead of guessing at case law, your assistant calls real tools to search opinions, pull dockets, and verify citations against CourtListener's database of 10M+ federal and state opinions.

Is the CourtListener MCP server free?

Yes. The CourtListener API is free for non-commercial and research use, and both the official mcp.courtlistener.com connector and the open-source server are free to use. You bring your own free CourtListener token (or OAuth-connect your account on the official server). High-volume or commercial use should self-host and may need a CourtListener partnership.

How do I add the CourtListener MCP to Claude?

Two ways. For the official server, open Claude's connector directory, find CourtListener, and grant access to your account over OAuth. For the open-source hosted server, add a mcpServers block with the URL https://courtlistener-mcp.vaquill.ai/mcp/ to your claude_desktop_config.json, or run claude mcp add courtlistener --transport http in Claude Code.

What is the difference between the official CourtListener MCP and a third-party one?

The official server (mcp.courtlistener.com, launched May 2026) uses OAuth and is the quickest connect inside Claude or ChatGPT. The open-source server lets you self-host on Docker, pin the exact tool set, and bring your own key, which suits Cursor, VS Code, Windsurf, and production use. They both read the same CourtListener data.

What tools does the CourtListener MCP server expose?

The open-source server exposes 19 tools across four groups: search (opinions, dockets, RECAP documents, audio, people), get-by-ID (opinion, docket, cluster, court, person, audio), citation (lookup, batch lookup, verify, parse, extract, enhanced lookup), and a status check. See the full table above.

Does the CourtListener MCP cover state courts as well as federal?

Yes. CourtListener indexes opinions from over 400 jurisdictions, including appellate decisions from all 50 states plus the full federal hierarchy from district courts up to SCOTUS. The search_opinions tool filters by court and jurisdiction.

Can I use the CourtListener MCP server in Cursor or VS Code?

Yes. Add the server URL under Cursor's Settings > MCP as a streamableHttp server, or add an mcp.servers block to .vscode/settings.json in VS Code with Copilot. The setup section above has the exact config for each.

Does a CourtListener MCP give me US statutes too?

No. CourtListener is case law, dockets, and the eCFR. For US statutes (US Code, CFR, 50-state codes, Federal Rules, Executive Orders) you add a separate statutes MCP alongside it, as shown in the combined config above.

What's Next

We're adding more jurisdiction-specific MCP servers. The CanLII MCP server for Canadian law is already live.

Vaquill AI US statutes and code browser for primary-law lookup

Vaquill AI publishes its MCP servers on the official MCP registry under io.github.Vaquill-AI/*, including the CourtListener server above and a statutes MCP. To be clear about scope: Vaquill AI's public API is US statutes only (US Code, CFR, 50-state codes, Federal Rules, Executive Orders). Case-law access comes from CourtListener through the MCP. Vaquill AI does not offer a case-law API. Pair the two and your editor can move from a statute to the opinions interpreting it in one conversation.

Want to run all of this together? See how to compose the CourtListener, CanLII, and Vaquill AI MCPs into one workflow, or read about the statutes MCP at /features/legal-research.

Legal AI that reads your documents and knows the law.
Ask a legal question, review a contract, or search thousands of your files. Every answer shows where it came from. 7-day free trial, no card.
18 min read

New legal AI guides, weekly.

Priyansh Khodiyar

Priyansh Khodiyar

Co-Founder & CTO

Priyansh leads engineering and AI at Vaquill, from the matter workbench to drafting, document comparison, document matrix, and citation-verified research.