# Syfert Legal Research MCP server

> Verify legal citations, case treatment, quotes and whole briefs against 10.7M U.S. court opinions and statutes

- Listing: https://mcp.tc/i/syfert-legal-research
- Connect: use the server's own URL `https://mcp.syfert.com/mcp` (with your API key); clients connect to it directly. The listing link is a page, not an MCP endpoint.
- Type: remote (Streamable HTTP)
- Auth: API key
- Category: [Docs & Knowledge](https://mcp.tc/c/docs-knowledge)
- Vendor: Syfert
- Homepage: <https://syfert.com/mcp/>

## About

Connects to the syfert.com law library: 10.7M U.S. opinions from all states and federal courts, treatment flags showing whether a case is still good law, and statute and court rule corpora for all 50 states plus DC, USC and CFR. Tools search cases and statutes, read full text, check citations and quotes, and audit a whole brief.

Runs as a hosted streamable HTTP endpoint at https://mcp.syfert.com/mcp. A free token sent as an Authorization Bearer header is used for normal access. The site also states that the endpoint answers without a credential, limited to 20 calls a day per address.

## What it can do

- Search 10.7M U.S. court opinions by topic, party, court or judge
- Look up a case by citation or caption and read the full opinion
- Check whether a case is still good law with treatment flags
- Verify citations, quotes and whole briefs for hallucinated authority
- Find the source case for a proposition or quoted language
- Search and read statutes and court rules for all 50 states plus DC and federal
- Research a doctrine by state with cases on each side

## Tools (22)

- `search_cases`: Full-text search over 10.7M U.S. (read-only)
- `find_case`: Direct lookup of one case by citation or caption (read-only)
- `get_case`: Fetch case metadata, parallel citations, treatment flag and opinion text (read-only)
- `check_citation`: Verify a case, statute, regulation or rule citation exists and matches the name (read-only)
- `verify_quote`: Check a quotation against the full text of the cited opinion (read-only)
- `get_treatment`: Show whether a case is still good law with citing-case signals (read-only)
- `check_brief`: Audit all citations, quotes and statutes in a draft brief at once (read-only)
- `get_propositions`: List the legal propositions courts cite a case for, each with its own flag (read-only)
- `get_citing_cases`: List citing cases with parentheticals, quotes and pin cites (read-only)
- `find_related_cases`: Expand one case into its doctrinal line of co-cited cases (read-only)
- `find_court`: Resolve a court name to court ids for search filters (read-only)
- `search_quotes`: Find every case that quoted a given phrase (read-only)
- `find_authority`: Find the source case to cite for a pasted proposition (read-only)
- `find_issues`: Research a doctrine or fact pattern as courts in a state name it (read-only)
- `search_statutes`: Search statutes and court rules by citation or topic for any state or federal (read-only)
- `get_statute`: Fetch full text of a statute, rule or code section with currency details (read-only)
- `suggest_treatment`: Propose a red or green treatment flag correction with supporting authority
- `export_document`: Return a readable copy of a case or statute for saving locally (read-only)
- `context_detector`: Compare a brief's sentence with what the cited opinion says (read-only)
- `brief_upload`: Signed-in accounts only (a free account at https://syfert.com/mcp/; anonymous callers use check\_brief with text).
- `get_brief_results`: Signed-in accounts only (a free account at https://syfert.com/mcp/; anonymous callers use check\_brief with text). (read-only)
- `brief_delete`: Signed-in accounts only (a free account at https://syfert.com/mcp/; anonymous callers use check\_brief with text).

## Example prompts

- "Check every citation in this draft brief and list corrections"
- "Is Miranda v. Arizona, 384 U.S. 436 still good law?"
- "Find Florida authority for this proposition, pasted verbatim"
- "Show me Florida statute 83.49 and cases construing it"

## Install

### Claude Code

1. Run this in a terminal, in your project folder:

```bash
claude mcp add --transport http syfert-legal-research https://mcp.syfert.com/mcp --header "Authorization: Bearer <YOUR_API_KEY>"
```

2. Replace the placeholder with your key before you run it, then check it with `/mcp` inside Claude Code.

Add `--scope user` to make it available in every project, not just this one.

### Claude Desktop

1. Use the `mcp-remote` bridge, which keeps the key on this computer (a connector added on claude.ai with the key under **Request headers** also shows up here). Open **Settings → Developer → Edit Config** and add:

`claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "syfert-legal-research": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.syfert.com/mcp",
        "--header",
        "Authorization: Bearer <YOUR_API_KEY>"
      ]
    }
  }
}
```

2. Replace the placeholder with your key and restart Claude Desktop.

The bridge needs Node.js on your computer.

### claude.ai

1. Open the connector form on claude.ai. This button fills in the name and URL for you:

[Add to claude.ai](<https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=Syfert%20Legal%20Research&connectorUrl=https%3A%2F%2Fmcp.syfert.com%2Fmcp>) (opens connector settings)

2. Check that the URL reads `https://mcp.syfert.com/mcp`. Under **Request headers**, add `Authorization: Bearer <YOUR_API_KEY>` with your key from Syfert, then click **Add**.

3. Turn it on in a chat from the tools menu.

Free plans allow one custom connector. On Team and Enterprise plans an owner adds it under **Organization settings → Connectors**.

### Cursor

[Add to Cursor](<https://cursor.com/install-mcp?name=syfert-legal-research&config=eyJ1cmwiOiJodHRwczovL21jcC5zeWZlcnQuY29tL21jcCIsImhlYWRlcnMiOnsiQXV0aG9yaXphdGlvbiI6IkJlYXJlciA8WU9VUl9BUElfS0VZPiJ9fQ%3D%3D>) (opens Cursor)

Or add it by hand to `~/.cursor/mcp.json` (all projects) or `.cursor/mcp.json` (this project):

`mcp.json`:

```json
{
  "mcpServers": {
    "syfert-legal-research": {
      "url": "https://mcp.syfert.com/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}
```

### VS Code

Add it to `.vscode/mcp.json`. VS Code asks for the key the first time and stores it securely:

`.vscode/mcp.json`:

```json
{
  "servers": {
    "syfert-legal-research": {
      "type": "http",
      "url": "https://mcp.syfert.com/mcp",
      "headers": {
        "Authorization": "Bearer ${input:api-key}"
      }
    }
  },
  "inputs": [
    {
      "type": "promptString",
      "id": "api-key",
      "description": "API key",
      "password": true
    }
  ]
}
```

### Devin Desktop

1. Add it to `~/.config/devin/mcp_config.json` (macOS and Linux) or `%APPDATA%\devin\mcp_config.json` (Windows):

`mcp_config.json`:

```json
{
  "mcpServers": {
    "syfert-legal-research": {
      "serverUrl": "https://mcp.syfert.com/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}
```

2. Refresh the MCP server list in Cascade.

Devin Desktop is the new name for Windsurf. It reads `serverUrl` (or `url`) for remote servers.

### Codex

```bash
codex mcp add syfert-legal-research --url https://mcp.syfert.com/mcp --bearer-token-env-var SYFERT_LEGAL_RESEARCH_API_KEY
```

Or edit `~/.codex/config.toml` directly:

`config.toml`:

```toml
[mcp_servers.syfert-legal-research]
url = "https://mcp.syfert.com/mcp"
bearer_token_env_var = "SYFERT_LEGAL_RESEARCH_API_KEY"
```

Set `SYFERT_LEGAL_RESEARCH_API_KEY` to your key in the shell that runs Codex.

### Gemini CLI

```bash
gemini mcp add --transport http --header "Authorization: Bearer <YOUR_API_KEY>" syfert-legal-research https://mcp.syfert.com/mcp
```

This adds it to the current project. Add `-s user` to use it everywhere.

### Any client

Most clients accept this shape. Some name the URL field differently: `serverUrl` in Devin Desktop, `httpUrl` in Gemini CLI’s settings file.

```json
{
  "mcpServers": {
    "syfert-legal-research": {
      "type": "http",
      "url": "https://mcp.syfert.com/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_KEY>"
      }
    }
  }
}
```

Zed puts servers under `context_servers` in its settings. Cline needs `"type": "streamableHttp"`, or it assumes SSE.

Client only starts local servers? Bridge it with `npx -y mcp-remote https://mcp.syfert.com/mcp`.

## Recent changes

- 2026-11-13 02:49 UTC: 1 tool changed. Source: automatic check. Changed: find\_authority.
- 2026-11-12 20:49 UTC: 3 tools changed. Source: automatic check. Changed: check\_brief, find\_authority, search\_cases.
- 2026-11-11 23:47 UTC: 2 tools changed. Source: automatic check. Changed: check\_brief, check\_citation.
- 2026-11-11 20:58 UTC: 4 tools changed. Source: automatic check. Changed: find\_authority, get\_case, get\_propositions, search\_cases.
- 2026-11-11 17:52 UTC: 2 tools changed. Source: automatic check. Changed: check\_brief, check\_citation.

More on the History tab, with descriptions before and after for the newest entries: https://mcp.tc/i/syfert-legal-research#history (Atom feed: https://mcp.tc/i/syfert-legal-research/history.xml). It records what mcp.tc's anonymous checks saw, every 3 hours where the tool list can be read without sign-in; it is not a security review.

## Details

- Server version: 2.0.0
- MCP protocol version: 2026-07-28
- Last checked: 2026-11-15 (reachable)
- Listed: 2026-10-25
- Updated: 2026-11-11

---
Source: https://mcp.tc/i/syfert-legal-research (mcp.tc is an independent directory, not affiliated with this server's publisher). Corrections: https://mcp.tc/report
