lawyer-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@lawyer-mcp list laws for Japan"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
lawyer-mcp
MCP (Model Context Protocol) server for Legalize.dev: AI tools to query and understand legal frameworks across countries.
Goal: help an AI quickly answer questions about a country’s legal framework by querying Legalize.dev’s structured legislation API.
Status
Work in progress.
Related MCP server: Vaquill-AI/vaquill-mcp
Data source
API docs (Swagger): https://legalize.dev/api/docs
OpenAPI spec: https://legalize.dev/openapi.json
Auth
Legalize.dev uses a bearer token in the Authorization header (see components.securitySchemes.ApiKeyAuth in the OpenAPI spec).
This server expects:
LEGALIZE_API_KEYenv var (either the rawleg_...token or the fullBearer leg_...value)
TLS / certificates (Codex on Windows)
If you hit errors like certificate verify failed: certificate signature failure, your Python/Codex environment may be missing the right CA bundle.
Options:
Prefer installing/updating CA certificates in your environment (recommended).
Set
LEGALIZE_SSL_CERT_FILE=/path/to/ca-bundle.pemto point to a CA bundle.If
certifiis installed, lawyer-mcp will automatically use it.As a last resort (NOT recommended):
LEGALIZE_SSL_INSECURE=1disables certificate verification.
Tools (MCP)
Tools are derived from https://legalize.dev/openapi.json.
Toolset selection
By default we expose a full read-only toolset. If you want the smallest useful surface area (to reduce model confusion), set:
LEGALIZE_TOOLSET=minimal
Minimal toolset includes:
legalize_openapi_summary— public summary of the OpenAPI spec (no API key)legalize_countries— list supported countrieslegalize_jurisdictions— list jurisdictions within a countrylegalize_laws— search/list laws within a country (single page)legalize_laws_all— same, but auto-paginates (best-effort flattening)legalize_law_meta— lightweight law metadatalegalize_law_get— full law payloadlegalize_reforms— list reforms/diffs for a law
Full toolset additionally includes:
legalize_commits— list git commits for a lawlegalize_law_at_commit— fetch law content at a commit SHAlegalize_rangos— list legal hierarchy/ranks (rangos)legalize_stats— summary statistics per country (optional jurisdiction)legalize_account— current API key account/usage/limits (does not count against quota)
Dangerous tool (opt-in)
legalize_rotate_key— rotate API key (invalidates current key). Disabled by default; enable withLEGALIZE_ENABLE_DANGEROUS_TOOLS=1.
Install
For now this is a single-file Python module (no external dependencies).
Option A: run from source (recommended)
git clone https://github.com/pugafran/lawyer-mcp.git
cd lawyer-mcp
# required
export LEGALIZE_API_KEY="leg_..." # or "Bearer leg_..."
python3 -m lawyer_mcpOption B: pipx / pip (if you have pip available)
pipx install git+https://github.com/pugafran/lawyer-mcp.git
# or: python -m pip install git+https://github.com/pugafran/lawyer-mcp.git
export LEGALIZE_API_KEY="leg_..."
lawyer-mcpConfigure in Claude Desktop (MCP)
Install the server (see Install above).
Open Claude Desktop → Settings → Developer → Edit MCP config.
Add a server entry like this:
{
"mcpServers": {
"lawyer": {
"command": "python3",
"args": ["-m", "lawyer_mcp"],
"env": {
"LEGALIZE_API_KEY": "leg_...",
"LEGALIZE_TOOLSET": "minimal"
}
}
}
}Restart Claude Desktop. You should then see the legalize_* tools available.
Configure in OpenAI Codex / IDEs
Codex support depends on the client you are using (Codex CLI vs an IDE with MCP support).
If your Codex/IDE supports MCP servers via a JSON config, use the same command/env as above:
command:
python3args:
-m lawyer_mcpenv:
LEGALIZE_API_KEY=...
If you tell me which “Codex” you mean (Codex CLI, VS Code extension, Cursor, etc.), I’ll add an exact, copy/paste config snippet for that client.
Run
# required
export LEGALIZE_API_KEY="leg_..." # or "Bearer leg_..."
# optional (useful for tests/self-hosted mirrors)
# export LEGALIZE_BASE_URL="https://legalize.dev"
# export LEGALIZE_HTTP_RETRIES=2
# export LEGALIZE_HTTP_TIMEOUT=30
# optional (DANGEROUS): exposes `legalize_rotate_key`
# export LEGALIZE_ENABLE_DANGEROUS_TOOLS=1
python3 -m lawyer_mcpAvailable Tools
13 toolslegalize_accountA
Get account usage/limits info for the current API key (does not count against quota).
Inputs: no named parameters.
legalize_commitsB
List git commits for a law repository (lightweight history).
Inputs: law_id (required), country (required).
legalize_countriesB
List supported countries.
Inputs: no named parameters.
legalize_jurisdictionsB
List jurisdictions within a country.
Inputs: country (required).
legalize_law_at_commitA
Fetch the law content as it was at a specific git commit SHA.
Inputs: sha (required), law_id (required), country (required).
legalize_law_getC
Fetch a full law payload.
Inputs: law_id (required), country (required).
legalize_law_metaC
Get metadata for a law (lightweight endpoint).
Inputs: law_id (required), country (required).
legalize_lawsA
Search/list laws within a country (single page).
Inputs: country (required), q, page, year, +4 more.
legalize_laws_allB
Search/list laws within a country, automatically paging until exhaustion or max_pages. Returns raw page payloads plus a best-effort flattened list when the API returns an array or a {items|data|results} container.
Inputs: country (required), q, year, status, +5 more.
legalize_openapi_summaryA
Public: summarize the Legalize.dev OpenAPI spec (endpoints, versions). No API key required.
Inputs: no named parameters.
legalize_rangosB
List the legal hierarchy/ranks (rangos) for a country.
Inputs: country (required).
legalize_reformsB
List reforms (diffs) for a law, newest-first; useful for change tracking.
Inputs: law_id (required), country (required), limit, offset.
legalize_statsA
Get summary statistics for a country (optionally filtered by jurisdiction).
Inputs: country (required), jurisdiction.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 13 tools
Each tool targets a distinct resource or action: metadata vs full law, paginated vs single-page search, diffs vs git history. The pagination variant (laws_all) is clearly differentiated from laws, and the hierarchy/rank tool is unique. No two tools appear to do the same thing.
All 13 tools share the consistent `legalize_` prefix and use snake_case. The suffix pattern is predictable: simple resource names (countries, laws) or resource_qualifier (law_get, law_at_commit). Even the paginated variant follows a clear `_all` suffix, making the naming scheme uniform and easy to navigate.
13 tools is well within the ideal 3-15 range for a domain-specific API client. Each tool addresses a distinct need, from listing countries to retrieving historical law content, with no redundancy or bloat.
The tool set provides comprehensive read-only coverage of the Legalize.dev API: discovery (countries, jurisdictions, rangos), search (laws, laws_all), retrieval (law_get, law_meta), change tracking (reforms, commits, law_at_commit), and account management (account). No obvious gaps exist for the stated purpose of legal information retrieval.
Maintenance
Related MCP Connectors
Connect AI to millions of laws and court cases with the Lawstronaut MCP.
AI governance MCP server for EU AI Act compliance and jurisdiction verification
Official MCP connector for Legalize: read and search its whole open corpus, at any point in time.
Related MCP Servers
- AlicenseAqualityDmaintenanceMCP Server providing AI agents access to over 3 million US court decisions via CourtListener and EU legislation via EUR-Lex, with tools for searching cases, citations, judges, and court information.621 PyPIMIT

Vaquill-AI/vaquill-mcpofficial
AlicenseAqualityBmaintenanceMCP server for Vaquill legal research API. Covers US federal + 50-state law (USC, CFR, state legislation, CourtListener case law)37168 PyPI9MIT- AlicenseAqualityCmaintenanceMCP server that connects AI to the Chilean legislation system (Ley Chile) for retrieving legal norms, citations, and intertemporal analysis.283MIT
- AlicenseAqualityDmaintenanceMCP server for searching and retrieving Japanese laws from the e-Gov API, enabling natural language queries for legal information.39 npmMIT