Skip to content

Bump ModelContextProtocol to 1.2.0#896

Merged
erikdarlingdata merged 1 commit into
devfrom
feature/mcp-1.2.0
Apr 25, 2026
Merged

Bump ModelContextProtocol to 1.2.0#896
erikdarlingdata merged 1 commit into
devfrom
feature/mcp-1.2.0

Conversation

@erikdarlingdata
Copy link
Copy Markdown
Owner

Summary

Moves ModelContextProtocol and ModelContextProtocol.AspNetCore in Dashboard and Lite from 0.7.0-preview.1 → 1.2.0 — getting off the preview tag and onto a stable 1.x.

The C# SDK landed 1.0 between these two points, but our codebase happens to use only the stable subset of the surface that survived 1.0 stabilization unchanged:

  • [McpServerTool] / [McpServerToolType] attributes — every site already specifies Name = "..."
  • AddMcpServer(...).WithHttpTransport().WithTools<T>() chains
  • _app.MapMcp()
  • DI-bound tool method parameters

None of the actually-breaking APIs across 0.7→1.2 are referenced anywhere in this repo: filter API rename (Add*FilterWithMessageFilters/WithRequestFilters), RequestContext ctor signature, RunSessionHandler, ImageContentBlock.Data / AudioContentBlock.Data / FromImage / FromAudio, McpServerHandlers, legacy SSE endpoints. 154 [McpServerTool] sites + 39 [McpServerToolType] sites compile unchanged. Zero source code changes — packaging only.

Behavioral changes worth knowing

  • Streamable-HTTP session handling is stricter (returns 400 for stateful POSTs without a session ID, or invalid Protocol-Version headers).
  • Legacy /sse and /message endpoints are off by default. Server-side is fine since we already use WithHttpTransport() — but any consumer pinned to the old SSE endpoints needs to switch to Streamable HTTP.

Test plan

  • Dashboard builds clean (0 errors)
  • Lite builds clean (0 errors)
  • Lite launches — in-process MCP server starts on the configured port (default 5151)
  • POST / initialize against the new Streamable HTTP transport returns the full server capabilities and tool list (verified via curl, serverInfo.version = "1.2.0")
  • Manual: connect Claude Code (or any MCP client) to both Dashboard and Lite and run a couple of tools (e.g. list_servers, get_collection_health) end-to-end

🤖 Generated with Claude Code

Moves Dashboard and Lite from the 0.7.0-preview.1 SDK to the stable 1.2.0
release. The C# SDK landed 1.0 between these two points and the codebase
happens to use only the stable subset of the surface (attributes,
AddMcpServer/WithHttpTransport/WithTools<T>/MapMcp, DI-bound tool
methods) — none of the breaking changes (filter API rename, RequestContext
ctor, RunSessionHandler, binary-content types, McpServerHandlers,
legacy SSE) touch this repo.

154 [McpServerTool] sites and 39 [McpServerToolType] sites compile
unchanged. Zero source code changes — packaging only.

Verified:
- Dashboard and Lite build clean (0 errors)
- Lite launches; the in-process MCP server starts on :5151
- A POST initialize against the new Streamable HTTP transport returns
  the full server capabilities and tool descriptions

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@erikdarlingdata erikdarlingdata merged commit 623fbd9 into dev Apr 25, 2026
3 checks passed
@erikdarlingdata erikdarlingdata deleted the feature/mcp-1.2.0 branch April 25, 2026 15:16
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