Skip to main content
Glama

Confirm Post

confirm_post
DestructiveIdempotent

Approves or cancels a draft. Approval with a time (scheduled_date, or the time already proposed on the draft) writes both schedule timestamps and sets status=scheduled: the post then publishes at that time with no further step. Approval and scheduling do not need the platform connected: when it is not, the response's connection says so, and the post publishes at its time if the platform is connected by then. Approval with no time anywhere makes the post ready (approved, no time). The cancel action deletes the draft. Every response carries status_before, status_after and approval_required.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "draft_id": "<draft_id>",
      "action": "<action>"
    },
    "name": "confirm_post"
  }
}

Input Schema

NameRequiredDescriptionDefault
actionYesThe action, "approve" or "cancel"
draft_idYesThe draft ID to confirm
scheduled_dateNoOptional future publish time, ISO 8601. With an offset or Z it is used exactly as sent; without one (e.g. 2026-10-22T08:45) it is read in the founder's timezone (the timezone field of scheduling responses) and the response's time_input says so. The time is kept exactly as given, to the minute. Approval with a time schedules atomically; approval without any time keeps the draft's proposed time, or makes a dateless ready post when it has none.

Output Schema

NameRequiredDescriptionDefault
kindYes
quotaNo
titleNo
healthNo
statusYes
contentYes
draft_idYes
platformYes
timezoneNo
char_countYes
connectionNo
server_nowNo
time_inputNo
quota_noticeNo
status_afterNo
dashboard_urlNo
status_beforeNo
approval_resetNo
scheduled_dateNo
scheduled_localNo
timezone_sourceNo
approval_requiredNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already flag destructiveHint=true and idempotentHint=true, so the destructive cancel behavior is expected. The description still adds real value beyond them: scheduling is atomic with approval, approval works even when the platform is not connected (with the response reporting connection state), and every response carries status_before, status_after and approval_required. It does not discuss reversibility of a scheduled post or error cases.

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?

Front-loaded with the core action, then the scheduling rule, the no-time fallback, and the cancel side effect in a logical sequence. No sentence is redundant, though the long colon-chained middle sentence is denser than it needs to be.

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?

An output schema exists, and the description nonetheless names the key response fields and the connection caveat, so an agent knows what to inspect after calling. For a three-parameter mutation with conditional branches, nothing material is left unexplained.

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 coverage is 100% and the scheduled_date field already documents ISO 8601 handling, offset vs founder-timezone interpretation, minute precision, and the atomic scheduling rule. The description's parameter discussion restates those semantics ('scheduled_date, or the time already proposed on the draft') rather than adding new meaning, so the baseline 3 applies.

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 first sentence states a specific verb pair and resource: 'Approves or cancels a draft.' It makes the two actions and their distinct outcomes clear. It stops short of naming which sibling to choose instead — delete_post, publish_post and reschedule_post all overlap in territory — so an agent still has to reason about the boundary itself.

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

Usage Guidelines4/5

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

The description gives clear conditional guidance for each action: approval with a scheduled_date (or a draft-proposed time) schedules, approval with no time anywhere yields a dateless ready post, and cancel deletes. What is missing is exclusions relative to alternatives, e.g. when to use this rather than reschedule_post or publish_post.

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