German federal and Land statutes plus court decisions for agents. Keyless, read-only.
MCPpedia last refreshed this data
eu.nulegal/recht is an MCP server that german federal and Land statutes plus court decisions for agents. Keyless, read-only. Its tool list has not been published yet over http, requires no API key, and scores 71/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients - only the file and path differ.
{
"mcpServers": {
"nulegal-recht": {
"url": "https://recht.nulegal.eu/v1/mcp",
"type": "http"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
German federal and Land statutes plus court decisions for agents. Keyless, read-only.
This server supports HTTP transport. Be the first to test it - help the community know if it works.
Five weighted categories - click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience - it helps other developers decide.
Sign in to write a review.
Others in legal
Korean law: statutes, precedents, ordinances, treaties and citation verification (법제처 API).
JPO patent information: Japanese patent, utility model and trademark status from the Japan Patent…
Kentucky Revised Statutes (KRS) — state statutes by citation and by topic.
North Dakota Century Code — state statutes by citation and by topic. Fleet #2743.
MCP Security Weekly
Get CVE alerts and security updates for eu.nulegal/recht and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
An MCP server for German law: federal statutes and regulations, the Landesrecht of Bayern, Brandenburg, Nordrhein-Westfalen and Sachsen, and court decisions — for AI agents that need to ground a citation, read a provision, or follow the citation graph, and need to know when an answer is not complete.
On 23 October 2026 the corpus held 12,016 statutes and regulations (254,598
provisions, 312,122 stored versions) and 640,401 court decisions from 946
courts, with 7,797,118 citation links from decisions to provisions and to other
decisions. getCoverage returns the current figures.
This repository is the tool layer of the hosted server at
https://recht.nulegal.eu/v1/mcp. The hosted endpoint runs this code,
vendored at a pinned commit, over a private backend that reads the corpus
directly; recht-mcp runs the same code locally over the public REST API. The
corpus and the database stay on the service side — see
docs/DESIGN.md for exactly where the line runs.
| Tool | What it does |
|---|---|
resolveIdentifiers | Grounds up to 100 citations at once — § 823 Abs. 1 BGB, BVerwG, Urteil vom 24.10.2023 - 2 C 9.22, ECLIs, BVerfGE 65, 1. Keeps the court and the date as disambiguators, flags a wrong date or a different court, and never returns a near match. |
search | One query over statutes (lexical) and case law (semantic), with a per-jurisdiction roll-up for cross-Land comparison. |
getNorm | The text of one provision as Markdown (or JSON), optionally as of a date, with its gazette citation (fundstelle). |
listNormVersions | Every stored version of a provision, with the archive floor marked. |
listCitingDecisions | Decisions citing a provision or a decision, by citation weight or newest first, with the citing court's own Randnummer. |
listCitedAuthorities | What one decision cites: provisions (the weighted Normenkette) and decisions. |
listCasePassages | A decision as numbered passages; page through it or jump to a Randnummer. |
getChanges | Provisions whose text changed recently — the freshness feed as JSON. |
getCoverage | What the corpus holds, and the limits every answer should be read against. |
Every tool is read-only. Each answer says what it is and what it is not:
version dates are first-observed dates, not Inkrafttreten; the norm-version
archive has a floor that every norm answer states; a zero from the citation
graph on a Land provision is labelled as "not indexed", not "never cited"; and
three kinds of miss — not_in_corpus, outside_coverage, known_missing —
are never collapsed into one. The full contract of each tool is in its
description (tools/list).
No key, no signup. Point any MCP client that speaks Streamable HTTP at:
https://recht.nulegal.eu/v1/mcp
Claude Code:
claude mcp add --transport http nulegal-recht https://recht.nulegal.eu/v1/mcp
A client configured with JSON:
{
"mcpServers": {
"nulegal-recht": { "type": "http", "url": "https://recht.nulegal.eu/v1/mcp" }
}
}
Developer documentation for the service and its REST API: https://recht.nulegal.eu/developers.
Requires Python 3.12+ and uv. The package has no third-party runtime dependencies.
git clone https://github.com/nulegal-startup/recht-mcp
cd recht-mcp
uv run recht-mcp # stdio
uv run recht-mcp --http # Streamable HTTP on http://127.0.0.1:8765/mcp
Or without a checkout:
uvx --from git+https://github.com/nulegal-startup/recht-mcp recht-mcp
A client that launches stdio servers:
{
"mcpServers": {
"nulegal-recht": {
"command": "uvx",
"args": ["--from", "git+https://github.com/nulegal-startup/recht-mcp", "recht-mcp"]
}
}
}
Options: --http, --host (de