mcpField
D
data-inventory-mapping

data-inventory-mapping

github.com/mukul975Data & databases32336 installsUpdated 32w ago
Repository

About data-inventory-mapping

This skill describes how to build a personal data inventory and map data flows for privacy, compliance, and data governance teams. It connects system discovery and data-element classification with legal-basis mapping and GDPR Article 30 records of processing.

Key features

  1. 01Discover systems that process personal data
  2. 02Extract and classify system data elements
  3. 03Map internal and external data flows
  4. 04Link processing purposes to legal bases
  5. 05Consolidate and maintain the inventory

Use cases

  1. 01Prepare data for GDPR Article 30 processing records
  2. 02Trace personal data moving between systems
  3. 03Identify data transfers requiring safeguards
  4. 04Connect classifications to security and retention controls

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/mukul975/privacy-data-protection-skills --skill data-inventory-mapping

After installing, type/data-inventory-mappingin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

assets/
template.md
references/
standards.md
workflows.md
scripts/
process.py

Details

From the project README

Data Inventory and Mapping for Classification

Overview

A data inventory is the foundational artefact for privacy compliance, providing a structured catalogue of all personal data processing activities across the organisation. GDPR Article 30 mandates that controllers maintain Records of Processing Activities (RoPA) containing specific fields including categories of personal data, purposes of processing, categories of recipients, and transfers to third countries. This skill focuses on building the data inventory that feeds into the RoPA, with emphasis on system-by-system discovery, data flow mapping, classification linkage, and legal basis assignment per data category.

Art. 30 Required Content for Controllers — Art. 30(1)

Required FieldDescriptionClassification Relevance
(a) Controller identityName and contact details of controller, joint controller, representative, DPOAdministrative — not classification-dependent
(b) Purposes of processingSpecific purpose for each processing activityPurpose determines applicable lawful basis and drives classification-to-handling mapping
(c) Categories of data subjectsTypes of individuals whose data is processed (customers, employees, applicants)Data subject category affects applicable protections (e.g., children, employees)
(d) Categories of personal dataTypes of personal data processed per activityDirect output of data classification — personal, special category, criminal
(e) Categories of recipientsWho receives the data, including processorsDetermines transfer and sharing controls
(f) Transfers to third countriesInternational transfers and safeguard mechanismsTriggers Chapter V compliance requirements
(g) Retention periodsEnvisaged time limits for erasure of different categoriesClassification tier drives retention policy
(h) Security measuresGeneral description of Art. 32 technical and organisational measuresClassification tier determines security control level

Data Inventory Construction Methodology

Phase 1: System Discovery (Weeks 1-3)
Step 1: Enterprise Application Inventory

Build a complete list of systems that process personal data:

Discovery MethodSourcesOutput
IT asset management systemCMDB, ServiceNow, LansweeperRegistered applications and servers
Procurement recordsVendor contracts, SaaS subscriptions, licence managementThird-party systems processing data
Network traffic analysisFirewall logs, proxy logs, DNS queriesUndocumented data flows to external services
Shadow IT discoveryCloud access security broker (CASB) logs, expense reports for SaaS toolsUnauthorised or unknown applications
Department interviewsBusiness unit leads, data stewardsDepartmental tools and local databases
Vanguard Financial Services — System Inventory Example
SystemTypeDepartmentData SubjectsClassification Priority
Salesforce CRMSaaSSales, Customer ServiceCustomers, prospectsTier 1
Workday HRSaaSHuman ResourcesEmployees, candidatesTier 1
ADP GlobalViewSaaSPayrollEmployeesTier 1
Oracle Data WarehouseOn-premisesData EngineeringAll subjectsTier 1
SharePoint OnlineSaaSAll departmentsAll subjectsTier 1
NICE ActimizeOn-premisesComplianceCustomers, counterpartiesTier 1
HID Global AccessOn-premisesFacilitiesEmployees, contractorsTier 2
Cority Occ HealthSaaSOccupational HealthEmployeesTier 2
Bloomberg TerminalSaaSTradingCounterpartiesTier 2
Microsoft TeamsSaaSAll departmentsEmployees, external contactsTier 2
Adobe AnalyticsSaaSMarketingWebsite visitorsTier 2
ServiceNow ITSMSaaSITEmployeesTier 3
Confluence WikiSaaSEngineeringEmployeesTier 3
Phase 2: Data Element Mapping (Weeks 3-6)

For each system, document every data element:

Step 2: Schema Extraction
  • Structured databases: Extract schema metadata (table names, column names, data types) via SQL metadata queries or data catalogue APIs
  • SaaS applications: Use API documentation to enumerate data objects and fields
  • Unstructured repositories: Catalogue document types and their typical personal data content
  • Automated discovery: Deploy scanning tools to identify PII in all repositories (see auto-data-discovery skill)
Step 3: Data Element Classification

For each data element, assign:

  • Personal data classification: PERSONAL_DIRECT, PERSONAL_INDIRECT, SPECIAL_CATEGORY, CRIMINAL_ART10, PSEUDONYMISED, ANONYMISED, NON_PERSONAL (see personal-data-test skill)
  • Classification tier: Public, Internal, Confidential, Restricted (see classification-policy skill)
  • Art. 6 lawful basis: The legal basis for processing this element for each stated purpose
  • Art. 9(2) condition: If special category, the specific processing condition
Phase 3: Data Flow Mapping (Weeks 6-9)
Step 4: Intra-System Data Flows

Document how data moves within the organisation:

Customer Onboarding Data Flow — Vanguard Financial Services

Customer ──[web form]──► Salesforce CRM
                              │
                    ┌─────────┼──────────┐
                    ▼         ▼          ▼
              Oracle DW   SharePoint   Email (welcome)
              (analytics) (documents)  (notifications)
                    │
                    ▼
              Adobe Analytics
              (web behaviour)
Step 5: External Data Flows (Third-Party Sharing)

Document all data sharing with external parties:

Sender SystemRecipientData CategoriesTransfer MechanismLegal Safeguard
Salesforce CRMSalesforce Inc. (processor)Customer personal dataSaaS hostingStandard Contractual Clauses (2021/914)
Workday HRWorkday Inc. (processor)Employee personal + special categorySaaS hostingEU-US Data Privacy Framework
ADP PayrollHMRC (statutory recipient)Employee financial dataSecure file transferLegal obligation Art. 6(1)(c)
NICE ActimizeNCA (statutory recipient)Customer AML data (Art. 10)SAR Online portalLegal obligation POCA 2002
Oracle DWDeloitte (auditor)Anonymised financial dataEncrypted file transferJoint controller agreement
Phase 4: Legal Basis and Purpose Mapping (Weeks 9-11)
Step 6: Purpose-Basis Matrix

For each processing activity, map data categories to purposes and legal bases:

Processing ActivityData CategoryPurposeArt. 6 BasisArt. 9(2) / Art. 10
Customer account managementName, email, address, account numberContract performanceArt. 6(1)(b)N/A
KYC identity verificationName, DOB, ID documents, addressLegal obligation (MLR 2017)Art. 6(1)(c)N/A
Employee payrollName, NINO, bank details, salaryContract performanceArt. 6(1)(b)N/A
Employee diversity monitoringEthnicity, sexual orientationEquality monitoringArt. 6(1)(a) / 6(1)(c)Art. 9(2)(a) / 9(2)(b)
Building access controlFingerprint templatePhysical securityArt. 6(1)(f)Art. 9(2)(a)
AML monitoringTransaction patterns, SAR dataLegal obligation (POCA 2002)Art. 6(1)(c)Art. 10 — DPA Sch.1 Pt.2 para 10
Website analyticsIP address, cookies, browsingLegitimate interestsArt. 6(1)(f)N/A
Marketing communicationsEmail, preferencesConsentArt. 6(1)(a)N/A
Phase 5: Documentation and Maintenance (Ongoing)
Step 7: Inventory Consolidation

Consolidate all discovery into the formal data inventory:

  • One record per data element per system
  • Cross-referenced to processing activities in the RoPA
  • Classification labels applied per element
  • Review dates set per classification tier
Step 8: Ongoing Maintenance
Maintenance ActivityFrequencyResponsible
Automated discovery scan reconciliationMonthlyPrivacy Engineering
New system onboarding inventoryPer new system deploymentSystem Owner + Privacy Analyst
Department data steward reviewQuarterlyData Stewards
Full inventory accuracy auditAnnuallyDPO
Classification reclassification reviewAnnually (borderline: 6-monthly)Privacy Analyst

Data Flow Diagram Standards

Notation Convention (Based on DFD Level 0/1)
SymbolMeaning
RectangleExternal entity (data subject, third party, regulator)
Rounded rectangleProcess (system or application)
Open rectangle (two parallel lines)Data store (database, file share)
ArrowData flow (labelled with data categories)
Dashed arrowOptional or conditional data flow
Red borderContains special category or criminal data
Blue borderInternational transfer

Enforcement Precedents

  • Österreichische Datenschutzbehörde (Austrian DPA) v Local Bakery Chain (2020): EUR 4,000 fine for failure to maintain Art. 30 records. The DPA noted that even small organisations must maintain processing records.
  • CNIL v Sergic (2019): EUR 400,000 fine, partly for inadequate data mapping — the controller could not demonstrate it knew where personal data was stored, leading to a data breach going undetected.
  • ICO v British Airways (2020): GBP 20 million fine, where inadequate data mapping contributed to delayed breach detection — the controller lacked visibility into personal data flows through its web infrastructure.

Integration Points

  • auto-data-discovery: Automated scanning feeds data elements into the inventory
  • personal-data-test: Classification decisions applied per data element in the inventory
  • special-category-data: Art. 9 data flagged and mapped to processing conditions
  • criminal-data-handling: Art. 10 data identified and mapped to national law authorisation
  • data-lineage-tracking: Lineage graphs extend the static inventory with dynamic flow information

Comments

Markdown supported