Local MCP-controlled artifact shelf: agents publish HTML, Markdown, folders and files; humans get nice preview URLs.
Three tools with complete input schemas and descriptions. artifact_publish has a complex, well-structured schema with oneOf source variants and detailed parameter descriptions (pattern:constrained-input). artifact_list includes pagination (limit, cursor, orderBy) and filtering (query, tags, kind), good for discovery. artifact_delete is minimal but clear. However, output schemas are not documented in the source code provided, and error handling guidance is absent. Descriptions are solid (100-200 chars range, meeting baseline), but no recovery hints or error classification. Tool names follow verb_noun pattern correctly. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) visible in the schema definitions.
Remove a publication and ALL of its revisions from the shelf, including stored files. Irreversible.
List published artifacts on the shelf, newest first. Returns preview URLs humans can open.
Publish a file, folder, or inline content to the local artifact shelf and get a stable browser preview URL back. Call this whenever you produce something viewable — a report, HTML page, diagram, dataset — so the user gets a URL without having to ask. Use the same slug with updateExisting:true to push new revisions of the same page. path/folder sources are read from the machine running the shelf; over remote MCP connections use content sources.
Output schemas not documented. LLMs cannot infer what fields artifact_publish, artifact_list, and artifact_delete return, forcing them to guess downstream field names and risk broken tool chains.
No error handling guidance. Tools lack recovery hints (e.g., 'If slug already exists, pass updateExisting:true' for artifact_publish, or 'If not found, call artifact_list to discover available slugs' for artifact_delete). Agents cannot self-correct on failures.
No tool annotations. Input schemas lack readOnlyHint (artifact_list), destructiveHint (artifact_delete), or idempotentHint (artifact_publish with updateExisting). Agents cannot determine which tools are safe to retry or have side effects.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 61 | 2026-07-28+ | v2 |
artifact_delete description lacks confirmation/dry-run pattern. Irreversible deletion of all revisions should warn agents or offer a confirmation step to prevent catastrophic errors.
artifact_list limit parameter lacks explicit bounds. Description says '1-200, default 50' but no JSON Schema minItems/maxItems constraints. LLMs may pass invalid values; validation must be explicit in schema.