Skip to content

feat(mcp): add streamable HTTP transport with integration test#177

Merged
adamw7 merged 3 commits into
mainfrom
feat/mcp-streamable-http-transport
Jun 2, 2026
Merged

feat(mcp): add streamable HTTP transport with integration test#177
adamw7 merged 3 commits into
mainfrom
feat/mcp-streamable-http-transport

Conversation

@adamw7
Copy link
Copy Markdown
Owner

@adamw7 adamw7 commented Jun 2, 2026

Summary

  • Add streamable HTTP transport support to the MCP server (McpConfiguration) alongside the existing stdio transport, switchable via transport.mode=streamable-http
  • Add McpStreamableHttpIT integration test that starts the server via @SpringBootTest on a random port and exercises the uniqueness_check tool end-to-end over HTTP using HttpClientStreamableHttpTransport
  • Add a dedicated GitHub Actions workflow (integration-tests.yml) that runs mvn verify -P integration-tests separately from the main CI build
  • Integration tests are excluded from mvn install and only run when the integration-tests Maven profile is activated

Test plan

  • mvn install passes without running integration tests
  • mvn verify -P integration-tests runs McpStreamableHttpIT and both tests pass (nonUniqueColumnReturnsFalse, uniqueColumnReturnsTrue)
  • GitHub Actions workflow MCP Integration Tests triggers on push

🤖 Generated with Claude Code

adamw7 and others added 3 commits June 1, 2026 19:54
Add configurable transport mode to the MCP server, supporting both
stdio (default) and streamable-http transports. Refactor Main to
resolve transport mode from --transport.mode= CLI arg, and extract
shared tool registration into McpConfiguration.registerTools().

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…flow

Add McpStreamableHttpIT that starts the MCP server via @SpringBootTest
with streamable-http transport on a random port, creates an
HttpClientStreamableHttpTransport client, and verifies the
uniqueness_check tool returns correct results over HTTP.

The test is excluded from mvn install and only runs when the
integration-tests Maven profile is activated. A dedicated GitHub
Actions workflow (.github/workflows/integration-tests.yml) runs
mvn verify -P integration-tests on push and PRs.

Also adds maven-failsafe-plugin to root pom pluginManagement.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace push/PR triggers with a scheduled cron trigger
to reduce CI load and run integration tests once per day.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@adamw7 adamw7 merged commit 9aa1ba3 into main Jun 2, 2026
3 checks passed
@adamw7 adamw7 deleted the feat/mcp-streamable-http-transport branch June 2, 2026 08:22
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