Skip to main content
Glama

Launch a Flow (after the person approved the plan)

postfjord_launch_goal
DestructiveIdempotent

Launch an approved goal plan in one go: create its tag, signup form, landing page, welcome emails, comment-to-DM automation, and posts with selected scheduled/draft, automation, and email options.

Instructions

This is a Flow in Postfjord (the person may say "start a flow", "a flow" or "my flows"): makes every part of a proposed goal in one go: the tag, the signup form, the landing page, the welcome email automation, the comment to DM automation and the posts. Call it only after you showed the person the plan from postfjord_get_goal and they said yes to it and to the three choices: postsAs scheduled (the posts go out on their dates, the page is published) or drafts (the default: posts wait in the app on their dates, and the page goes online only when the DM or the emails start, since they link to it), turnOnAutomation (the DM automation starts answering comments right away) and startEmails (the welcome emails go to everyone who confirms). Ask about each choice; never turn one on that the person did not ask for. planHash must be the one from the plan they approved: if the plan changed since, the launch is refused, so read it again and show them. A post that needs a picture stays a draft until one is added, and the answer's notes say what waits and why: tell the person. Calling it again finishes a launch that stopped halfway and makes nothing twice. A built Flow (its drafts made and checked in the app) goes live with the same three choices from its parts as they are now, edits included; its planHash is not checked. A Flow built step by step that was closed to new signups (closedAt) opens again with the same three choices: postsAs scheduled brings back the posts Close stopped and turnOnAutomation the DM, so ask the person; its signup form and page come back, and its emails ran all along. Needs the Publish scope. On a retry after a timeout or error, send the same idempotency_key: the first answer comes back and nothing is made or sent twice.

Input Schema

NameRequiredDescriptionDefault
goalIdYesThe goal id from postfjord_plan_goal or postfjord_list_goals.
postsAsNoscheduled: the posts go out on their dates. drafts (default): they wait in the app.
planHashYesplanHash of the plan the person approved, from postfjord_get_goal or postfjord_update_goal.
startEmailsNoStart the welcome emails, and the yearly birthday email when the plan has one, now. Default false. Ask the person about both.
idempotency_keyNoYour own id for this one action, for example post-20261006-launch. Make a new one for each new thing; send the same one again only when you retry. Left out, the exact same call within 10 minutes counts as a retry.
turnOnAutomationNoSwitch the comment to DM automation on now. Default false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true, idempotentHint=true, and openWorldHint=true, and the description adds concrete side effects: the page goes live, posts may publish, DMs start answering, emails send, and missing pictures keep posts as drafts. It also discloses the planHash refusal behavior, the Publish scope requirement, and the idempotency retry contract, all beyond what annotations provide. No contradiction with annotations.

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?

The description is long and dense, but nearly every clause carries operational weight for a complex six-parameter mutation. It is front-loaded with the purpose and approval precondition, then organized into choices, planHash, partial-launch handling, closed-Flow reopening, and idempotency. Some sentences are run-on and could be tightened, but it is not redundant filler.

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?

No output schema exists, so the description must explain return-relevant behavior, and it does: notes say what waits and why after launch, retries return the first answer, and nothing is made twice. Combined with coverage of destructive effects, scope requirements, and all parameter choices, the definition is complete enough for an agent to invoke correctly.

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 schema itself defines all six parameters. The description nevertheless adds meaning: planHash must match the approved plan or launch is refused, postsAs controls whether posts publish or wait, and startEmails/turnOnAutomation must be explicitly approved by the person. It reinforces rather than repeats the schema, though for two params it adds little beyond the schema text.

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 action (launch a Flow) and enumerates exactly what gets created in one go: tag, signup form, landing page, welcome email automation, comment-to-DM automation, and posts. This clearly distinguishes it from planning siblings like postfjord_plan_goal and postfjord_get_goal, which do not launch anything.

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?

Provides explicit when-to-use conditions: only after showing the plan from postfjord_get_goal and receiving approval on the plan and three choices. It also gives when-to-retry guidance, explains reopening a closed Flow, and warns never to enable a choice the person did not ask for. Alternative paths are implied through get_goal/update_goal references.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools