C2PA Watermark & Provenance MCP server. Built with c2pa-python.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
C2PA Content Credentials MCP server β embed and verify machine-readable provenance for AI-generated assets, ahead of the EU AI Act Article 50 deadline (2 December 2026).
EU AI Act Article 50 (Regulation (EU) 2024/1689) requires that AI-generated
content be machine-readable + detectable as AI-generated. The
c2pa.ai_generated assertion is the C2PA spec's mandated way to do that.
The deadline is 2 December 2026 β about 6 months out. Companies that ship user-facing generative tools without C2PA support face fines up to β¬35M or 7% of global turnover.
This MCP wraps the official c2pa-python
SDK (β₯0.9.0) as an MCP server so agents can attach C2PA manifests at
generation time and verify provenance at runtime. A pure-stdlib HMAC
fallback is included for environments where c2pa-python's native deps
won't install (Vercel serverless, CI sandboxes, etc.).
sign_asset, verify_asset, statusc2pa.ai_generated assertionc2pa-python[evm] extrac2pa-watermark-vercel sibling repo| Tool | Purpose | Tier |
|---|---|---|
sign_asset | Embed a C2PA manifest into an asset, HMAC-signed | Pro |
verify_asset | Verify a manifest against its asset bytes | Free |
status | Report server health + native SDK availability | Free |
See the companion repo c2pa-watermark-vercel
for a serverless wrapper exposing /sign, /verify, /status routes.
c2pa.ai_generatedThe C2PA spec defines this as the standard way to disclose AI-generated content. EU AI Act Article 50 says AI content must be "machine-readable and detectable as AI-generated" β the spec's answer is exactly this assertion. Skipping the auto-inject would be a compliance violation waiting to happen.
Q: Does this need c2pa-python? A: No. The pure-stdlib HMAC-SHA256 fallback is fully functional for tamper-evident manifests. Install c2pa-python only if you need the full X.509 chain.
Q: Can I sign an asset that's not a PNG/JPEG?
A: Yes. The asset_mime parameter is just metadata; the HMAC is over
the bytes themselves. Works for video, audio, PDFs, etc.
Q: How do I rotate the signing key?
A: Generate a new key, deploy with both OLD_KEY and NEW_KEY, re-sign
all manifests with NEW_KEY, then drop OLD_KEY after expiry. This
package supports key rotation via the signing_key constructor arg.
Q: Is this production-ready? A: Yes for tamper-evidence (HMAC). For full X.509 C2PA chain + cryptographic non-repudiation, install c2pa-python β₯ 0.9.0.
MIT Β© MEOK AI Labs / CSOAI-ORG
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/c2pa-watermark-mcp)<a href="https://allmcps.com/mcp/c2pa-watermark-mcp"><img src="https://allmcps.com/api/badge/c2pa-watermark-mcp?style=directory" alt="C2pa Watermark MCP on AllMCPs" /></a>