updatePlan
Update a plan. versionTimestamp (optimistic locking) is the plan's updated_at in epoch milliseconds: listPlans and getPlan return it, and every write returns the new one. Pass fields (for example ["id", "versionTimestamp"]) for a short answer instead of the whole plan.
This record as markdown: /tools/io-stablebaseline-sb/updateplan.md
What updatePlan does on Stable Baseline
AI agents use updatePlan to create or update resources in Stable Baseline, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Stable Baseline environment.
| Parameter | Type | Required | Description |
|---|---|---|---|
icon | string | — | |
color | string | — | |
title | string | — | |
fields | array | — | Optional. Answer with only these fields instead of the whole plan, for example ["id", "versionTimestamp"]. Any of the plan's own fields (snake_case or camelCase |
planId | string | Yes | |
status | string | — | Status: draft, planning, active, on_hold, completed, cancelled. |
end_date | string | — | YYYY-MM-DD. |
metadata | object | — | |
priority | string | — | Priority: low, medium, high, critical. |
projectId | string | — | Optional. Narrows a friendly-id lookup to one project. Only needed when a friendly id is ambiguous — TAS-/IMP-/PLN- ids are numbered per PROJECT, so the same id |
start_date | string | — | YYYY-MM-DD. |
description | string | — |
Parameters from the server's own tool schema.
Why updatePlan is rated Medium
An AI agent can call updatePlan faster than any human can review: one bad instruction and it creates or modifies resources in Stable Baseline by the hundred, each call as confident as the last.
Risk signalsHigh parameter count (17 properties) · Bulk/mass operation — affects multiple targets
Attacks that exploit this kind of access
The rule that runs updatePlan safely
PolicyLayer is an MCP gateway: it sits between your AI agents and Stable Baseline, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For updatePlan, this is the rule to start with:
updatePlan stays usable, but capped: an agent stuck in a loop can't make hundreds of changes a minute. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect Stable Baseline, apply this rule, and every updatePlan call is checked against it from then on.
Questions about updatePlan
Update a plan. versionTimestamp (optimistic locking) is the plan's updated_at in epoch milliseconds: listPlans and getPlan return it, and every write returns the new one. Pass fields (for example ["id", "versionTimestamp"]) for a short answer instead of the whole plan. It is categorised as a Write tool in the Stable Baseline MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
updatePlan accepts 12 parameters: icon, color, title, fields, planId, status, end_date, metadata, priority, projectId, start_date, description. Required: planId. The full parameter table on this page comes from the server's own tool schema.
Register the Stable Baseline MCP server in PolicyLayer and add a rule for updatePlan: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Stable Baseline. Nothing to install.
updatePlan is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the updatePlan rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for updatePlan. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
updatePlan is provided by the Stable Baseline MCP server (https://api.stablebaseline.io/functions/v1/cloud-serve/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on Stable Baseline, and thousands of servers like it.
This server
Across the catalogue