Goal
Migrate github.com/mark3labs/mcp-go from v0.23.1 to v0.52.0 (or current latest).
Context
Deferred from #139 (the routine bump PR avoided this major because of breaking API changes). This issue is the dedicated migration cycle.
Notes
Big jump (v0.23 → v0.52). Same breaking surface as e2e-mcp. Verify against the MCP contract on each tool.
Known breaking changes (from upstream)
- Tool argument type:
map[string]interface{} → any
- Request handler signatures changed; verify each handler against the new
v0.52 API
- Likely renames in the public surface
Tasks
- Read the upstream changelog: https://github.com/mark3labs/mcp-go/releases (jump from v0.23.1 → v0.52.0).
- Apply the dependency bump:
go get github.com/mark3labs/mcp-go@latest && go mod tidy
- Fix all build errors. Map:
- Old
Arguments map[string]interface{} → new Arguments any (assert/decode at call site)
- Old request handler shapes → new shapes (see godoc / examples in upstream README)
- Verify all MCP tools still work end-to-end (
go test ./... plus a manual smoke against a real client if test coverage is thin).
- Update any internal docs / examples referencing the old API.
Acceptance
Goal
Migrate
github.com/mark3labs/mcp-gofrom v0.23.1 to v0.52.0 (or current latest).Context
Deferred from #139 (the routine bump PR avoided this major because of breaking API changes). This issue is the dedicated migration cycle.
Notes
Big jump (v0.23 → v0.52). Same breaking surface as e2e-mcp. Verify against the MCP contract on each tool.
Known breaking changes (from upstream)
map[string]interface{}→anyv0.52APITasks
Arguments map[string]interface{}→ newArguments any(assert/decode at call site)go test ./...plus a manual smoke against a real client if test coverage is thin).Acceptance
go build ./...andgo test ./...clean