Skip to content

MCP: upgrade framework and test stateless tools/list - #2644

Merged
erichare merged 6 commits into
mainfrom
fix/mcp-protocol-foundation
Oct 23, 2026
Merged

erichare merged 6 commits into
mainfrom
fix/mcp-protocol-foundation

Conversation

@erichare

@erichare erichare commented Oct 12, 2026 •

Copy link
Copy Markdown
Contributor

What this PR does:

Upgrades the MCP framework from 1.13.0 to 2.0.3. Tests verify tools/list without initialization or a session ID using protocol version 2026-07-28. This is the first PR in the MCP stack.

Which issue(s) this PR fixes:

Part of #2625, which remains open. Version restrictions still depend on quarkiverse/quarkus-mcp-server#1078.

Verification

All 381 focused tests passed with no failures, errors, or skips on the combined MCP stack with this cleanup. This was not an isolated PR run.

JAVA_HOME=/Library/Java/JavaVirtualMachines/graalvm-21.jdk/Contents/Home ./mvnw -B -ntp test '-Dtest=Mcp*Test,!*IntegrationTest,CommandResultToToolResponseTest,DynamicTTLCacheTests,CqlSessionFactoryTests,InsertManyCommandTest,FindCommandTest,UpdateClauseDeserializerTest' -DskipITs -Dxml-format.skip=true

Packaged integration tests and manual client checks were not rerun in this sweep. Current-head CI passed unit tests and both DSE and HCD integration jobs.

Checklist

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

RED: McpProtocolTest executes against MCP 1.13.0 and fails because the first tools/list POST returns HTTP 400 instead of 200.
GREEN: the same raw HTTP McpProtocolTest passes with MCP BOM 2.0.3 on Quarkus 3.38.1 and JDK 21. Both independent tools/list requests return complete results without Mcp-Session-Id.
@github-actions

Copy link
Copy Markdown
Contributor

📈 Unit Test Coverage Delta vs Main Branch

Metric Value
Main Branch 54.71%
This PR 54.77%
Delta 🟢 +0.06%
✅ Coverage improved!

@github-actions

Copy link
Copy Markdown
Contributor

Unit Test Coverage Report

Overall Project 54.77% 🍏

There is no coverage information present for the Files changed

Both DSE and HCD CI exposed four obsolete empty-metadata assertions after the framework upgrade. Require only serverInfo and validate its name and version. The two affected DSE integration classes pass locally: 17 tests, zero failures.
@github-actions

Copy link
Copy Markdown
Contributor

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

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

@github-actions

Copy link
Copy Markdown
Contributor

Integration Test Coverage Report (dse69-it)

Overall Project 72.95% 🍏

There is no coverage information present for the Files changed

@github-actions

github-actions Bot commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

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

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

@github-actions

github-actions Bot commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

Integration Test Coverage Report (hcd-it)

Overall Project 74.27% 🍏

There is no coverage information present for the Files changed

@amorton amorton left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Some nit picks, the test in McpProtocolTest needs a comment to explain why it works.

Comment thread src/test/java/io/stargate/sgv2/jsonapi/api/v1/mcp/McpHttpTestSupport.java Outdated
Comment thread src/test/java/io/stargate/sgv2/jsonapi/api/v1/mcp/McpHttpTestSupport.java Outdated
Comment thread src/test/java/io/stargate/sgv2/jsonapi/api/v1/mcp/McpIntegrationTestBase.java Outdated
Comment thread src/test/java/io/stargate/sgv2/jsonapi/api/v1/mcp/McpIntegrationTestBase.java Outdated
@erichare
erichare merged commit 771d6cb into main Oct 23, 2026
3 checks passed
@erichare
erichare deleted the fix/mcp-protocol-foundation branch October 23, 2026 20:42
@erichare erichare mentioned this pull request Oct 27, 2026
4 tasks done
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.

3 participants