Releases: mark3labs/mcp-go
Releases · mark3labs/mcp-go
v0.8.0
🚀 Changelog
✨ New Features
- Added comprehensive notification handling system (c61624c)
- Server can now send notifications to specific clients
- Added notification context tracking
- Implemented notification channels for async communication
🔄 API Changes
- Updated handler function signatures to include context (3a777e4)
- Tool handlers now receive
context.Contextandmcp.CallToolRequest - Prompt handlers now receive
context.Contextandmcp.GetPromptRequest - Resource handlers now receive
context.Contextandmcp.ReadResourceRequest
- Tool handlers now receive
🛠️ Improvements
- Enhanced server capabilities configuration (9d20d89)
- Standardized resource capabilities
- Updated prompts and tools capabilities
- Improved initialization process
🧰 Internal Changes
- Refactored notification handling in SSE server (459e421)
- Updated stdio server to support notifications (d1c3cfc)
- Added client context tracking mechanism (63c687a)
- Improved error logging in stdio server
📚 Documentation
- Updated example code and README with new handler signatures (63c687a)
- Added documentation for notification handling
🎨 Code Style
- Applied consistent formatting throughout codebase (d1c3cfc)
v0.7.0
Changelog 📝
Features ✨
- Added collapsible section for Resource Examples in README.md using
<details>tags - Added environment variables support to StdioMCPClient constructor 🔧
- New
env []stringparameter to pass environment variables to subprocess
- New
Code Changes 🛠️
- Modified
NewStdioMCPClientsignature:// Old NewStdioMCPClient(command string, args ...string) // New NewStdioMCPClient(command string, env []string, args ...string)
Documentation 📚
- Improved README.md organization by making Resource Examples collapsible
- Updated examples and tests to accommodate new environment variables parameter
Tests 🧪
- Updated
TestStdioMCPClientto include empty environment variables slice - Added test coverage for environment variables functionality
Examples 💡
- Updated filesystem_stdio_client example to use new client constructor with environment variables parameter
These changes enhance the flexibility of the StdioMCPClient by allowing environment variable configuration while improving documentation readability! 🎉
v0.6.0
Changelog 🚀
Added ✨
- New example server implementation in
examples/everything/main.goshowing comprehensive server features - New
prompts.gomodule with flexible prompt configuration API - New
resources.gomodule with resource configuration helpers - Helper functions for creating and configuring prompts and resources using functional options pattern
- Improved resource template handling with regex-based URI matching
Changed 🔄
- Refactored resource handling to use structured types and interfaces
- Updated resource handlers to accept full request context
- Improved server initialization and configuration options
- Enhanced documentation with better examples and clearer explanations
- Reorganized example code structure for better organization
Removed 🗑️
- Removed older calculator example implementation
- Removed some redundant code examples from documentation
- Cleaned up unused helper functions
- Removed outdated server implementations
Fixed 🐛
- Fixed resource template URI pattern matching
- Improved error handling in server responses
- Fixed documentation formatting and examples
- Fixed inconsistencies in server capabilities handling
Developer Experience 👩💻
- Added more comprehensive examples and documentation
- Improved API ergonomics with builder-style configuration
- Better type safety and error handling
- Clearer separation of concerns in server implementation
Documentation 📚
- Added detailed examples for resources and prompts
- Improved explanation of server capabilities
- Updated code examples to use new helper functions
- Enhanced readability of documentation
The changes represent a significant improvement in the API design and implementation, making it more flexible and easier to use while maintaining backwards compatibility.