MCP: Court Rules
The Court Rules MCP server gives AI agents access to structured filing rules for 20+ courts and 630+ judges. Four tools let you list courts, search judges, retrieve rules, and generate compliance check parameters.What you get
Four court rules tools:| Tool | Purpose |
|---|---|
list_courts | List all courts with status and judge counts |
search_judges | Search judges by district, name, or type |
get_judge_rules | Get all rules for a specific judge (page limits, format, procedures) |
check_compliance | Generate compliance check parameters for the REST API (/api/v1/check) |
The same MCP server also provides three enforcement data tools for monitoring privacy enforcement
actions across 21 jurisdictions. See MCP: Enforcement Data.
Quick start
Add the Court Rules MCP server to your client. Sample data works immediately, no API key needed.Claude Code
Claude Desktop
Add to your Claude Desktop config:Cursor
Add to~/.cursor/mcp.json:
VS Code
Add to.vscode/mcp.json:
Codex CLI
Windsurf
Add to Windsurf MCP settings:Sample vs Full access
The hosted MCP server has two access tiers:| Sample | Full | |
|---|---|---|
| Auth required | No | OAuth 2.1 |
| Court rules | 3 courts, 3 judges | 20+ courts, 630+ judges |
| Filters | Disabled | Full query support |
| Use case | Try before you authenticate | Production integration |
Tool reference
list_courts
List all courts. Parameters:| Parameter | Type | Description |
|---|---|---|
status | string | Optional filter: “live”, “preview”, or “coming_soon” |
search_judges
Search for judges by district, name, or type. Parameters:| Parameter | Type | Description |
|---|---|---|
district_id | string | District identifier (e.g., “edny”, “sdny”, “cdca”) |
name | string | Partial name match |
judge_type | string | ”district”, “senior”, “magistrate”, “chief_district”, etc. |
limit | number | Max results (default 20) |
get_judge_rules
Get all extracted rules for a specific judge. Parameters:| Parameter | Type | Required | Description |
|---|---|---|---|
judge_slug | string | Yes | Judge identifier (e.g., “carol-bagley-amon”, “frederic-block”) |
district_id | string | Yes | District identifier (e.g., “edny”) |
check_compliance
Generate compliance check parameters for the Court Rules REST API. This tool formats your check request; the actual compliance check runs atapi.courtrules.app/api/v1/check (requires an API key).
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
judge_slug | string | Yes | Judge identifier |
district_id | string | Yes | District identifier |
document_scope | string | Yes | Document type (brief_support, brief_opposition, brief_reply, etc.) |
page_count | number | Yes | Total body pages |
word_count | number | Yes | Total word count |
motion_type | string | No | Motion type (Rule_56, Rule_12, etc.) |
is_pro_se | boolean | No | Whether filer is pro se |
Integration patterns
Pre-filing compliance
Check documents against judge-specific rules before filing:get_judge_rules early in the drafting process so users see requirements before they finish writing, then call check_compliance as a final gate before submission.
Error handling
MCP tool calls return errors as text content, not HTTP error codes. If a tool encounters an error (invalid parameters, database unavailable), the response will contain a descriptive error message in thecontent array:
- Invalid judge_slug:
"No judge found with slug \"...\" in district \"...\"." - Invalid district_id:
"No court found with ID \"...\"." - Database error:
"Error querying courts: ..."or"Error searching judges: ..."
mcp.courtrules.app does not currently enforce rate limits on MCP tool calls.
Next steps
- REST API Quickstart to run compliance checks directly via HTTP
- Coverage Levels to understand the three rule layers (FRCP, Local Rules, Standing Orders)
- MCP: Enforcement Data for privacy enforcement tools on the same MCP server