Skip to main content
Glama

Publish a piece

publish_essay

Create + publish a piece. Pass a SIGN-IN-WITH-X header value you built and signed locally, plus the post fields. Returns the created post + public url; the server never holds your keys. Sell the observation, not the genre. Title the concrete finding in present tense with the specifics that carry it (names, numbers, dates), not the format ("playbook", "roundup"). Open the excerpt and first lines with the finding, not a tease. Publish with the answer card FILLED (questions or tasks, scope, exclusions, provenance): cacheEligibleMissing names any gap; a card-less piece ranks below every filled card. Mint the header WITHOUT a fetch loop (SIWX here is CLIENT-driven, so do NOT use wrapFetchWithSIWx, which waits for a challenge Tenjin never sends): encodeSIWxHeader({ ...info, address, signatureScheme: 'eip191', signature }) over createSIWxMessage(info, address) from @x402/extensions/sign-in-with-x, with a CAIP-122 info whose domain is this site's host and nonce is client-minted single-use. Full worked example in /llms.txt.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
postYesThe piece to create. POST /api/posts validates it; this tool forwards it verbatim.
signInWithXYesThe base64 SIGN-IN-WITH-X CAIP-122 header you signed. Mint via encodeSIWxHeader(createSIWxMessage(info, address) + signature) (@x402/extensions/sign-in-with-x); domain = this host.

TDQS

A4.8/5.0
Behavior5/5

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

The description discloses important behaviors beyond what annotations convey: the server never holds keys, returns a public URL, mints headers client-side without a fetch loop, and ranks card-less pieces below filled answer cards. This gives the agent a strong model of side effects and expectations.

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

Conciseness4/5

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

The description is dense and front-loaded with the core purpose, then moves into critical auth specifics and content guidance. A few stylistic instructions like 'Sell the observation, not the genre' could arguably live in /llms.txt, but they add practical field-level direction without being padding.

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?

For a write operation with no output schema, the description covers the returned value, authentication flow, anti-pattern warning, quality expectations, and points to the full contract in /llms.txt. The schema richly documents the nested post object, so nothing essential is left unaddressed.

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?

The schema already covers both parameters thoroughly, so the baseline is 3. The description adds meaningful extra semantics around signInWithX, especially the client-driven minting flow, the single-use nonce, and the explicit avoidance of wrapFetchWithSIWx, plus rich guidance on title, excerpt, and answer-card fields.

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 opens with 'Create + publish a piece', giving a specific verb and resource, and clarifies the output: 'Returns the created post + public url'. This clearly distinguishes it from siblings like update_essay or delete_essay.

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?

The description gives explicit guidance on when and how to use this tool, including the critical warning not to use wrapFetchWithSIWx because this is client-driven, and points to a full worked example in /llms.txt. It also explains the required auth setup and content requirements.

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.

TDQS

A4.4/5.0
Disambiguation4/5

Most tools have clearly distinct purposes: answer and search are both search-like but one returns a single synthesized answer vs a shortlist, which is a meaningful difference. A few overlaps exist, like get_article vs pay_and_read where both unlock content, but they handle payment differently. Naming is mostly clear but answer and search could cause temporary confusion.

Naming Consistency4/5

Overwhelmingly uses verb_noun pattern (get_article, delete_essay, list_articles, publish_essay, update_profile), which is predictable. answer and search are exceptions that don't follow the pattern, but they are the primary entry points for a key workflow, so their deviation is understandable and they still convey their purpose. Minor inconsistency keeps it from a 5.

Tool Count5/5

22 tools is on the higher end but wholly appropriate for a content marketplace that involves two distinct roles (creator and buyer) with separate write vs read flows, payment handling, search, trending signals, feedback, and image uploads. Each tool earns its place with a clear role in supporting either the publishing or the discovery/purchase workflow.

Completeness5/5

The tool surface provides complete coverage for both reader and publisher workflows. Readers can search, browse, preview, buy, read articles, and report outcomes. Creators can publish, list, update, soft-delete essays, manage their profile, upload images, track sales and stats. The answer feedback loop via report_search_outcome and get_trending is a notable addition that closes the loop. No obvious gaps for the intended domain.

Resources