H/M Content Credentials Evidence Verifier

Free C2PA 2.4 triage and reproducible official trust snapshot. No media, keys, or payment.

Should I use this

Quality & Safety

A
Description quality
97%
Schema completeness
75%
Naming quality
77%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (7)

  • LOWTool 'get_content_credentials_capabilities' name length outside 3-30 rangein get_content_credentials_capabilities
  • LOWTool 'triage_c2pa_validation_statuses' name length outside 3-30 rangein triage_c2pa_validation_statuses
  • LOWTool 'run_content_credentials_self_check' name length outside 3-30 rangein run_content_credentials_self_check
  • LOWTool 'verify_content_credentials_envelope' name length outside 3-30 rangein verify_content_credentials_envelope
  • LOWTool 'verify_content_credentials_audit' name length outside 3-30 rangein verify_content_credentials_audit
  • LOWTool 'create_content_credentials_policy_profile' name length outside 3-30 rangein create_content_credentials_policy_profile
  • LOWTool 'verify_content_credentials_policy_decision' name length outside 3-30 rangein verify_content_credentials_policy_decision

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,236Tokens (tool definitions)
~3.0 KBTypical response size
Moderate attention impact (1.75% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "content-credentials": {
      "url": "https://agents.hogarmas.net/mcp/content-credentials"
    }
  }
}

Remote endpoints

https://agents.hogarmas.net/mcp/content-credentialsstreamable-http

What it can do

Tool inventory

Tools (7)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢get_content_credentials_capabilities

Returns the free tools, byte limits, privacy behavior and interpretation boundaries before any evidence JSON is submitted.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢triage_c2pa_validation_statuses(codes, statusCodes)

Classifies up to 200 C2PA validation status observations against the complete 2.4 standard catalog, flags class mismatches, separates custom codes and returns bounded remediation. Accepts codes or crJSON-style status groups; no media, URL fetching, authentication or payment.

Input Schema

{
  "type": "object",
  "properties": {
    "codes": {
      "description": "Unclassified C2PA status code strings",
      "maxItems": 200,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 160
      }
    },
    "statusCodes": {
      "description": "crJSON-style success, informational and failure arrays",
      "type": "object",
      "properties": {
        "success": {
          "maxItems": 200,
          "type": "array",
          "items": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 160
              },
              {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 160
                  },
                  "url": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "explanation": {
                    "type": "string",
                    "maxLength": 2000
                  }
                },
                "required": [
                  "code"
                ]
              }
            ]
          }
        },
        "informational": {
          "maxItems": 200,
          "type": "array",
          "items": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 160
              },
              {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 160
                  },
                  "url": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "explanation": {
                    "type": "string",
                    "maxLength": 2000
                  }
                },
                "required": [
                  "code"
                ]
              }
            ]
          }
        },
        "failure": {
          "maxItems": 200,
          "type": "array",
          "items": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "maxLength": 160
              },
              {
                "type": "object",
                "properties": {
                  "code": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 160
                  },
                  "url": {
                    "type": "string",
                    "maxLength": 2048
                  },
                  "explanation": {
                    "type": "string",
                    "maxLength": 2000
                  }
                },
                "required": [
                  "code"
                ]
              }
            ]
          }
        }
      }
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "schema": {
      "type": "string",
      "const": "hm.c2pa-status-triage.v1"
    },
    "ruleset": {
      "type": "string"
    },
    "state": {
      "type": "string",
      "enum": [
        "no-status-codes",
        "failure-observed",
        "review-required",
        "vendor-review-required",
        "informational-review",
        "no-standard-failure-observed"
      ]
    },
    "summary": {
      "type": "string"
    },
    "counts": {
      "type": "object",
      "properties": {
        "observations": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "uniqueCodes": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "success": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "informational": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "failure": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "unclassified": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "standard": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "customOrUnknown": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "invalidFormat": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "classMismatches": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        }
      },
      "required": [
        "observations",
        "uniqueCodes",
        "success",
        "informational",
        "failure",
        "unclassified",
        "standard",
        "customOrUnknown",
        "invalidFormat",
        "classMismatches"
      ],
      "additionalProperties": false
    },
    "affectedDomains": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "domain": {
            "type": "string"
          },
          "codes": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          },
          "failures": {
            "type": "integer",
            "minimum": 0,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "domain",
          "codes",
          "failures"
        ],
        "additionalProperties": false
      }
    },
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "classification": {
            "type": "string",
            "enum": [
              "standard",
              "custom-or-unknown",
              "invalid-format"
            ]
          },
          "effectiveClass": {
            "type": "string",
            "enum": [
              "success",
              "informational",
              "failure",
              "unclassified"
            ]
          },
          "standardClass": {
            "anyOf": [
              {
                "type": "string",
                "enum": [
                  "success",
                  "informational",
                  "failure"
                ]
              },
              {
                "type": "null"
              }
            ]
          },
          "observedClasses": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "success",
                "informational",
                "failure"
              ]
            }
          },
          "classMismatch": {
            "type": "boolean"
          },
          "occurrences": {
            "type": "integer",
            "exclusiveMinimum": 0,
            "maximum": 9007199254740991
          },
          "domain": {
            "type": "string"
          },
          "scope": {
            "type": "string"
          },
          "meaning": {
            "type": "string"
          },
          "nextAction": {
            "type": "string"
          },
          "submittedContext": {
            "type": "object",
            "properties": {
              "urlPresent": {
                "type": "boolean"
              },
              "explanationPresent": {
                "type": "boolean"
              },
              "returned": {
                "type": "boolean",
                "const": false
              }
            },
            "required": [
              "urlPresent",
              "explanationPresent",
              "returned"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "code",
          "classification",
          "effectiveClass",
          "standardClass",
          "observedClasses",
          "classMismatch",
          "occurrences",
          "domain",
          "scope",
          "meaning",
          "nextAction",
          "submittedContext"
        ],
        "additionalProperties": false
      }
    },
    "source": {
      "type": "object",
      "properties": {
        "specification": {
          "type": "string"
        },
        "specificationVersion": {
          "type": "string",
          "const": "2.4"
        },
        "statusCodeReference": {
          "type": "string"
        },
        "crJsonReference": {
          "type": "string"
        },
        "catalogEntries": {
          "type": "number",
          "const": 115
        },
        "license": {
          "type": "string"
        }
      },
      "required": [
        "specification",
        "specificationVersion",
        "statusCodeReference",
        "crJsonReference",
        "catalogEntries",
        "license"
      ],
      "additionalProperties": false
    },
    "privacy": {
      "type": "object",
      "properties": {
        "sourceMediaAccepted": {
          "type": "boolean",
          "const": false
        },
        "urlsReturned": {
          "type": "boolean",
          "const": false
        },
        "submittedExplanationsReturned": {
          "type": "boolean",
          "const": false
        },
        "inputPersistedByCore": {
          "type": "boolean",
          "const": false
        }
      },
      "required": [
        "sourceMediaAccepted",
        "urlsReturned",
        "submittedExplanationsReturned",
        "inputPersistedByCore"
      ],
      "additionalProperties": false
    },
    "limitations": {
      "type": "object",
      "properties": {
        "validatesAsset": {
          "type": "boolean",
          "const": false
        },
        "validatesManifest": {
          "type": "boolean",
          "const": false
        },
        "verifiesSignature": {
          "type": "boolean",
          "const": false
        },
        "establishesSignerTrust": {
          "type": "boolean",
          "const": false
        },
        "determinesTruth": {
          "type": "boolean",
          "const": false
        },
        "infersCustomCodeMeaning": {
          "type": "boolean",
          "const": false
        },
        "absenceOfFailureProvesValidity": {
          "type": "boolean",
          "const": false
        }
      },
      "required": [
        "validatesAsset",
        "validatesManifest",
        "verifiesSignature",
        "establishesSignerTrust",
        "determinesTruth",
        "infersCustomCodeMeaning",
        "absenceOfFailureProvesValidity"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schema",
    "ruleset",
    "state",
    "summary",
    "counts",
    "affectedDomains",
    "items",
    "source",
    "privacy",
    "limitations"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢run_content_credentials_self_check

Runs a deterministic, zero-input check of valid evidence, tamper detection and audit-chain verification using a synthetic fixture. No source media or caller data is used.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢verify_content_credentials_envelope(envelope)

Checks the schema, privacy boundaries and canonical SHA-256 digest of an H/M evidence envelope. It does not inspect source media or authenticate an issuer.

Input Schema

{
  "type": "object",
  "properties": {
    "envelope": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {},
      "description": "Privacy-minimized H/M evidence JSON envelope. Source media is not accepted."
    }
  },
  "required": [
    "envelope"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢verify_content_credentials_audit(envelope)

Checks report identity, source-report digest and the local custody hash chain. It does not prove operator identity, authorship or factual truth.

Input Schema

{
  "type": "object",
  "properties": {
    "envelope": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {},
      "description": "Privacy-minimized H/M evidence JSON envelope. Source media is not accepted."
    }
  },
  "required": [
    "envelope"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢create_content_credentials_policy_profile(preset, actions, name, purpose)

Creates one versioned policy profile from a fixed preset and optional rule overrides. It accepts no source media or evidence and does not authenticate the policy author.

Input Schema

{
  "type": "object",
  "properties": {
    "preset": {
      "type": "string",
      "enum": [
        "editorial-review",
        "trusted-distribution",
        "archive-preservation",
        "open-research"
      ]
    },
    "actions": {
      "description": "Optional allow, review or hold overrides keyed by a published policy rule ID",
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string",
        "enum": [
          "allow",
          "review",
          "hold"
        ]
      }
    },
    "name": {
      "type": "string",
      "maxLength": 120
    },
    "purpose": {
      "type": "string",
      "maxLength": 400
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢verify_content_credentials_policy_decision(decision)

Checks the policy checksum, decision checksum, every per-item rule outcome and aggregate counts. It does not inspect source media, authenticate the sender or certify compliance.

Input Schema

{
  "type": "object",
  "properties": {
    "decision": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {},
      "description": "H/M policy decision JSON exported by the browser-local Evidence Policy Lab"
    }
  },
  "required": [
    "decision"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Recommended Prompts

retrieve_data
Get details about [item] from H/M Content Credentials Evidence Verifier
Expected tools: get_content_credentials_capabilities
fetch_info
Fetch [information type] using H/M Content Credentials Evidence Verifier
Expected tools: get_content_credentials_capabilities

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded7 tools
verifiedversion not recorded7 tools
verifiedversion not recorded7 tools
verifiedversion not recorded7 tools
verifiedversion not recorded7 tools
verifiedversion not recorded7 tools