produce_plan
Produce (generate) the actual content a plan describes — the MCP equivalent of the Generate button on the plans board.
Input Schema
{
"type": "object",
"required": [
"plan_uuid"
],
"properties": {
"plan_uuid": {
"type": "string",
"description": "Required. UUID of the Accepted plan to produce (from list_plans / get_plan / create_plan)."
}
}
}Output Schema
{
"type": "object",
"properties": {
"path": {
"type": "string",
"description": "\"blueprint\" (plan has a blueprint) or \"freeform\" (no blueprint)."
},
"stage": {
"type": "string",
"description": "The plan's stage as of this response: Accepted on both paths — flips to In_Process when generation completes."
},
"message": {
"type": "string",
"description": "What happened + what to do next."
},
"link_url": {
"type": "string",
"format": "uri",
"description": "Shareable deep-link that opens the plans screen with this plan's detail overlay. Give this to the user."
},
"plan_uuid": {
"type": "string",
"description": "The plan being produced."
},
"generation_id": {
"type": "string",
"description": "Poll get_generation_status with this until complete."
}
}
}Instructions
Produce (generate) the actual content a plan describes — the MCP equivalent of the Generate button on the plans board. The plan must be in the Accepted stage (transition a Suggested plan first with update_plan target_stage: "Accepted"). Consumes team AI credits and typically takes 1–2 minutes; confirm with the user before producing a plan they didn't explicitly ask to produce. The plan's prompt, targeting dimensions, context collections, and project association are used as generation inputs — set them via update_plan before producing.
Both paths are asynchronous — the call returns immediately with a generation_id; poll get_generation_status. On completion the backend links the produced content and moves the plan to In_Process (then Complete when the content reaches ready).
Example prompts:
- "Go ahead and produce that launch email plan"
- "Generate the content for this plan"