nu:legal Deutsches Recht について
nu:legal Deutsches Rechtは、法律研究者やAIエージェント向けのドイツ法MCPサーバーです。連邦法と一部州の法令、裁判例を扱い、引用の解決や版・引用グラフの照会に加えて、収録範囲と制限も示します。
主な機能
- 01法律引用の解決と検証
- 02法令と裁判例の検索
- 03日付指定で条文と版を取得
- 04判決間の引用関係を確認
- 05判決の段落と収録範囲を確認
活用シーン
- 01法令や判決の引用を照合
- 02州をまたいで法令や裁判例を比較
- 03過去の日付時点の条文を確認
- 04判決が引用する法令や裁判例を追跡
MCP 対応
MCPサーバーとして、ドイツの法令や裁判例の検索、引用解決、版や引用関係の確認に使える9種類の読み取り専用ツールを提供します。ホスト型エンドポイントまたはローカルで利用できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://recht.nulegal.eu/v1/mcpclaude mcp add --transport http nu-legal-deutsches-recht https://recht.nulegal.eu/v1/mcp{"mcpServers":{"nu-legal-deutsches-recht":{"type":"http","url":"https://recht.nulegal.eu/v1/mcp"}}}Cursor で開く{"servers":{"nu-legal-deutsches-recht":{"type":"http","url":"https://recht.nulegal.eu/v1/mcp"}}}VS Code で開く{"mcpServers":{"nu-legal-deutsches-recht":{"type":"http","url":"https://recht.nulegal.eu/v1/mcp"}}}{"mcpServers":{"nu-legal-deutsches-recht":{"serverUrl":"https://recht.nulegal.eu/v1/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
9| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| include | array | いいえ | 追加ペイロードを任意で指定します。'text' は 300 文字の抜粋ではなく、法令条文の全文を返します。どの項を引用しても抜粋は同じ 300 文字なので、それで引用を照合してはいけません。'leitsatz' はプレビューではなく、判決の判旨全文を返します。不明な値は無視されず、拒否されます。 |
| citations | array | はい | 手元にある引用をそのまま指定します。 |
詳細
recht-mcp
ドイツ法に対応する MCP サーバーです。連邦法令、バイエルン州、ブランデンブルク州、ノルトライン=ヴェストファーレン州、ザクセン州の州法、そして裁判所の判決を扱います。引用の根拠を確認したり、条文を読んだり、引用グラフをたどったりする必要があり、回答が 不完全 である場合も把握したい AI エージェント向けです。
2026 年 10 月 23 日時点で、コーパスには 12,016 件の法令(254,598 条文、保存済みバージョン 312,122 件)と、946 の裁判所による 640,401 件の判決が収録されており、判決から条文および他の判決への引用リンクは 7,797,118 件あります。getCoverage は最新の数値を返します。
このリポジトリは、ホスト型サーバー https://recht.nulegal.eu/v1/mcp のツールレイヤーです。ホスト型エンドポイントは、固定されたコミットでベンダー化されたこのコードを、コーパスを直接読み取るプライベートバックエンド上で実行します。recht-mcp は同じコードを公開 REST API 上でローカルに実行します。コーパスとデータベースはサービス側に置かれています。境界の詳細については、docs/DESIGN.md を参照してください。
9 つのツール
| ツール | 機能 |
|---|---|
resolveIdentifiers | 最大 100 件の引用を一度に照合します。例:§ 823 Abs. 1 BGB、BVerwG, Urteil vom 24.10.2023 - 2 C 9.22、ECLI、BVerfGE 65, 1。裁判所と日付を識別情報として保持し、日付の誤りや裁判所の違いを示します。また、類似するだけの候補は返しません。 |
search | 法令(字句検索)と判例(セマンティック検索)を対象に 1 つのクエリで検索し、州をまたいだ比較のため、管轄区域ごとに集計します。 |
getNorm | 1 つの条文を Markdown(または JSON)で返します。日付を指定でき、官報の出典情報(fundstelle)も取得できます。 |
listNormVersions | 条文の保存済みバージョンをすべて返し、アーカイブの収録開始点を示します。 |
listCitingDecisions | 条文または判決を引用する判決を、引用の重み順または新しい順で返します。引用した裁判所独自の Randnummer も含まれます。 |
listCitedAuthorities | 1 つの判決が引用する対象を返します。条文(重み付けされた Normenkette)と判決が含まれます。 |
listCasePassages | 判決を番号付きの抜粋として返します。ページを移動したり、Randnummer に直接移動したりできます。 |
getChanges | 最近、本文が変更された条文を JSON 形式の最新情報フィードとして返します。 |
getCoverage | コーパスの収録内容と、あらゆる回答を解釈する際に考慮すべき制限を返します。 |
すべてのツールは読み取り専用です。各回答は、それが何であるか だけでなく、何ではないかも示します。バージョンの日付は最初に確認された日付であり、施行日ではありません。条文バージョンのアーカイブには収録開始点があり、条文に関する回答には必ずその旨が記載されます。州法の条文について引用グラフの値がゼロの場合は、「引用されたことがない」ではなく「インデックス未登録」と表示されます。また、3 種類の未検出(not_in_corpus、outside_coverage、known_missing)をひとまとめにすることはありません。各ツールの完全な仕様は、その説明(tools/list)に記載されています。
ホスト型サーバーを使う(推奨)
API キーも登録も不要です。Streamable HTTP に対応する MCP クライアントを次の URL に接続してください。
https://recht.nulegal.eu/v1/mcp
Claude Code:
claude mcp add --transport http nulegal-recht https://recht.nulegal.eu/v1/mcp
JSON で設定するクライアントの場合:
{
"mcpServers": {
"nulegal-recht": { "type": "http", "url": "https://recht.nulegal.eu/v1/mcp" }
}
}
サービスとその REST API に関する開発者向けドキュメント: https://recht.nulegal.eu/developers。
ローカルで実行する
Python 3.12 以降と uv が必要です。このパッケージにサードパーティ製の実行時依存関係はありません。
git clone https://github.com/nulegal-startup/recht-mcp
cd recht-mcp
uv run recht-mcp # stdio
uv run recht-mcp --http # http://127.0.0.1:8765/mcp で Streamable HTTP を使用
チェックアウトせずに実行する場合:
uvx --from git+https://github.com/nulegal-startup/recht-mcp recht-mcp
stdio サーバーを起動するクライアントの場合:
{
"mcpServers": {
"nulegal-recht": {
"command": "uvx",
"args": ["--from", "git+https://github.com/nulegal-startup/recht-mcp", "recht-mcp"]
}
}
}
オプション:--http、--host(デフォルトは 127.0.0.1)、--port(デフォルトは 8765)、
--path(デフォルトは /mcp)、--base-url(または RECHT_MCP_BASE_URL。デフォルトは
https://recht.nulegal.eu)、--timeout、--log-level。ローカル HTTP サーバーは
ループバックにバインドされ、ループバック以外を送信元とするブラウザーリクエストを拒否します。
ローカルサーバーは、公開 REST API 経由でホスト版と同じデータを読み込み、文書化された 2 つの例外
(簡略化された引用構文と、条文が見つからない場合に other_laws のヒントを返さないこと)を除き、
同じ回答を返します。詳しくは docs/DESIGN.md を参照してください。
開発
uv sync
uv run pytest -q # オフラインでユニットテストを実行
RECHT_MCP_LIVE=1 uv run pytest -q tests/test_live.py # recht.nulegal.eu に対して実行
ライブテストでは、すべてのツールをローカルサーバー経由で呼び出し、複数の回答をホスト版エンドポイントの回答と比較します。
データ
ホスト版エンドポイントが提供する法令コーパス(その構成と選定、条文と判決の関連付け、バージョン履歴)は、 このコードとは別に CC BY 4.0 の下でライセンスされています。 帰属表示が必要です:「出典:nu:legal – recht.nulegal.eu」。留保事項を含む利用条件は、 https://recht.nulegal.eu/lizenz および https://recht.nulegal.eu/nutzungsbedingungen に記載されています。
テキストは公式ではない閲覧用の複製です。法令の拘束力を持つ本文は官報に掲載されたものであり、
各法令の回答にその情報が記載されています(fundstelle、authoritative_source)。
貢献とセキュリティ
問題の報告は歓迎しますが、外部からのプルリクエストはまだ受け付けていません。CONTRIBUTING.md を参照してください。 脆弱性は SECURITY.md の説明に従って、非公開で報告してください。
ライセンス
このリポジトリ内のコードは、GNU Affero General Public License のバージョン 3 のみ(AGPL-3.0-only)でライセンスされています。
詳しくは LICENSE を参照してください。
ホスト版エンドポイントが提供する法令コーパスは、帰属表示を条件として CC BY 4.0 の下で別途ライセンスされています (データ を参照)。
nu:legal の名称とロゴはライセンス対象ではありません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。