Complete plan
complete_planMarks the active plan completed, blocked, or cancelled. When working in the current conversation, omit conversationId; never pass placeholders such as current, this, or active. If you include conversationId, it must be the real UUID. This closes plan state only and does not alter other tool access. Call complete_plan with status="completed" only when the root objective is actually done. outcome.status is plan-item satisfaction, not an external backtest/deployment/trade status. A completed item with outcome.status="unsuccessful" or outcome.status="partial" is audit evidence for an attempt, not proof the root objective is done; add or update explicit follow-up work that references that item, or use blocked/cancelled for a real blocker. Do not tell the user the plan is done while the root plan is still active.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| planId | No | Optional plan UUID. In the current conversation, omit planId unless you already have the actual plan id from get_active_plan or a wake message. Never pass a plan item id here; target plan items through target.itemId or target.position. | |
| status | No | completed | |
| summary | No | ||
| conversationId | No | Optional conversation UUID. Omit this field to use the current MCP conversation context; never pass placeholders such as `current`. |