Sourced from github.com/mark3labs/mcp-go's releases.
Release v0.29.0
What's Changed
- refactor: make CallToolRequest.Arguments more flexible (Breaking Change) by
@ezynda3in mark3labs/mcp-go#287- Drop unused fields from server.sseSession by
@ggoodmanin mark3labs/mcp-go#303- chore: remove unused variables and type arguments by
@pottekkatin mark3labs/mcp-go#302- chore(Srv/stdio): duplicated setting of ErrorLogger by
@cryo-zdin mark3labs/mcp-go#306- fix: handle the situation where the channel is closed by
@button-chenin mark3labs/mcp-go#304Breaking Changes
In
v0.29.0, MCP-Go introduces breaking changes to tool request handling. The main change is thatrequest.Params.Argumentsis no longer directly accessible as a map. Instead, you must use the newGetArguments()method to retrieve arguments as a map. For type-safe argument access, new helper methods likeRequireString(),RequireFloat(), andRequireBool()have been added. To migrate:
- Replace direct access to
request.Params.Arguments["key"]withrequest.GetArguments()["key"]- For better type safety, use the new helper methods:
request.RequireString("key"),request.RequireFloat("key"), etc.- For complex argument structures, use the new
BindArguments()method with a struct, or try the new typed tool handlers withmcp.NewTypedToolHandler()as shown in the newexamples/typed_toolsexample.New Contributors
@ggoodmanmade their first contribution in mark3labs/mcp-go#303@button-chenmade their first contribution in mark3labs/mcp-go#304Full Changelog: https://github.com/mark3labs/mcp-go/compare/v0.28.0...v0.29.0
99720bb
fix: handle the situation where the channel is closed (#304)420d521
chore(Srv/stdio): duplicated setting of ErrorLogger (#306)eaa6f29
chore: remove unused variables and type arguments (#302)65010c4
chore: drop unused fields from sseSession (#303)28c9cc3
refactor: make CallToolRequest.Arguments more flexible (Breaking Change)
(#287)