Skip to main content
Glama

Approve a pending queued post

approve_queued_post
Idempotent

Approve a post that is waiting for approval. Approval is meant for a person: by default this tool refuses, and the post has to be approved from the email Octopost sent or the dashboard. It only works when the account owner turned on "Let agents approve posts made by a different agent" in Settings, and never for a post your own key or connection made. Only call it when the user explicitly asked you to approve that specific post. If it refuses, tell the user the post is waiting for them and to check their email. Once approved, a queue post publishes in its queue slot and a scheduled post at its time.

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": {
      "post_id": "<post_id>"
    },
    "name": "approve_queued_post"
  }
}

Input Schema

NameRequiredDescriptionDefault
post_idYesThe post ID (UUID) to approve.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations: annotations only say this is a non-read-only, idempotent, non-destructive write. The description adds that it refuses by default, the account-level setting that must be enabled, the self-post exclusion, and the downstream effect (publishes in the queue slot, or at the scheduled time). That is the gating logic an agent cannot infer from readOnlyHint/destructiveHint.

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 action, then the gating conditions, then the fallback behavior — a logical order with no filler sentences. It runs six sentences, slightly more than needed, but each carries distinct operational information rather than restating the title.

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 one-parameter mutation with no output schema, it covers everything an agent needs: preconditions, permission model, self-post exclusion, refusal handling, and post-approval effects. Nothing material is left to inference.

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% with a single required post_id already documented as "The post ID (UUID) to approve." The description's phrase "that specific post" reinforces that the ID must identify the one post the user named, but adds no format or sourcing detail beyond the schema.

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?

States a specific verb and resource ("Approve a post that is waiting for approval") and implicitly separates itself from reject_queued_post and publish_draft by naming the precondition (a post awaiting approval). An agent can distinguish this from every sibling in the list without opening 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 Guidelines5/5

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

Gives explicit when-to-use ("Only call it when the user explicitly asked you to approve that specific post"), when-not (never for a post your own key or connection made, never when the setting is off), and a named alternative path (email link or dashboard). The refusal-handling instructions tell the agent exactly what to do instead.

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