Skip to main content
Glama

devtune_start_action_draft

Start a content-draft run for an action, for accounts with content drafts: the Page Drafter for a create action, the Section Editor for a refresh action. The same checks as Generate draft in the app apply, and a refusal carries its reason: not_content_action, read_only (live or archived), brief_not_ready, brief_outdated (the brief predates the current format; regenerate it), no_target_page, page_locked, draft_kind_changed (the action now takes the other kind than the draftKind passed), forbidden (needs the manage permission) or unavailable (content drafts are off). The caller must be a member of the project. Retrying with the same requestIdempotencyKey returns the same run as it stands, even if the action has since changed, with status failed if that run failed; reusing it for a different request, including another modelId (omitted means the account default), is a conflict. The run uses agent credits; read the estimate from devtune_get_action_draft first. Returns the run id; follow it with devtune_get_action_draft, whose run is this one while it is in flight and whose current version is the draft once it finishes. An account with content drafts can also read the run metadata with devtune_get_agent_run, whose draftOutput stays null for content drafts; an account that drafts only Agent Picks Actions cannot read that run. Retrieve the actual draft with devtune_get_action_draft using actions.read under its existing action-specific checks. A draft is never published: a person reviews it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modelIdNoOptional model id from devtune_get_action_draft models; the default model when absent.
actionIdYesUUID of the action.
draftKindNoThe draft you expect from devtune_get_action_draft; the start refuses with draft_kind_changed if the action now takes the other kind.
requestIdempotencyKeyYesRequired caller-generated UUID for idempotent retries.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations, the description carries the full burden and does so: it enumerates every refusal reason with its cause, explains idempotency semantics (same key returns the same run; reuse for a different request/modelId is a conflict), states that runs consume agent credits, and notes the draft is never published and requires human review.

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?

Purpose and outcome are front-loaded and little is wasted, but the refusal enumeration is delivered as a single dense inline run-on rather than structured, making the middle harder to scan than necessary.

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 complex, side-effecting, credit-consuming tool with no output schema, the description covers the return value (the run id), run lifecycle, permissions, idempotency, and downstream retrieval steps. Nothing an agent needs to invoke correctly is missing.

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 already 100%, so the schema defines all four params. The description still adds real meaning beyond it: modelId omitted means the account default, requestIdempotencyKey idempotency/conflict behavior, and how draftKind interacts with the draft_kind_changed refusal.

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 a precise verb+resource ('Start a content-draft run for an action') and immediately distinguishes the two draft flavors (Page Drafter for create, Section Editor for refresh). It is clearly separable from siblings like devtune_get_action_draft and devtune_generate_action_brief.

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?

Explicit routing is provided: read the credit estimate from devtune_get_action_draft first, follow up with devtune_get_action_draft, and optionally read run metadata via devtune_get_agent_run. Prerequisites (project membership, manage permission for the 'forbidden' case) and exclusions (accounts that only draft Agent Picks Actions) are stated.

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