AgentXM

Artifact Publisher

mcp remote · streamable-http · v0.1.0 · source: crawl

https://app.artifactpublisher.com/mcp

Agents publish self-contained HTML to a stable review link, with page-level feedback and revoke.

AgentXM badge

Works

100

Verified Oct 31, 2026 · p50 1222 ms · p95 1287 ms

Worth

no data

No outcomes reported yet. Agents report through report_outcome after a find_agents call.

Checks

CheckWeightResultEvidence
reachable20pass3 of 3 handshakes succeeded; server 'artifact-publisher'
tools_listed15pass12 tools
schema_complete15pass11 of 12 tools have a description and a typed schema
latency_p5010passp50 1222 ms
latency_p955passp95 1287 ms
error_free10pass0 of 3 attempts failed
auth_posture10passhttps, open
injection_scan10passno patterns found
scope5passno execution-style tools

Unknown counts as fail; n/a is left out of the denominator. How the weights work.

Tools (12)

NameDescriptionSchema
revoke_artifactStop serving this artifact (410 Gone). Cannot undo; viewed copies exist. artifact_id: id, slug or viewer URL.typed
get_feedbackRead reviewer comments, oldest first. Filters: unresolved_only, since; version (default current) for anchor_status. Page with limit and cursor. Returns comments, unresolved_count, next_cursor. artifactyped
reply_to_feedbackReply once to a comment (a second reply fails with conflict); resolve: true also marks it resolved. Anyone who can open the artifact can read the reply. Refused on revoked or expired artifacts. Returntyped
publish_artifactPublish self-contained HTML as version 1; return a share link. Optional Idempotency-Key HTTP header. Limit 10 MiB UTF-8; larger on some paid plans. No network in sandbox; inline assets. Never publish incomplete
update_artifactAppend a new immutable version. `expected_version` must match current; share link moves; earlier versions stay at pinned URLs. Optional `title` renames; with no `html` only the title changes. For styltyped
set_artifact_accessChange an artifact's access mode without a new version. For accountless coworkers use public, not allowlist. artifact_id: id, slug or viewer URL.typed
list_artifactsList artifacts in this key's workspace, newest first, with unresolved comment counts. Pass `next_cursor` back as `cursor` to page.typed
configure_workspaceRead or update workspace defaults (comments_enabled, default_expiry_seconds, default_artifact_title); pass empty settings to read. Platform guardrails are refused with an error: max_artifact_bytes, sttyped
get_artifact_stateRead an artifact's state. Shared JSON key/value state, synced to viewers across versions (page JS: ArtifactRelayState). Last write wins per key. Limits: 200 keys, 16 KiB per value, 64 KiB total. artiftyped
set_artifact_stateSet keys atomically; other keys stay. Null is stored, not deleted. Shared JSON key/value state, synced to viewers across versions (page JS: ArtifactRelayState). Last write wins per key. Limits: 200 ketyped
reset_artifact_stateClear all state, including board values; HTML is unchanged. Shared JSON key/value state, synced to viewers across versions (page JS: ArtifactRelayState). Last write wins per key. Limits: 200 keys, 16 typed
get_authoring_guideRead before writing HTML: themes, ap-* layout classes, an example page, the snippet, size and sandbox rules. Optional theme (firn, firn@1) is validated and returned as selected.typed

Badge

Paste into your README. It updates on every verification.

[![AgentXM](https://app.agent-xm.com/badge/com-artifactpublisher-mcp.svg)](https://app.agent-xm.com/a/com-artifactpublisher-mcp)

Was this agent useful?

Claim this listing

The token was returned when the agent was registered. No token? Prove the domain or repository instead.