mcpField
P
privacy-notice-generator

privacy-notice-generator

github.com/borgheiドキュメント1.0k63 回インストール5 日前に更新
リポジトリ

privacy-notice-generator について

privacy-notice-generatorは、EU・EEAの指定法域と対象者に応じたGDPRプライバシー通知の作成・確認を支援するスキルです。法域別のひな形を生成し、開示の不足を検出します。出力は情報提供であり、法的助言ではありません。

主な機能

  1. 01種類と法域に応じた通知ひな形の生成
  2. 02GDPR第13条・第14条の開示確認
  3. 03適合スコアと不足項目の報告
  4. 04法域別・対象者別のチェック
  5. 05Cookie、移転、AI関連セクションの追加

活用シーン

  1. 01ウェブサイトや従業員向け通知の作成
  2. 02通知におけるGDPR開示漏れの確認
  3. 03複数法域に合わせた通知の調整

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/borghei/claude-skills --skill privacy-notice-generator

インストール後、Claude Code で/privacy-notice-generatorを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
compliance_verification.md
jurisdiction_requirements.md
notice_types_guide.md
scripts/
notice_compliance_checker.py
privacy_notice_scaffolder.py

詳細

⚠️ EXPERIMENTAL — このスキルは、教育および情報提供のみを目的として提供されています。法的助言を構成するものではありません。利用に関するすべての責任はユーザーが負います。出力に基づいて行動する前に、資格を有する法律の専門家に相談してください。

プライバシー通知ジェネレーター

EU/EEA の各法域および対象者に対応した、GDPR 準拠のプライバシー通知の作成に役立つツールとガイダンスです。複数段階のコンプライアンス検証を備えています。


目次


まず確認すること

通知を生成する前に、以下の入力内容を確認してください。不明または曖昧な項目があれば、推測せずに質問してください。

  • 通知の種類 — website、applicant、employee、b2b、b2c、または combined。表示するセクションや対象者固有の内容(例:employee の労使協議会/モニタリング、b2b の Art. 14 に基づく情報源の開示)を選択します。
  • 法域 — DE/FR/AT/IT/ES/NL/BE/IE/UK。コンプライアンスチェッカーが評価する地域固有の要件(DE の Widerspruchsrecht/TDDDG、FR の CNIL、UK の ICO)が追加されます。
  • 処理目的ごとの法的根拠 — Art. 13(1)(c) では、目的ごとに具体的な法的根拠が必要です。「適用法令」のような一般的な記載ではチェックに合格しません。
  • 特別な機能:Cookie/AI/国際移転 — セクション 6、12、13、および AI Act Art. 50 の透明性に関する開示の有効/無効を切り替えます。

停止ルール:出力に最も大きく影響する2~3項目だけを質問してください。ユーザーが「そのまま作成して」と言った場合は、作成を進め、通知の冒頭に前提条件を記載してください。

ツール

プライバシー通知のひな形作成ツール

法域固有のプレースホルダーと法的参照をあらかじめ入力した、必要なすべてのセクションを含むプライバシー通知のひな形を生成します。

# Website privacy notice for German jurisdiction
python scripts/privacy_notice_scaffolder.py \
  --notice-type website \
  --jurisdiction DE \
  --data-categories personal,contact,usage,cookies \
  --legal-bases consent,contract,legitimate_interests \
  --has-cookies \
  --has-international-transfers

# Employee notice for French jurisdiction with AI processing
python scripts/privacy_notice_scaffolder.py \
  --notice-type employee \
  --jurisdiction FR \
  --data-categories personal,employment,financial,health \
  --legal-bases contract,legal_obligation,consent \
  --has-ai

# B2C customer notice for UK with all features
python scripts/privacy_notice_scaffolder.py \
  --notice-type b2c \
  --jurisdiction UK \
  --data-categories personal,contact,financial,usage,marketing \
  --legal-bases consent,contract,legitimate_interests \
  --has-cookies --has-ai --has-international-transfers \
  --json

対応する通知の種類:

種類対象者主なセクション
websiteウェブサイト/アプリの訪問者Cookie、分析、トラッキング技術
applicant求職者採用データ、人材プール、保存期間
employee従業員労使協議会、IT モニタリング、BYOD、人事データ
b2bビジネスパートナーArt. 14 の要件、情報源の開示
b2cB2C 顧客ソフトオプトイン、決済処理、ロイヤルティ
combined複数の対象者対象者固有の注記を付した統合セクション

対応する法域: DE、FR、AT、IT、ES、NL、BE、IE、UK

通知の13セクション構成:

  1. 管理者の身元と連絡先
  2. DPO の連絡先
  3. 収集するデータのカテゴリー
  4. 目的と法的根拠
  5. 受領者とそのカテゴリー
  6. 国際移転
  7. 保存期間
  8. データ主体の権利
  9. 同意を撤回する権利
  10. SA に苦情を申し立てる権利
  11. 自動化された意思決定
  12. Cookie とトラッキング(該当する場合)
  13. AI による処理(該当する場合)

通知コンプライアンスチェッカー

プライバシー通知のテキストを Art. 13/14 GDPR の要件に照らして検証し、不足または不完全な要素とコンプライアンススコアを出力します。

# Check a privacy notice file
python scripts/notice_compliance_checker.py privacy_notice.md

# Check with jurisdiction-specific requirements
python scripts/notice_compliance_checker.py privacy_notice.md --jurisdiction DE

# Check with notice type for type-specific validation
python scripts/notice_compliance_checker.py privacy_notice.md \
  --jurisdiction DE --notice-type employee

# JSON output
python scripts/notice_compliance_checker.py privacy_notice.md \
  --jurisdiction FR --notice-type website --json

チェック項目:

カテゴリーチェック対象の要素
Art. 13 の必須項目管理者の身元、DPO の連絡先、目的、法的根拠、受領者、移転、保存期間、8つすべての権利、自動化された意思決定、同意の撤回、SA への苦情申し立て
Art. 14 の追加項目データの情報源、取得したデータのカテゴリー(間接収集の場合)
全般Art. 21 に基づく異議を申し立てる権利の明確な提示、平易な言葉、プレースホルダーの不使用、一貫した書式
法域固有DE:Widerspruchsrecht の明確な提示、TDDDG。FR:CNIL の勧告。UK:ICO のガイダンス

出力:

  • コンプライアンススコア(0~100)
  • 不足している要素(必ず修正)
  • 不完全な要素(改善を推奨)
  • 法域固有の指摘事項
  • 種類固有の指摘事項

リファレンスガイド

通知タイプガイド

references/notice_types_guide.md

6 種類の通知に関する詳細なガイダンス:

  • ウェブサイト/アプリの通知におけるプラットフォームのサブタイプ
  • 申請者固有のデータカテゴリーと保持期間
  • 労使協議会およびモニタリング要件を含む従業員向け通知
  • B2B における第 14 条の要件と情報源の開示
  • B2C のソフトオプトインと支払い処理
  • 複合通知の統合戦略
管轄区域ごとの要件

references/jurisdiction_requirements.md

9 つの管轄区域に固有の要件:

  • SA の詳細と登録要件
  • GDPR の基本要件を超える要件
  • 標準的な文言の推奨事項
  • 管轄区域ごとの保持期間に関するガイダンス
コンプライアンス検証

references/compliance_verification.md

5 層の検証システム:

  • 管轄区域固有のチェック
  • 第 13 条/第 14 条の必須開示事項
  • 一般的なコンプライアンスチェック
  • タイプ固有のチェック
  • AI Act のコンプライアンス
  • 生成後のチェックリスト
  • ライティングスタイルガイド

ワークフロー

ワークフロー 1:SCOPE → INTAKE → DRAFT → VERIFY → DELIVER
Step 1: SCOPE — Determine notice parameters
        → Notice type (website/applicant/employee/b2b/b2c/combined)
        → Jurisdiction (DE/FR/AT/IT/ES/NL/BE/IE/UK)
        → Special features (cookies, AI, international transfers)

Step 2: INTAKE — Gather information
        → Controller identity and DPO
        → Data inventory (categories, sources)
        → Purposes and legal bases per category
        → Recipients and processors
        → Transfer destinations and mechanisms
        → Retention periods per category
        → Cookie/tracking inventory (if website)
        → AI processing details (if applicable)

Step 3: DRAFT — Generate notice skeleton
        → python scripts/privacy_notice_scaffolder.py [params]
        → Fill in placeholders with actual information from intake
        → Add jurisdiction-specific clauses
        → Apply writing style guide (you/your, short sentences, tables)

Step 4: VERIFY — Run compliance checker
        → python scripts/notice_compliance_checker.py notice.md --jurisdiction [J] --notice-type [T]
        → Address all missing elements
        → Address incomplete elements
        → Review jurisdiction-specific findings

Step 5: DELIVER — Finalize and publish
        → Legal review sign-off
        → Technical review (links, formatting, accessibility)
        → Translation QA (if multilingual)
        → Publication with version control
        → Set review trigger calendar
ワークフロー 2:通知の更新
Step 1: Identify trigger (new processing, regulation change, annual review)
Step 2: Run compliance checker on current notice
Step 3: Identify gaps and required updates
Step 4: Draft updated sections
Step 5: Re-verify with compliance checker
Step 6: Notify data subjects of material changes
Step 7: Update version date and change log
ワークフロー 3:複数の管轄区域に対応する通知
Step 1: Generate base notice for primary jurisdiction
        → python scripts/privacy_notice_scaffolder.py --jurisdiction [primary] ...
Step 2: Check jurisdiction requirements for additional territories
        → See references/jurisdiction_requirements.md
Step 3: Add jurisdiction-specific supplements
        → DE: TDDDG telecom disclosures, DSK guidance
        → FR: CNIL cookie requirements, LIL specifics
        → UK: ICO guidance, UK transfer mechanisms
Step 4: Verify each jurisdiction version
        → python scripts/notice_compliance_checker.py notice_de.md --jurisdiction DE
        → python scripts/notice_compliance_checker.py notice_fr.md --jurisdiction FR
Step 5: Publish with language/jurisdiction switcher

トラブルシューティング

問題考えられる原因解決方法
通知が完全なのにコンプライアンススコアが低い管轄区域固有の要件が不足している(例:DE の Widerspruchsrecht が目立つ形で記載されていない)--jurisdiction フラグを指定してチェッカーを実行し、jurisdiction_requirements.md で地域固有の追加要件を確認します
スキャフォルダーがセクションを生成しすぎる複合通知タイプにすべての対象者向けセクションが含まれている複合タイプではなく具体的な通知タイプを使用するか、生成後に不要なセクションを削除します
直接収集なのに第 14 条に関する指摘があるチェッカーが B2B 通知タイプに対して第 14 条の要件を指摘している正しい動作です。B2B では間接収集がよく行われるため、情報源の開示を必ず含めてください
最終通知にプレースホルダーテキストが残っているテンプレートへの情報入力が完了していない[PLACEHOLDER] と {{variable}} のマーカーを検索し、公開前にすべて置き換えてください
従業員向け通知に Cookie セクションがない従業員向け通知タイプには、デフォルトで Cookie が含まれていない従業員向けシステムで Cookie/トラッキングを使用する場合は、--has-cookies フラグを追加します
AI セクションが生成されない--has-ai フラグがない--has-ai を指定してスキャフォルダーを再実行し、AI Act 第 50 条の透明性要件を確認します

成功基準

  • 第 13 条/第 14 条のコンプライアンススコア 100% — 必須開示事項がすべて含まれ、欠落項目がない
  • 管轄区域固有の要件を満たしている — コンプライアンスチェッカーにより、現地の SA 要件への対応が確認されている
  • タイプ固有の要件を満たしている — 通知に、対象者固有のすべてのデータ処理活動が記載されている
  • プレースホルダーテキストが残っていない — テンプレート変数がすべて実際の情報に置き換えられている
  • ライティングスタイルガイドに従っている — 「あなた/あなたの」を使った文体、短い文章、複雑な情報には表を使用、正確な法的引用
  • 法務レビューが完了している — 資格を有するプライバシー法務担当者が最終通知を承認している
  • 公開要件を満たしている — アクセシブルで、バージョンと日付が記載され、変更通知の仕組みがある

対象範囲と制限事項

対象範囲:

  • 9つの法域における6種類の通知のプライバシー通知の骨子を生成
  • GDPR第13条・第14条で必須とされる開示事項への準拠を確認
  • 法域固有の要件を検証(DE、FR、AT、IT、ES、NL、BE、IE、UK)
  • 通知の種類に応じたセクションを生成し、検証
  • AI Act第50条の透明性開示セクション
  • Cookieおよびトラッキング技術の開示セクション
  • 文体と平易な表現に関するガイダンス

対象範囲外:

  • 個別の法的根拠の選定に関する法的助言 — 資格を有するプライバシー専門家に相談してください
  • 翻訳サービス — このツールが生成するテンプレートは英語です。専門家による翻訳が必要です
  • Cookie同意の実装またはCMPの設定
  • DPIAの生成(dpia-assessment スキルを参照)
  • プライバシー通知のホスティングまたは公開インフラストラクチャ
  • GDPR以外のプライバシー通知形式(CCPAの収集時通知、LGPD通知)
  • 特定の業界向けの通知(医療、金融サービス、児童向けサービス)

アンチパターン

アンチパターン失敗する理由より良い方法
他社の内容をコピー&ペーストする取り扱うデータ、法域、法的根拠はそれぞれ異なるため、責任上の不備が生じるおそれがあります実際のパラメーターに基づいて骨子を生成し、組織固有の情報を記入します
すべての法域で同じ通知を使う法域固有の要件(DE TDDDG、FR CNIL、UK ICO)を見落とし、監督機関による執行を招きます各法域のスキャフォルダーを使用し、法域ごとの通知または補足資料を生成します
一般的な法的根拠を使う(「適用法に基づいてデータを処理します」)第13条第1項(c)では、目的ごとに具体的な法的根拠を示す必要があります。一般的な記述では要件を満たしません処理目的ごとに具体的な第6条第1項の根拠を対応付け、目的・根拠の表に記録します
作成後に見直さないデータ処理活動は変化し、規制も改正されるため、通知が不正確になります見直しの契機を設定し(compliance_verification.mdを参照)、コンプライアンスチェッカーを四半期ごとに実行します
法律用語を多用する前文第58項は明確で平易な表現を求めています。複雑な法律用語は要件を満たしません文体ガイドに従い、「あなた」を主語にした表現、短い文、表、例を使用します

ツールリファレンス

privacy_notice_scaffolder.py

通知の種類、法域、データ処理のパラメーターに基づいて、プライバシー通知の骨子を生成します。

フラグ必須説明
--notice-type <type>はい通知の種類:website、applicant、employee、b2b、b2c、combined
--jurisdiction <code>はい法域:DE、FR、AT、IT、ES、NL、BE、IE、UK
--data-categories <list>はいカンマ区切り:personal、contact、usage、cookies、financial、health、employment、marketing、biometric
--legal-bases <list>はいカンマ区切り:consent、contract、legal_obligation、legitimate_interests、vital_interests、public_task
--has-cookiesいいえCookieおよびトラッキングのセクションを含めます
--has-aiいいえAIおよび自動処理のセクションを含めます
--has-international-transfersいいえ国際移転のセクションを含めます
--jsonいいえJSON形式で出力します
notice_compliance_checker.py

第13条・第14条のGDPR要件に照らしてプライバシー通知を検証します。

フラグ必須説明
<notice_file>はいプライバシー通知ファイルのパス(Markdownまたはテキスト)
--jurisdiction <code>いいえ現地要件を適用する法域:DE、FR、AT、IT、ES、NL、BE、IE、UK
--notice-type <type>いいえ種類別チェックに使用する通知の種類:website、applicant、employee、b2b、b2c、combined
--jsonいいえJSON形式で出力します

コメント