A side-by-side look at the Courtlistener MCP Server and Questlaw Library MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Courtlistener MCP Server for legal work as a local process; choose Questlaw Library for legal as a local process. You can also run both side by side in one mcpServers block.
courtlistener_search_opinions, courtlistener_get_opinion, courtlistener_get_citations.QUESTLAW_VAULT_FILE, QUESTLAW_RECOVERY_CODE, QUESTLAW_ALLOW_ENV_KEY.library_overview, list_cases, search_library.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Legal | Legal |
| Quality signal | 57/100 · Good | 53/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | Not declared |
| Pricing | Not declared | Not declared |
| Required env vars | None listed | QUESTLAW_VAULT_FILEQUESTLAW_RECOVERY_CODEQUESTLAW_ALLOW_ENV_KEY |
| Verified owner | Community listing | Community listing |
| GitHub stars | 4 | 0 |
| Directory activity | 2 views 0 installs 0 upvotes | 0 views 0 installs 0 upvotes |
| Tools | 14 | 10 |
| Full listing | View Courtlistener MCP Server | View Questlaw Library |
courtlistener_search_opinionsFull-text search across 9M+ court opinions with field syntax, court, date, and status filterscourtlistener_get_opinionFetch an opinion cluster's metadata and the full text of every variant (majority, concurrence, dissent)courtlistener_get_citationsTrace a cluster's citation network: opinions it cites (`citing`) or that cite it (`cited_by`)courtlistener_lookup_citationResolve every citation in a text (e.g. "410 U.S. 113") to cluster IDs and case metadatacourtlistener_search_docketsSearch RECAP federal dockets by case name, party, attorney, court, and filing datecourtlistener_get_docketFetch a federal docket's metadata and paged entry list with document availabilitycourtlistener_get_partiesFetch the parties and attorneys of record on a RECAP docketcourtlistener_search_judgesSearch judges by name, appointing president, court, and political affiliationcourtlistener_get_judgeFetch a judge's positions, education, political affiliations, and ABA ratingscourtlistener_lookup_courtsList courts by jurisdiction type, active/inactive status, and scraper coveragecourtlistener_search_oral_argumentsSearch appellate oral argument recordings by case name, transcript text, court, and argument datecourtlistener_get_oral_argumentFetch one oral argument's panel, duration, MP3 link, and speech-to-text transcriptlibrary_overviewWhat the library holds, its projects, courts, and tags, and the export datelist_casesEvery authority, or a filtered subset, in pagessearch_libraryOne ranked search across everythingsearch_casesSaved authorities that matchget_caseOne authority in full, with notes, quotations, and related casessearch_quotesSaved quotations that matchlist_project_casesEverything filed under one projectget_source_textCaptured text of a statute, regulation, rule, or opinionfind_citation_mentionsEvery place a draft cites an authority already in the libraryreload_snapshotRead the newest export from disk againPaste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"courtlistener-mcp-server": {
"command": "bunx",
"args": [
"@cyanheads/courtlistener-mcp-server@latest"
]
}
}
}
{
"mcpServers": {
"questlaw-library": {
"command": "npx",
"args": [
"-y",
"questlaw-mcp@0.5.1"
],
"env": {
"QUESTLAW_VAULT_FILE": "YOUR_QUESTLAW_VAULT_FILE_HERE",
"QUESTLAW_RECOVERY_CODE": "YOUR_QUESTLAW_RECOVERY_CODE_HERE",
"QUESTLAW_ALLOW_ENV_KEY": "YOUR_QUESTLAW_ALLOW_ENV_KEY_HERE"
}
}
}
}