Skip to main content
Glama

Approve week

approve_week
Idempotent

Schedules every dated draft (draft_scheduled) in a week at the time it is already placed at, in one go: the same as the Approve week button on the Plan page. Scheduled posts are published to the real social accounts automatically at their times — show the user the week (list_posts) and ask before approving, then pass confirm: true. The week is the seven days from midnight of weekStart in timeZone (else the zone the week was filled in, else the user's). A draft that could not go out is left as a draft and listed in skipped with its reason: past (its time has gone; move it with schedule_post), off_hour, needs_picture (Instagram and TikTok need a picture: add one with update_post, then approve again), not_connected (a platform on the post has no connected account, or it needs reconnecting: the user connects it in the Simplo app under Brand → Channels, or update_post takes that platform off), needs_tiktok_choices (a TikTok account connected directly needs the user's choices for each post: ask them, set tiktokSettings with update_post, then approve again) or platform_unavailable.

Input Schema

NameRequiredDescriptionDefault
confirmYesMust be true — confirms the user approved auto-publishing the week's posts at their times
timeZoneNoThe user's IANA time zone, e.g. America/Sao_Paulo; omit to use the one the week was filled in
projectIdYesSimplo project id (from list_projects)
weekStartYesFirst day of the week, YYYY-MM-DD, as the user's calendar shows it

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Goes far beyond the annotations (readOnlyHint=false, destructiveHint=false, idempotentHint=true) by disclosing the real-world consequence: posts publish to live social accounts automatically at their times. It also documents the partial-failure model — failed drafts stay as drafts and come back in a skipped list with enumerated reasons (past, off_hour, needs_picture, not_connected, needs_tiktok_choices, platform_unavailable) and the remediation for each.

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 safety gate, then failure handling — a sensible order with no filler sentences. It is dense as a single unbroken block, and the long parenthetical enumeration of skip reasons slightly hurts scannability, but each clause carries operational information the agent needs.

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 high-consequence, irreversible-feeling bulk publish with no output schema, the description covers consent handling, timezone resolution, partial failure semantics, and per-reason next steps. An agent has everything needed to call it correctly and to recover from every documented failure mode.

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, but the description adds meaning on top: weekStart defines a seven-day window starting at midnight, timeZone has a three-tier fallback (explicit zone, then the zone the week was filled in, then the user's), and confirm is a user-consent gate that must follow an explicit ask. Only the exact weekStart/pattern mechanics are left entirely to 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?

Opens with a specific verb and resource plus scope: 'Schedules every dated draft (draft_scheduled) in a week at the time it is already placed at, in one go.' The analogy to the 'Approve week' button on the Plan page pins down exactly which UI action this mirrors, separating it from single-post tools like publish_post and schedule_post.

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?

States the required workflow explicitly: show the week with list_posts, ask the user, then pass confirm: true. It also names alternatives for failure paths — schedule_post to move a past draft, update_post to add a picture or tiktokSettings — so the agent knows both when to call this and what to do when it partly fails.

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