Attest artifact
attest_artifactCryptographically sign an output your agent produced — a PDF, report, code patch, dataset, email — so a third party can later confirm those exact bytes are the ones that were recorded, unmodified. Pass content_text or content_base64 and Kamy hashes the bytes for you; pass content_sha256 alone when the content itself must never leave your environment. Returns { attestation_id, content_sha256, signature, recorded_at, verify_url } — hand verify_url to whoever needs to check the artifact. This proves the bytes match what this account recorded at that time; it makes no claim about whether the content is correct. Requires a Kamy API key.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| tags | No | Up to 20 free-form labels. | |
| run_id | No | Your identifier for the agent run this artifact belongs to. Pass the same run_id across attestations and agent-action records to build one provenance chain readable via get_provenance_chain. | |
| feature | No | Product area or pipeline name, for grouping attestations. | |
| metadata | No | Arbitrary JSON stored alongside the attestation (model, source URL, reviewer, ...). | |
| content_text | No | UTF-8 text artifact. Convenience input: this MCP server base64-encodes it locally and sends it as content_base64 — no other transformation is applied. Supply exactly one of content_sha256, content_base64, or content_text. | |
| artifact_type | Yes | What kind of output this is, e.g. 'pdf', 'report', 'code_patch', 'dataset', 'email', 'llm_output'. Free-form label used for filtering later. | |
| parent_sha256 | No | content_sha256 of the preceding record in the chain, when this artifact was derived from an earlier one. | |
| content_base64 | No | Base64-encoded artifact bytes. Use for binary output (PDF, image, archive). Supply exactly one of content_sha256, content_base64, or content_text. | |
| content_sha256 | No | SHA-256 of the artifact bytes, when you'd rather not send the content itself. Supply exactly one of content_sha256, content_base64, or content_text. |