Skip to main content
Glama

create_post

Destructive

Create, schedule, or publish Patreon text posts via the web editor API using a session cookie; supports drafts, visibility tiers, tags, and teasers.

Instructions

Create a text post through Patreon's web editor API.

Requires PATREON_SESSION_COOKIE or PATREON_SESSION_COOKIE_FILE. This uses Patreon's undocumented browser API, not the official OAuth API, and can break when Patreon changes its web app. Only text posts are supported.

Input Schema

NameRequiredDescriptionDefault
tagsNoOptional user-defined post tags.
titleYesPost title.
contentNoPost body as HTML or plain text. The web editor stores HTML.
publishNofalse creates a draft; true publishes immediately or schedules when scheduled_for is set.
tier_idsNoTier IDs allowed to view the post. Required when visibility='tiers'.
allow_htmlNoPublish raw HTML. Off by default: content and teaser are escaped as plain text. Raw HTML can include links, embeds, and tracking pixels.
visibilityNopublic = everyone; paid = all paying patrons; tiers = only the tier_ids listed.paid
campaign_idNoCampaign ID, used only to resolve tier_ids. Omit to use the web session's current campaign.
teaser_textNoOptional plain-text teaser shown before the paywall.
scheduled_forNoISO 8601 publish time with timezone, for example 2026-10-20T18:00:00Z. Requires publish=true.

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

A4.3/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true and openWorldHint=true, and the description is consistent with them while adding genuine behavioral context beyond structured data: it requires a session cookie, uses an undocumented browser API that can break, and supports only text posts. This is exactly the operational disclosure an agent needs for a fragile write tool.

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?

Three tight sentences, front-loaded with purpose, then prerequisites, then the API fragility warning and scope limit. Every sentence earns its place with no repetition of schema content.

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

Completeness5/5

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

With an output schema present, annotations covering safety, and 100% schema coverage, the description supplies the remaining critical context: authentication requirements and the fact that this uses a fragile undocumented browser API. Nothing essential is missing for an agent to invoke it correctly.

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?

Schema description coverage is 100%, so all ten parameters are already documented in the input schema. The description adds only the 'text posts' limitation, which touches the content parameter but otherwise does not extend parameter meaning. Baseline 3 is appropriate when the schema does the heavy lifting.

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 names a specific verb and resource ('Create a text post') and scopes it precisely ('through Patreon's web editor API', 'Only text posts are supported'). This distinguishes it from publishing or updating posts without needing to open the schema.

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

Usage Guidelines3/5

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

It states a precondition (requires PATREON_SESSION_COOKIE or PATREON_SESSION_COOKIE_FILE) and contrasts with the official OAuth API, but it never says when to choose this tool over siblings like create_live or publish_post, nor when not to use it. Usage is implied rather than guided.

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