Skip to content

fix: describe accepted MCP update syntax in tool schemas - #2651

Open
erichare wants to merge 1 commit into
mainfrom
fix/mcp-update-wire-schema
Open

erichare wants to merge 1 commit into
mainfrom
fix/mcp-update-wire-schema

Conversation

@erichare

@erichare erichare commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

What this PR does:

Describes all thirteen update operators in the shared UpdateClause schema, including $pullAll, which only tables accept. The schema also says which operators tables and collections support. The enum and schema use the same wire-name constants. Contract tests check accepted and malformed payloads, and packaged tools/list tests cover all three update tools.

Which issue(s) this PR fixes:

Fixes #2631.

Verification

244 focused tests passed with 0 failures, 0 errors, and 0 skips at e1c9f67c1, this PR's commit in the rebuilt stack. The format check found 0 non-complying files out of 1,201. CI runs the unit and DSE/HCD integration suites on this push.

JAVA_HOME=/Library/Java/JavaVirtualMachines/graalvm-21.jdk/Contents/Home ./mvnw -B -ntp com.spotify.fmt:fmt-maven-plugin:check test -DskipITs -Dxml-format.skip=true -Dsurefire.failIfNoSpecifiedTests=false -Dquarkus.http.test-port=19089 '-Dtest=McpUpdateSchemaContractTest,McpOpenApiSchemaAdapterTest,McpClauseSchemaContractTest,DocumentUpdaterTest,TableUpdateOperatorResolverTest'

Manual client checks were not run.

Checklist

  • Changes manually tested
  • Automated Tests added/updated
  • Documentation added/updated
  • CLA Signed: DataStax CLA

MCP stack

Merges bottom up; row 1 is the bottom of the stack.

# PR Change Issue
1 #2651 Show accepted update syntax in tool schemas Fixes #2631
2 #2658 Describe every tool argument Part of #2604
3 #2645 Close the command context after each call Part of #2629
4 #2653 Return useful errors when setup fails Fixes #2628
5 #2648 Keep payloads and credentials out of logs Fixes #2635
6 #2649 Describe side effects and retry behavior Fixes #2636
7 #2655 Validate commands like the HTTP API Fixes #2632
8 #2656 Test request isolation, document tracing Refs #2629
9 #2657 Reject unapproved browser origins Part of #2630
10 #2659 Serve only protocol 2026-07-28 Part of #2625, #2626
11 #2669 Add opt-in OAuth authentication Refs #2642, #2643

@erichare
erichare requested a review from a team as a code owner October 20, 2026 19:56
@erichare
erichare force-pushed the fix/mcp-update-wire-schema branch from 231ab04 to 0405aa0 Compare October 21, 2026 18:51
@github-actions

github-actions Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

📈 Unit Test Coverage Delta vs Main Branch

Metric Value
Main Branch 56.74%
This PR 56.79%
Delta 🟢 +0.05%
✅ Coverage improved!

@github-actions

github-actions Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Unit Test Coverage Report

Overall Project 56.79% 🍏
Files changed 100% 🍏

File Coverage
UpdateOperator.java 100% 🍏
UpdateClause.java 93.18% 🍏

@github-actions

github-actions Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

➡️ Integration Test Coverage Delta vs Main Branch (hcd-it)

Metric Value
Main Branch 74.33%
This PR 74.33%
Delta ⚪ 0.00%
ℹ️ Coverage unchanged

@github-actions

github-actions Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Integration Test Coverage Report (hcd-it)

Overall Project 74.33% 🍏
Files changed 100% 🍏

File Coverage
UpdateOperator.java 94.21% 🍏
UpdateClause.java 78.98% 🍏

@github-actions

github-actions Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

➡️ Integration Test Coverage Delta vs Main Branch (dse69-it)

Metric Value
Main Branch 72.98%
This PR 72.98%
Delta ⚪ 0.00%
ℹ️ Coverage unchanged

@github-actions

github-actions Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Integration Test Coverage Report (dse69-it)

Overall Project 72.98% 🍏
Files changed 100% 🍏

File Coverage
UpdateOperator.java 94.21% 🍏
UpdateClause.java 78.98% 🍏

This branch has not been deployed

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

Labels

None yet

Projects

None yet

1 participant