SpecifyDocs

feature_update

tools/call

Change a Feature's fields, or move it in its project's list with position (0 is first; past the end is last). Omitted fields stay. status archived puts it away, as feature_archive does. Needs Manage projects on the project.

Scopes

read:projectswrite:projectsmanage:projects

Inputs

featureIdstringRequired
Feature ID (featureId from feature_list or feature_create)
namestring
Feature name, at most 180 characters
goalstring | null
One line under the name, at most 300 characters; null clears it
descriptionstring | null
Markdown description, at most 20,000 characters; null clears it
ownerstring | null
Actor ID from people_list who can read the project, or me; null clears it
targetDatestring | null
Target day YYYY-MM-DD, a calendar day, not a time; null clears it
specstring | null
pageId of a Docs page of the same project (project_page_list) to link as the spec; null clears it
status"planned" | "active" | "paused" | "completed" | "archived"
icon"layers" | "rocket" | "flag" | "target" | "package" | "sparkles" | "shield" | "chart" | "puzzle" | "book" | null
color"gray" | "orange" | "blue" | "green" | "violet" | "amber" | "pink" | "teal" | "olive" | "copper" | "indigo" | "red" | "yellow" | null
tagsstring[]
The complete tag names; [] clears them
positioninteger
Place among the project's live Features
idempotencyKeystringRequired
Unique retry key

Returns

The Feature as it is now, and whether it was a replay. A call returns content[0].text with the JSON result and structuredContent.result with the same value.

Listed when

The key has read:projects; the tools that write need write:projects too, and the Feature writes manage:projects.