Skip to content

[TAN-7981] Add MCP update tools for project and phase#14075

Open
amanda-anderson wants to merge 1 commit into
TAN-7898-generic-update-tool-mcpfrom
TAN-7981-update-tools-project-phase
Open

[TAN-7981] Add MCP update tools for project and phase#14075
amanda-anderson wants to merge 1 commit into
TAN-7898-generic-update-tool-mcpfrom
TAN-7981-update-tools-project-phase

Conversation

@amanda-anderson

Copy link
Copy Markdown
Contributor

Changelog

Added

  • [TAN-7981] Add MCP update tools for Project and Phase (behind feature flag).

@notion-workspace

Copy link
Copy Markdown

}
},

manual_voters_amount: { type: 'integer', description: 'Count of offline/manually-recorded voters. Only for voting phases.' }

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was missing from the create phase tool.

# `*_multiloc` fields merge per-locale (locales the caller didn't pass are kept); others replace.
# Callers should reject unknown/non-updatable keys before calling this.
def apply_attributes(record, attributes)
attributes.each do |key, value|

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Moved this to shared file, as the new update tools for Phase/Project also need it.

include_all_areas: { type: 'boolean', description: 'Whether the project is associated with all areas.' },
listed: { type: 'boolean', description: 'Whether the project is listed/discoverable (vs accessible by link only).' },
track_participation_location: { type: 'boolean', description: "Whether to track participants' location (requires the participation-location feature)." }
},

@amanda-anderson amanda-anderson Jun 12, 2026

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again, some missing attributes added to the create project tool. Could be argued we don't need Listed here, but I don't think it hurts either :)

<<~DESC.squish
Updates an existing phase. Partial update — only the fields you pass change, and `*_multiloc`
fields merge per locale. Accepts the same fields as create_phase, except project_id — a phase
can't be moved to another project. Changing participation_method is rejected if the phase

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A phase can't be moved to another project

Figured this was best ^

@amanda-anderson amanda-anderson requested a review from adessy June 12, 2026 11:22
@@ -62,6 +62,8 @@ def tools
McpServer::Tools::CreatePollQuestion,

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: Flagging use of Clade to help write code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant