e-Gov Law MCP Server v2 🏛️⚖️
Ultra Smart & Efficient - 日本政府e-Gov法令APIのための高性能Model Context Protocol (MCP) サーバー
🚀 v2の特徴: FastMCP準拠、Windows完全対応、58%コード削減、3層キャッシュ最適化、エンタープライズセキュリティ
✨ 主な特徴
🎯 インテリジェント法律検索
16基本法直接マッピング: 六法 + 現代重要法への瞬時アクセス
20略称自動変換: 道交法→道路交通法、労基法→労働基準法
複雑パターン対応: 「第325条の3」「第9条第2項第1号」等
4段階条文抽出: コンテンツスコアリングによる高精度抽出
⚡ ハイパフォーマンス
3層LRUキャッシュ: 法律検索(2h)、法律内容(1h)、条文(30m)
並行処理最適化: 50リクエスト/5.27秒の高速レスポンス
メモリ監視: psutil統合、自動クリーンアップ(512MB制限)
バッチ処理: 最大200件の一括検索対応
🛡️ エンタープライズセキュリティ
インジェクション防止: SQL、XSS、JNDI、コード実行を完全ブロック
入力検証: 長さ制限、特殊文字フィルタリング
API保護: レート制限、403 Forbidden応答
エラーマスキング: 内部情報漏洩防止
🌐 クロスプラットフォーム
Windows完全対応: psutilオプション、パス互換性
FastMCP準拠: Context logging、ToolError例外、自動シリアライゼーション
柔軟設定: YAML設定ファイル、プロンプト外部化
🛠️ 8つの高機能MCPツール
ツール | 機能 | 特徴 |
| 条文検索 | AI駆動パターンマッチング、漢数字対応 |
| 法律検索 | フィルタリング、ページネーション |
| キーワード検索 | フルテキスト検索、ハイライト |
| 法律全文取得 | サイズ制限対応(800KB)、XML/JSON |
| バッチ検索 | 最大200件、パフォーマンス統計 |
| キャッシュ最適化 | 頻出法律の事前読み込み |
| 監視 | リアルタイムパフォーマンス監視 |
| メンテナンス | 粒度別キャッシュ管理 |
📊 対応法令
🚀 高速アクセス対応(直接マッピング済み)
六法
憲法(昭和二十一年憲法)
民法(明治二十九年法律第八十九号)
刑法(明治四十年法律第四十五号)
商法(昭和二十三年法律第二十五号)
民事訴訟法(平成八年法律第百九号)
刑事訴訟法(昭和二十三年法律第百三十一号)
現代重要法
会社法、労働基準法、所得税法、法人税法
著作権法、特許法、道路交通法、建築基準法
独占禁止法、消費者契約法、特定受託事業者取引適正化法
🔍 略称検索対応
📈 実証された性能
🏆 テスト結果(40+テスト、65%カバレッジ)
✅ 機能テスト: 全ツール、エッジケース、境界値
✅ セキュリティテスト: インジェクション攻撃、不正ペイロード
✅ パフォーマンステスト: 並行性50/50成功、5.27秒
✅ 統合テスト: FastMCP機能、Windows互換性
📊 パフォーマンス指標
並行処理: 50リクエスト同時処理 → 100%成功
キャッシュヒット率: 主要法律で90%以上
レスポンス時間: 直接マッピング法律 < 1秒
メモリ効率: 512MB制限内で安定動作
🚀 クイックスタート
前提条件
uvをインストール:
インストール
Claude Desktop設定
設定ファイルの場所:
Windows:
%APPDATA%\Claude\claude_desktop_config.jsonmacOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonLinux:
~/.config/claude/claude_desktop_config.json
設定例:
💡 使用例
Claude Desktopでの基本使用
プログラム使用例
🔧 開発とテスト
開発環境セットアップ
テスト実行
コード品質
⚙️ 設定
環境変数
設定ファイル
config/laws.yaml: 法律マッピング、略称定義prompts/legal_analysis.md: 法的分析指導プロンプト
🏗️ アーキテクチャ
📝 API詳細
find_law_article
最も重要なツール - 高精度条文検索
対応パターン例:
"192"→ 第192条"第192条"→ 第192条"325条の3"→ 第325条の3"第9条第2項"→ 第9条第2項"第9条第2項第1号"→ 第9条第2項第1号
batch_find_articles
高速バッチ処理 - 最大200件の一括検索
🔧 トラブルシューティング
Windows環境トラブルシューティング
問題: "No module named 'yaml'" エラー
問題: "No module named 'psutil'" 警告
問題: FastMCPコマンドエラー
その他のWindows問題
パフォーマンス最適化
📚 参考リンク
🤝 貢献
リポジトリをフォーク
機能ブランチを作成:
git checkout -b feature/amazing-feature変更をコミット:
git commit -m 'feat: Add amazing feature'ブランチにプッシュ:
git push origin feature/amazing-featureプルリクエストを作成
貢献ガイドライン
テストカバレッジを維持(65%以上)
セキュリティテストを必須追加
FastMCP仕様準拠を確認
Windows互換性をテスト
📄 ライセンス
MIT License - 詳細は LICENSE ファイルを参照
🙏 謝辞
🚀 Ultra Smart & Efficient e-Gov Law MCP Server v2
日本法令検索の新しいスタンダード