Skip to content

Support branches in the existing MCP tools - #272

Merged
nathanjcochran merged 6 commits into
mainfrom
nathan/branches-4-existing-tools
Nov 2, 2026
Merged

nathanjcochran merged 6 commits into
mainfrom
nathan/branches-4-existing-tools

Conversation

@nathanjcochran

@nathanjcochran nathanjcochran commented Oct 21, 2026 •

Copy link
Copy Markdown
Member

Updates existing MCP tools for branches, mirroring the CLI changes to the db and service commands.

  • db_query, db_schema, and db_extensions_list resolve service_id through the API's resolve endpoint. Behind TIGER_EXPERIMENTAL, they also accept a branch ID, and their descriptions say so. A paused or unready branch points at branch_start or branch_get.
  • service_get returns a fluid service's branch_count behind the gate. Without the gate, the field is left out of its schema.
  • service_delete names the branches deleted along with a fluid service, in its PROD prompt and in its result message. This isn't gated, since the branches are deleted either way. Only the tool description mentions branches behind the gate.
  • Tests: removes some helper-level tests of connection-target resolution, whose cases are now covered by the MCP tool tests.

@nathanjcochran
nathanjcochran added this pull request to stack #273 October 21, 2026 22:07
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch from 7a21733 to d3af981 Compare October 21, 2026 22:17
@nathanjcochran nathanjcochran self-assigned this Oct 21, 2026
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch from d3af981 to 39a0a86 Compare October 22, 2026 20:20
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch from 39a0a86 to d465879 Compare October 22, 2026 21:41
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch 3 times, most recently from 4e5f6ce to 3065b07 Compare October 26, 2026 21:01
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch 3 times, most recently from 78e1c9f to aa07cc2 Compare October 26, 2026 21:58
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch 4 times, most recently from ccf68bf to a4cad5c Compare October 28, 2026 19:30
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch from a4cad5c to ccf68bf Compare October 28, 2026 19:49
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch 3 times, most recently from 04584b3 to e75ba43 Compare October 30, 2026 16:35
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch 2 times, most recently from d3ee5c0 to 6a5e0a4 Compare October 30, 2026 16:57
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch 2 times, most recently from a8dba77 to 770447b Compare October 30, 2026 20:08
@nathanjcochran
nathanjcochran marked this pull request as ready for review October 30, 2026 21:26
@nathanjcochran
nathanjcochran requested a review from a team as a code owner October 30, 2026 21:26
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch from e4c9f78 to bea9ad9 Compare November 2, 2026 18:03
Base automatically changed from nathan/branches-3-branch-tools to main November 2, 2026 18:28
db_query and db_schema now resolve service_id through the API's resolve
endpoint, so behind the experimental gate they accept a branch ID as well
as a service or read replica set ID, and a paused or unready branch points
at the branch tools. service_get returns a fluid service's branch count
behind the gate. service_delete names the branches deleted along with a
fluid service in its PROD prompt and its result, regardless of the gate.
TestResolveConnectionTargetByID tested the resolve through an httptest
server, claiming the db tools couldn't reach its cases. They can: each
stubs the call past the connection. Its cases now live in the db_query,
db_schema, and db_extensions_list tables, which gain the ones they lacked
(a name match, a ready branch, and the branch cases in db_schema).

The db_query and db_schema stubs now also assert the connection target,
as db_extensions_list's does, so a case can show which endpoint and
credentials the tool connects with.
branch_count was a ServiceDetail field, so service_create's and
service_fork's output schemas advertised it, though only service_get sets
it. It now lives on ServiceGetDetail, which embeds ServiceDetail, and the
description no longer has to say which tool returns it.
@nathanjcochran
nathanjcochran force-pushed the nathan/branches-4-existing-tools branch from bea9ad9 to cd2dcf0 Compare November 2, 2026 18:28
@nathanjcochran
nathanjcochran merged commit eb4c144 into main Nov 2, 2026
4 checks passed
@nathanjcochran
nathanjcochran deleted the nathan/branches-4-existing-tools branch November 2, 2026 18:37
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.

2 participants