c2pa-watermark-mcp
c2pa-watermark-mcp
C2PA Content Credentials MCP сервер — встраивание и проверка машиночитаемого происхождения для AI-сгенерированных активов, в преддверии дедлайна Статьи 50 Закона ЕС об ИИ (2 декабря 2026 года).
Зачем это существует
Статья 50 Закона ЕС об ИИ (Регламент (ЕС) 2024/1689) требует, чтобы AI-сгенерированный контент был машиночитаемым + обнаруживаемым как созданный ИИ. Утверждение c2pa.ai_generated — это предписанный спецификацией C2PA способ сделать это.
Дедлайн — 2 декабря 2026 года — примерно через 6 месяцев. Компании, которые выпускают пользовательские генеративные инструменты без поддержки C2PA, могут столкнуться со штрафами до €35 млн или 7% мирового оборота.
Этот MCP оборачивает официальный SDK c2pa-python (≥0.9.0) как MCP-сервер, чтобы агенты могли прикреплять манифесты C2PA во время генерации и проверять происхождение во время выполнения. Включена резервная реализация HMAC на чистой стандартной библиотеке для сред, где нативные зависимости c2pa-python не устанавливаются (Vercel serverless, CI-песочницы и т.д.).
Related MCP server: mtl-c2pa-mcp
Возможности
3 MCP-инструмента —
sign_asset,verify_asset,statusГотовность к Статье 50 Закона ЕС об ИИ — автоматически внедряет утверждение
c2pa.ai_generatedРезервная реализация на чистой stdlib — работает без нативных зависимостей c2pa-python
Подписи HMAC-SHA256 — манифесты с защитой от подделки
Опциональная цепочка X.509 — через дополнительный пакет
c2pa-python[evm]Развертывание на Vercel — см. репозиторий
c2pa-watermark-vercel
Инструменты
Инструмент | Назначение | Уровень |
| Встраивает манифест C2PA в актив, подписанный HMAC | Pro |
| Проверяет манифест по байтам актива | Free |
| Сообщает о состоянии сервера и доступности нативного SDK | Free |
Установка
# Core (HMAC fallback, no native deps)
pip install c2pa-watermark-mcp
# With full c2pa-python (X.509 chain)
pip install 'c2pa-watermark-mcp[c2pa]'
# For local development
git clone https://github.com/CSOAI-ORG/c2pa-watermark-mcp
cd c2pa-watermark-mcp
pip install -e .[dev]Использование
Подпись актива (уровень Pro)
from c2pa_watermark_mcp import sign_asset, verify_asset, status
# Server health
print(status())
# → {'server': 'c2pa-watermark-mcp', 'c2pa_python_available': False, ...}
# Sign an asset
with open("output.png", "rb") as f:
asset = f.read()
key = b"my-hmac-key-32-bytes-long-aaaaaa"
result = sign_asset(
asset_bytes=asset,
asset_mime="image/png",
claim_generator="MEOK-SDXL/1.0",
signing_key=key,
ai_generated=True,
assertions=[
{"label": "c2pa.training", "value": {"model": "sdxl-1.0", "dataset": "internal"}},
],
)
print(result["manifest_id"])
# Verify
verdict = verify_asset(asset, result["manifest"], key)
print(verdict) # {'valid': True, 'reasons': [], ...}Запуск как MCP-сервер (stdio)
c2pa-watermark-mcp
# or with full c2pa-python
pip install 'c2pa-watermark-mcp[c2pa]'
c2pa-watermark-mcpЗапуск через Docker
docker build -t c2pa-watermark-mcp .
docker compose up -d
# status endpoint on http://localhost:8000Развертывание на Vercel
Смотрите сопутствующий репозиторий c2pa-watermark-vercel для бессерверной обертки, предоставляющей маршруты /sign, /verify, /status.
Архитектура
┌─────────────────────────────────────────────────────────────┐
│ c2pa-watermark-mcp │
├─────────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ sign_asset │ │verify_asset │ │ status │ │
│ │ (HMAC + │ │ (HMAC + │ │ (health + │ │
│ │ c2pa.io) │ │ tamper) │ │ capability)│ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
│ │ │ │ │
│ └────────────────┴────────────────┘ │
│ │ │
│ ┌──────┴──────┐ │
│ │ HMAC-SHA256 │ (always available) │
│ │ + c2pa.io │ (if c2pa-python installed)│
│ └──────┬──────┘ │
│ │ │
│ ┌─────────────┐ ┌──────┴──────┐ ┌─────────────┐ │
│ │ manifest │ │ signing │ │ AI-Act │ │
│ │ generator │ │ keys │ │ assertions │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
└─────────────────────────────────────────────────────────────┘Почему мы автоматически внедряем c2pa.ai_generated
Спецификация C2PA определяет это как стандартный способ раскрытия AI-сгенерированного контента. Статья 50 Закона ЕС об ИИ гласит, что AI-контент должен быть «машиночитаемым и обнаруживаемым как созданный ИИ» — ответ спецификации — именно это утверждение. Пропуск автоматического внедрения был бы нарушением требований, которое только и ждет своего часа.
FAQ
Вопрос: Нужен ли c2pa-python? Ответ: Нет. Резервная реализация HMAC-SHA256 на чистой stdlib полностью функциональна для манифестов с защитой от подделки. Устанавливайте c2pa-python только если вам нужна полная цепочка X.509.
Вопрос: Могу ли я подписать актив, который не является PNG/JPEG?
Ответ: Да. Параметр asset_mime — это просто метаданные; HMAC вычисляется по самим байтам. Работает для видео, аудио, PDF и т.д.
Вопрос: Как ротировать ключ подписи?
Ответ: Сгенерируйте новый ключ, разверните с обоими OLD_KEY и NEW_KEY, переподпишите все манифесты с NEW_KEY, затем удалите OLD_KEY после истечения срока. Этот пакет поддерживает ротацию ключей через аргумент конструктора signing_key.
Вопрос: Готов ли этот пакет к продакшену? Ответ: Да для защиты от подделки (HMAC). Для полной цепочки X.509 C2PA + криптографической неотказуемости установите c2pa-python ≥ 0.9.0.
Лицензия
MIT © MEOK AI Labs / CSOAI-ORG
This server cannot be installed
Maintenance
Related MCP Servers
- Alicense-qualityBmaintenanceMCP server for compliance automation of AI agents, enabling EU AI Act compliance, verifiable credentials, and decentralized identity management with 47 tools across 9 modules.17Apache 2.0
- Alicense-qualityDmaintenanceMCP server for reading C2PA content provenance manifests from media files, enabling natural language queries about AI-generated content, signatures, and provenance.2MIT
- Alicense-qualityDmaintenanceA hosted remote MCP server for C2PA disclosure policy, enabling AI governance teams to check disclosure policies, validate C2PA status, issue AI media receipts, explain region rules, and export disclosure logs.MIT
- Alicense-qualityDmaintenanceA hosted remote MCP server for verifying C2PA intakes, classifying source risk, issuing media receipts, and exporting intake logs. Designed for AI governance, trust and safety, and compliance teams.MIT
Related MCP Connectors
Remote MCP for C2PA intake verifier MCP, structured receipts, audit logs, and reviewer-ready evidenc
Remote MCP for C2PA disclosure policy MCP, structured receipts, audit logs, and reviewer-ready evide
MCP server for verifying EUDI/Talao wallet data via OIDC4VP (pull) for AI agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/CSOAI-ORG/c2pa-watermark-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server