CAT
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Cross AI Tools

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by @mertduzgun

Independent project, not affiliated with Anthropic

CourtListener

vaquill-ai/courtlistener-mcp
114 toolsauthHTTPregistry active
Summary

Connects Claude to CourtListener's v4 API and the Electronic Code of Federal Regulations, giving you programmatic access to US federal and state court opinions, dockets, RECAP filings, oral arguments, judge profiles, and live eCFR regulations. You get 25+ tools spanning search, citation parsing, batch lookup, and regulatory text retrieval. The Vaquill team runs a public HTTPS endpoint where you bring your own free CourtListener token via custom headers, so there's no local install required for Claude Desktop, Cursor, or VS Code. Useful when you're building legal research workflows, need to verify citations in context, or want to pull current CFR text without leaving your editor.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →

Tools

Public tool metadata for what this MCP can expose to an agent.

14 tools
search_cases_by_problemFind relevant cases using LLM-generated search keywords. The LLM should extract legal keywords from the problem description and provide them for precise case law search.7 params

Find relevant cases using LLM-generated search keywords. The LLM should extract legal keywords from the problem description and provide them for precise case law search.

Parameters* required
limitnumber
Number of cases to return (1-20)default: 10
case_typestring
Type of legal issueone of consumer · small-claims · landlord-tenant · contract · warranty · debt-collection
date_rangestring
Time range preference for casesone of recent-2years · established-precedent · all-timedefault: recent-2years
court_levelstring
Level of courts to searchone of trial · appellate · supreme · alldefault: all
jurisdictionstring
Jurisdiction to search. Options: - "all" (search all courts) - "federal" (all federal courts) - "state" (all state courts) - "federal-bankruptcy" (bankruptcy courts) - "military" (military courts) - State names: "california", "texas", "florida", etc. - Specific court IDs: "scotus", "ca9", "ca11", etc. - Multiple courts: "ca9,ca11,scotus" (comma-separated)
problem_summarystring
Brief summary of the legal problem for context (1-2 sentences)
search_keywordsarray
Array of legal search terms extracted by LLM from problem description (e.g., ["breach of contract", "negligence", "damages"])
get_case_detailsDeep dive into specific case for precedent analysis with full legal reasoning2 params

Deep dive into specific case for precedent analysis with full legal reasoning

Parameters* required
case_idstring
Case ID from search results (cluster ID or docket ID)
content_modestring
Content mode: 'summary' returns API syllabus or 'N/A - use full mode', 'full' returns complete opinion textone of summary · fulldefault: summary
find_similar_precedentsFind cases with similar legal reasoning or outcomes to a reference case5 params

Find cases with similar legal reasoning or outcomes to a reference case

Parameters* required
limitnumber
Number of similar cases to return (1-15)default: 8
jurisdictionstring
Jurisdiction to search for similar cases. Options: - "all" (search all courts) - "federal" (all federal courts) - "state" (all state courts) - State names: "california", "texas", "florida", etc. - Specific court IDs: "scotus", "ca9", "ca11", etc. - Multiple courts: "ca9,ca11,scotus" (comma-separated)
legal_conceptsarray
Key legal concepts to match (e.g., ["breach of contract", "negligence"])
reference_case_idstring
ID of base case to find similar cases
citation_thresholdnumber
Minimum citation count for authoritative casesdefault: 1
analyze_case_outcomesAnalyze outcome patterns for similar cases to predict success likelihood4 params

Analyze outcome patterns for similar cases to predict success likelihood

Parameters* required
case_typestring
Type of legal issue to analyze
date_rangestring
Time period for analysisone of last-year · last-2years · last-5yearsdefault: last-2years
court_levelstring
Court level to analyzeone of trial · appellate · alldefault: all
jurisdictionstring
Jurisdiction to analyze cases in. Options: - "all" (analyze all courts) - "federal" (all federal courts) - "state" (all state courts) - State names: "california", "new-york", "texas", etc. - Specific court IDs: "scotus", "ca9", "cal", etc.
get_judge_analysisAnalyze judge's typical rulings on similar issues for strategic insights4 params

Analyze judge's typical rulings on similar issues for strategic insights

Parameters* required
courtstring
Specific court identifier (optional, narrows down the search)
case_typestring
Area of law to analyze (e.g., contract disputes, small claims, employment law)
judge_namestring
Full name of the judge
jurisdictionstring
Optional jurisdiction to help identify the correct judge. Options: - "federal" (all federal courts) - "state" (all state courts) - State names: "california", "texas", "florida", etc. - Specific court IDs: "scotus", "ca9", "ca11", etc. Helps disambiguate common judge names.
validate_citationsVerify and expand legal citations with related case discovery3 params

Verify and expand legal citations with related case discovery

Parameters* required
citationsarray
List of citations to verify (e.g., ["123 F.3d 456", "Smith v. Jones"])
context_textstring
Surrounding legal argument context for better validation
jurisdictionstring
Optional jurisdiction to improve search accuracy. Options: - "federal" (all federal courts) - "state" (all state courts) - State names: "california", "texas", "florida", etc. - Specific court IDs: "scotus", "ca9", "ca11", etc. If omitted, searches all courts.
get_procedural_requirementsFind procedural rules and filing requirements for specific case types in any jurisdiction4 params

Find procedural rules and filing requirements for specific case types in any jurisdiction

Parameters* required
courtstring
Specific court identifier (optional, narrows down the search)
case_typestring
Type of legal complaint or case
claim_amountnumber
Dollar amount of dispute (helps determine appropriate court level)
jurisdictionstring
Jurisdiction to search for procedural requirements. Options: - "federal" (all federal courts) - "state" (all state courts) - State names: "california", "new-york", "texas", etc. - Specific court IDs: "scotus", "ca9", "cal", etc.
track_legal_trendsIdentify recent trends in similar cases for strategic advantage3 params

Identify recent trends in similar cases for strategic advantage

Parameters* required
legal_areastring
Area of law to analyze trendsone of consumer-protection · small-claims · landlord-tenant · contract-disputes · warranty-claims
trend_typestring
Type of trend to analyzeone of outcomes · filing-patterns · new-precedents · settlement-ratesdefault: outcomes
time_periodstring
Time period for trend analysisone of last-6months · last-year · last-2yearsdefault: last-year
search_pacer_dockets📊 PACER SEARCH: Search federal court dockets from PACER via CourtListener's RECAP Archive. Find active and terminated cases with comprehensive party, attorney, and filing information. Search by case name, party name, or nature of suit across all federal courts or specific jur...7 params

📊 PACER SEARCH: Search federal court dockets from PACER via CourtListener's RECAP Archive. Find active and terminated cases with comprehensive party, attorney, and filing information. Search by case name, party name, or nature of suit across all federal courts or specific jur...

Parameters* required
courtstring
Specific court identifier (e.g., 'ca3', 'cacd', 'nysd', 'dcd') OR jurisdiction name (e.g., 'federal', 'california', 'bankruptcy'). Court IDs are passed directly, jurisdiction names are resolved to multiple courts.
limitnumber
Maximum number of dockets to returndefault: 20
case_namestring
Case name or title to search for
case_typestring
Type of case to search forone of civil · criminal · bankruptcy · alldefault: all
date_rangeobject
Date range for case filing or termination dates
party_namestring
Name of a party involved in the case (plaintiff, defendant, etc.). Examples: 'Sean Combs', 'Microsoft Corporation', 'United States'
nature_of_suitstring
Nature of suit code or description (e.g., 'Contract', 'Tort', 'Civil Rights')
get_docket_entries🔒 PREMIUM ACCESS REQUIRED | EXPERIMENTAL: Get detailed docket entries for a specific case, including all filings, orders, and document references from PACER. Note: This function requires CourtListener premium API access and is experimental - may not work with basic API keys.3 params

🔒 PREMIUM ACCESS REQUIRED | EXPERIMENTAL: Get detailed docket entries for a specific case, including all filings, orders, and document references from PACER. Note: This function requires CourtListener premium API access and is experimental - may not work with basic API keys.

Parameters* required
limitnumber
Maximum number of entries to returndefault: 50
docket_idstring
Docket ID from search results
entry_typestring
Type of docket entries to retrieveone of all · documents · orders · filingsdefault: all
search_parties_attorneys📊 BASIC ACCESS: Search for parties and attorneys across PACER cases. Track representation patterns and attorney success rates. Note: Basic API access provides limited data - premium access required for full attorney/party details.6 params

📊 BASIC ACCESS: Search for parties and attorneys across PACER cases. Track representation patterns and attorney success rates. Note: Basic API access provides limited data - premium access required for full attorney/party details.

Parameters* required
courtstring
Court identifier to limit search (optional)
limitnumber
Maximum number of results to returndefault: 20
firm_namestring
Law firm name to search for
date_rangeobject
Date range for case activity
party_namestring
Name of party to search for (plaintiff, defendant, etc.)
attorney_namestring
Attorney name to search for
analyze_case_timeline🔒 PREMIUM ACCESS REQUIRED | EXPERIMENTAL: Analyze case progression timeline from PACER docket entries. Track delays, activity patterns, and case development. Note: Requires premium access to docket-entries endpoint - basic API access provides limited timeline data only.3 params

🔒 PREMIUM ACCESS REQUIRED | EXPERIMENTAL: Analyze case progression timeline from PACER docket entries. Track delays, activity patterns, and case development. Note: Requires premium access to docket-entries endpoint - basic API access provides limited timeline data only.

Parameters* required
docket_idstring
Docket ID to analyze
analysis_typestring
Type of timeline analysis to performone of progression · delays · activity · alldefault: all
include_documentsboolean
Include document filing analysis in timelinedefault: false
track_case_status📊 BASIC ACCESS: Track current status and recent activity for PACER cases. Monitor active litigation progress. Note: Basic access provides case metadata only - premium access required for detailed activity tracking.3 params

📊 BASIC ACCESS: Track current status and recent activity for PACER cases. Monitor active litigation progress. Note: Basic access provides case metadata only - premium access required for detailed activity tracking.

Parameters* required
docket_idstring
Docket ID to track
status_historyboolean
Include historical status changesdefault: false
include_recent_activityboolean
Include recent docket activity in status reportdefault: true
get_case_documents🔒 PREMIUM ACCESS REQUIRED | EXPERIMENTAL: Retrieve case documents from PACER with full text extraction. Access orders, motions, briefs, and opinions. Note: This function requires CourtListener premium API access and is experimental - may not work with basic API keys.4 params

🔒 PREMIUM ACCESS REQUIRED | EXPERIMENTAL: Retrieve case documents from PACER with full text extraction. Access orders, motions, briefs, and opinions. Note: This function requires CourtListener premium API access and is experimental - may not work with basic API keys.

Parameters* required
limitnumber
Maximum number of documents to returndefault: 20
docket_idstring
Docket ID to get documents for
include_textboolean
Include extracted full text content (may be large)default: false
document_typestring
Type of documents to retrieveone of all · orders · motions · briefs · opinionsdefault: all

CourtListener MCP Server

A Model Context Protocol server that gives AI assistants access to the CourtListener legal database (US federal + state court opinions, dockets, RECAP filings, PACER data, oral arguments, judges) and the Electronic Code of Federal Regulations via the official CourtListener API v4.

Use it with Claude Desktop, Claude Code, Cursor, VS Code, Windsurf, ChatGPT Desktop, or any MCP-compatible client.

Forked from Travis-Prall/court-listener-mcp. This fork adds a hosted endpoint, bring-your-own-key (BYOK) auth, a /health route, and Dockerfile hardening for production hosting. Tools and search semantics are unchanged.

Use the hosted endpoint (no install)

The Vaquill team runs a public instance for the community:

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

You bring your own free CourtListener token from courtlistener.com/help/api/rest/, the server forwards it. We never see or store your key.

Claude Desktop / Claude Code

~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "courtlistener": {
      "url": "https://courtlistener-mcp.vaquill.ai/mcp/",
      "headers": {
        "X-CourtListener-Token": "YOUR_COURTLISTENER_TOKEN"
      }
    }
  }
}

Cursor

.cursor/mcp.json:

{
  "mcpServers": {
    "courtlistener": {
      "url": "https://courtlistener-mcp.vaquill.ai/mcp/",
      "headers": { "X-CourtListener-Token": "YOUR_COURTLISTENER_TOKEN" }
    }
  }
}

VS Code (GitHub Copilot Chat)

.vscode/mcp.json:

{
  "servers": {
    "courtlistener": {
      "type": "http",
      "url": "https://courtlistener-mcp.vaquill.ai/mcp/",
      "headers": { "X-CourtListener-Token": "YOUR_COURTLISTENER_TOKEN" }
    }
  }
}

Claude Web (custom connector)

Settings → Connectors → Add custom connector → paste the URL and add X-CourtListener-Token as a header. Workspace owners only.

Windsurf, Continue, etc.

Any client that supports MCP streamable HTTP with custom headers works. For stdio-only clients, run the server locally (see below) or proxy with mcp-remote.

Tools

GroupTools
Searchsearch_opinions, search_dockets, search_dockets_with_documents, search_recap_documents, search_audio, search_people
Getget_opinion, get_docket, get_audio, get_court, get_person, get_cluster
Citationlookup_citation, batch_lookup_citations, verify_citation_format, parse_citation_with_citeurl, extract_citations_from_text, enhanced_citation_lookup
eCFRlist_titles, list_agencies, search_regulations, list_all_corrections, list_corrections_by_title, get_search_suggestions, get_search_summary, get_title_search_counts, get_daily_search_counts, get_ancestry, get_title_structure, get_source_xml, get_source_json
Systemstatus, get_api_status, health_check

See app/README.md for parameter details.

Authentication

Two modes, in priority order:

  1. Per-request header (BYOK) — preferred for hosted / shared deployments. Send the user's CourtListener key on every MCP request:
    • X-CourtListener-Token: <key> (preferred), or
    • Authorization: Token <key> (CourtListener's native scheme — only works if the MCP server itself isn't already gated by Authorization).
  2. Server env fallback — set COURT_LISTENER_API_KEY on the server. Used when no per-request header is supplied. Leave unset on public instances to force BYOK and avoid burning the operator's quota.

If neither is provided, tools return a ValueError with a clear message.

Self-host

Docker

git clone https://github.com/Vaquill-AI/courtlistener-mcp.git
cd courtlistener-mcp
cp .env.example .env  # optionally set COURT_LISTENER_API_KEY for single-tenant
docker compose up -d
# server at http://localhost:8000/mcp/

Python (uv)

uv sync
uv run python -m app --transport http

Stdio (local CLI integration)

uv run python -m app --transport stdio

Add to Claude Desktop:

{
  "mcpServers": {
    "courtlistener-local": {
      "command": "uv",
      "args": ["run", "--directory", "/abs/path/to/courtlistener-mcp", "python", "-m", "app", "--transport", "stdio"],
      "env": { "COURT_LISTENER_API_KEY": "your_token" }
    }
  }
}

Configuration

VarRequiredDefaultNotes
COURT_LISTENER_API_KEYOptional*—Fallback when no per-request header. Leave unset on public servers.
COURTLISTENER_BASE_URLNohttps://www.courtlistener.com/api/rest/v4/
COURTLISTENER_TIMEOUTNo30seconds
MCP_TRANSPORTNostdiostdio | http | sse
MCP_PORTNo8000http/sse only
HOSTNo0.0.0.0http/sse only

* Required only if running in single-tenant mode without BYOK.

Health check

curl https://courtlistener-mcp.vaquill.ai/health
# {"status":"healthy","service":"courtlistener-mcp","version":"..."}

Development

uv sync --dev
uv run pytest
uv run ruff format . && uv run ruff check .
uv run mypy app/

Credits & License

  • Original implementation: Travis-Prall/court-listener-mcp
  • Hosted by: Vaquill — courtlistener-mcp.vaquill.ai
  • License: MIT (see LICENSE)

CourtListener data is provided by the Free Law Project under their respective terms.

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
Keep your Mac awake
Keep your Mac awake
Keep your Mac awake while Claude Code and 40+ AI agents run. Sleeps when they're idle.
One time payment $9 →
Context.devContext.dev
Context.dev
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Make money from your Skills
Make money from your Skills
On Capafy, your Skill runs online 24/7 as an agent product, and you get paid every time someone uses it.
Start earning →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Registryactive
TransportHTTP
AuthRequired
UpdatedMay 15, 2026
View on GitHub