OpenChainGraph Suite · wave 23 · compliance_mandate

AI Content Disclosure Conformance (EU AI Act Art. 50)

Note (dated 2026-08-04): a chain composes independent computations performed in an analytical order. No step's output is carried into the next step by the execution model; each step computes from its own declared inputs. This is true of every chain on this site, including chains whose per-step copy below reads as a data handoff.

Check Art. 50(2) IPTC digitalSourceType marking adequacy and deepfake disclosure (art-126) → verify both C2PA metadata and imperceptible watermark dual-layer are present per Code of Practice (art-127) → validate hard-binding vs soft-binding consistency and confirm asset byte-hash matches (art-128). Applies 2 Aug 2026. Penalty: €15M / 3% global turnover.

OpenChainGraph · 3 Steps EU AI Act Art. 50 IPTC digitalSourceType · C2PA W3C VC §13.11 Hash-Anchored §4 chain_depth:3 · Zero PII
Chain Topology — AI Content Disclosure Conformance
art-126 Art. 50 Marking Checker art-127 Dual-Layer Verifier art-128 Binding Assertion Validator ⊣
§4 Execution Hash · Chain Definition Anchor
execution_hash:computing…
Chain Stages · 3 Steps
1ROOT · D0node
Art. 50 marking verdict feeds dual-layer verification
MCP Call · check_ai_act_art50_marking
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "check_ai_act_art50_marking",
    "arguments": {
      "actions": [
        {
          "action": "c2pa.created",
          "digitalSourceType": "trainedAlgorithmicMedia"
        }
      ],
      "machine_readable_marking_present": true,
      "is_deepfake": false,
      "deepfake_disclosure_present": false
    }
  },
  "id": 1
}
↓
2MIDDLE · D1node
Dual-layer verdict feeds binding assertion validation
MCP Call · verify_dual_layer_disclosure
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "verify_dual_layer_disclosure",
    "arguments": {
      "c2pa_metadata_present": true,
      "watermark_present": true,
      "watermark_method": "synthid"
    }
  },
  "id": 2
}
↓
3TERMINAL · D2node
Exports binding verdict with execution_hash — final stage
MCP Call · validate_content_binding_assertion
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "name": "validate_content_binding_assertion",
    "arguments": {
      "binding_type": "hard",
      "asset_bytes_hash": "sha256:abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890",
      "claimed_hard_binding_hash": "sha256:abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890",
      "soft_binding_identifier_present": false
    }
  },
  "id": 3
}
Export Artifacts
Download the §4 chain definition artifact or the §13.11 W3C VC view. art-126, art-127, and art-128 each individually support W3C VC export.

Ask your agent

Copy this paragraph into Claude, OpenClaw, or any MCP-aware agent to run this whole workflow on the server and check one field that answers a real question.

Question: The images we ship carry a watermark and signed metadata. If a pixel changes, does the content binding flag it?
Run the AINumbers MCP tool `run_chain` with {"chain":"ai-content-disclosure-conformance"} and read `art-128-content-binding-assertion-validator.verdict`.
Verify: call `verify_execution_hash` (https://mcp.ainumbers.co/mcp) with `claimed_hash` set to `composite_execution_hash` and the full `composite_artifact`.
Ledger, for a human re-check: https://ledger.ainumbers.co/
PII rule: send synthetic or anonymised inputs only. The MCP server runs these kernels and logs no payloads.
Chain page: https://ainumbers.co/chaingraph/chains/ai-content-disclosure-conformance.html