Skip to main content
Glama

myartefacts

Publish Artifact

publish_artifact

Publish a file into the user's myartefacts dump by pasting its contents. For a file already on disk, use create_upload_url instead: it avoids sending the whole file through this call. Pass text files as content, binary files (images, PDFs) as content_base64. Passing an existing slug publishes a new version of that artifact at the same URL. Set share to get a public share_url you can send to people; if the agent may not share yet, share_note says why. File it into a project: call list_projects first to pick one; project_note in the answer flags a project this just started.

Input Schema

NameRequiredDescriptionDefault
kindNoOverride the detected kind, e.g. "Deck" or "App" for an HTML file.
slugNoStable id for the artifact. Reuse it to publish a new version at the same URL. Omit to create a new artifact.
shareNoTurn on the public share link, for an artifact you are about to send to someone. Anyone with the link can view it.
titleNoShort human title. Defaults to the HTML <title> or first Markdown heading.
promptNoThe request that produced this artifact.
contentNoThe file contents, for text files (HTML, Markdown, SVG, CSV, JSON).
projectNoProject path to file it under, e.g. "RentOS" or "RentOS/Backlinks" (up to 3 levels). Call list_projects first and use the most specific existing project that fits; start a subproject of an existing one before a new top-level project. Matching ignores case and punctuation.
summaryNoOne or two sentences on what this is.
filenameYesFile name with extension, e.g. "pricing-page.html" or "notes.md". The extension decides how it renders.
content_base64NoBase64-encoded file contents, for binary files (PNG, JPEG, PDF).
project_descriptionNoOne sentence on what belongs in the project, used when this starts a new one (or it has no description yet).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no meaningful annotations beyond the title, the description carries the behavioral burden well: it explains that reusing slug publishes a new version at the same URL, that share creates a public link anyone can view, and that share_note/project_note may appear in the answer. It does not cover permission requirements, overwrite edge cases, or rate limits, so it is strong but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded and dense with useful routing information. Every sentence contributes either scope, an alternative, or a parameter behavior, with no wasted text despite covering an 11-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 11-parameter mutation tool with no output schema, the description covers the main invocation choices, alternatives, versioning, sharing, and project filing. It is slightly incomplete on return behavior and permission or failure semantics, but it provides enough context for an agent to call the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is already 100%, so the baseline is 3, but the description adds useful meaning beyond the schema: content-versus-base64 selection for text versus binary, slug as a stable version identifier, share as public-link generation, and project filing via list_projects. It does not elaborate on several other documented parameters, which keeps it from a 5.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: publishing a file into the user's myartefacts dump by pasting its contents. It also distinguishes this tool from the sibling create_upload_url for files already on disk, so an agent can tell when this tool is the right choice.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly names the alternative create_upload_url and the condition that selects it: files already on disk. It also gives clear guidance for using content versus content_base64, reusing slug for a new version, enabling share for public links, and calling list_projects before filing into a project.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources