Skip to main content
Glama

publish_post

DestructiveIdempotent

Publishes an existing Patreon draft post by ID through the web editor API, letting creators take a saved draft live without manually opening the editor.

Instructions

Publish an existing draft through Patreon's web editor API.

Input Schema

NameRequiredDescriptionDefault
post_idYesPatreon post ID.

Output Schema

NameRequiredDescriptionDefault
idYes
urlNo
titleNo
contentNo
is_paidNo
is_draftNo
tier_idsNo
edited_atNo
embed_urlNo
is_publicNo
post_typeNo
app_statusNo
created_atNo
embed_dataNo
patreon_urlNo
published_atNo
scheduled_forNo
access_rule_typesNo
content_truncatedNo
current_user_can_editNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true and destructiveHint=true, so the safety profile is largely covered by structured data. The description adds that the target must already exist as a draft and that the operation goes through the web editor API, but it never explains what the 'destructive' flag means here (whether the draft record is consumed or replaced) or what the success response confirms. Given annotation coverage, this is adequate but thin.

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?

One sentence, no redundancy, with the outcome ('publish') front-loaded and the scope ('existing draft') immediately after. Nothing to trim.

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 a single-parameter mutation with full schema coverage, rich annotations, and an output schema that handles return values, the description only needs to state the action and precondition — which it does. The remaining gap is the unexplained destructiveHint and any failure modes (publishing a non-draft, already-published posts), which is a minor omission given complexity.

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

Parameters3/5

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

There is a single parameter, post_id, with 100% schema description coverage, so the schema fully documents it. The description adds no format, sourcing, or lookup guidance (e.g. where to get a valid post ID) beyond the schema.

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

Purpose4/5

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

The description gives a specific verb ('Publish') plus a specific resource ('an existing draft') and the mechanism ('Patreon's web editor API'). The 'existing draft' qualifier implicitly distinguishes it from create_post/update_post, though it never names a sibling or states the boundary explicitly.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no prerequisites (e.g. the post must already exist as a draft, the caller's tier/permission needs), and no reference to alternatives such as update_post or create_post. The only hint is the phrase 'existing draft', which is inference rather than instruction.

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