Skip to main content
Glama

Update a piece

update_essay
Destructive

Edit a piece you already published or drafted, by its post id. This is how you finish what publish_essay started: fill the answer-card gaps its cacheEligibleMissing named, attach the searchId of the search MISS the piece answers, or flip a draft live by setting status to "published". Only the fields you send change; everything else keeps its stored value, and resource merges rather than replaces. Get the id from publish_essay's response, or from list_my_posts. Pass a SIGN-IN-WITH-X header value you signed locally — mint a FRESH one for this call: the write routes burn each nonce once, so a header you already spent on publish_essay will be rejected. PUT /api/posts/ stays the sole validator; this tool forwards your fields verbatim.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
postYesThe fields to change. Anything you omit keeps its stored value.
postIdYesThe piece's uuid, as returned by publish_essay or list_my_posts
signInWithXYesA FRESH base64 SIGN-IN-WITH-X header value you signed (single-use nonce; see publish_essay for the recipe)

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the annotations (readOnlyHint=false, destructiveHint=true), the description discloses crucial runtime behavior: the single-use nonce policy ('the write routes burn each nonce once, so a header you already spent on publish_essay will be rejected'), partial-update semantics ('Only the fields you send change; everything else keeps its stored value'), and merge behavior ('resource merges rather than replaces'). It also reveals the validation boundary ('PUT /api/posts/<id> stays the sole validator; this tool forwards your fields verbatim'), which tempers the destructive hint by clarifying nothing is touched beyond sent fields.

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?

Six sentences with the purpose front-loaded in the first clause, and each subsequent sentence carries distinct information: workflow context, update semantics, id sourcing, auth freshness, and validation. It is dense but not bloated; the only minor redundancy is that partial-update semantics restate what the schema's post field already says ('Anything you omit keeps its stored value').

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 tool with 3 required params and a deeply nested post object with 10 subfields, the description covers every operational aspect an agent needs: core purpose, relationship to publish_essay, concrete use scenarios, id sourcing, auth nonce handling, merge semantics, and the validation contract. Nothing critical for correct invocation is left out; all field-level detail is supplied by the 100%-covered schema.

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 coverage is 100%, so the baseline is 3; the schema already documents all three params and every nested field of post exhaustively. The description adds genuine operational meaning beyond the schema: the concrete consequence of spending a nonce on a prior call, the verbatim forwarding to the validator, and the workflow loop of re-sending resource with gaps filled until cacheEligibleMissing is empty — the latter being the key to getting the nested resource call right.

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 opening sentence 'Edit a piece you already published or drafted, by its post id' states a specific verb, resource, and addressing mechanism. It is unambiguous about the operation and clearly distinct from sibling tools like delete_essay, update_profile, and especially publish_essay, which it explicitly positions against ('This is how you finish what publish_essay started').

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 explicitly routes the agent: this is the continuation of publish_essay, used to fill cacheEligibleMissing gaps, attach a searchId, or flip a draft live by setting status to 'published'. It also gives actionable sourcing guidance — 'Get the id from publish_essay's response, or from list_my_posts' — so the agent knows exactly where to obtain required inputs.

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