v1.4.0
What's Changed
- Update URL validation to allow file and other nonstandard schemas by @hmwildermuth in #207
 - Add client handling for sampling, list roots, ping by @jerome3o-anthropic in #218
 - Updated typing on request context for the server to use server session by @jerome3o-anthropic in #217
 - Fix #177: Returning multiple tool results by @dsp-ant in #222
 - Use proper generic for Context by @Kludex in #245
 - Drop 
AbstractAsyncContextManagerfor proper type hint toBaseSessionby @Kludex in #257 - Add ServerSessionT type var to Context by @Kludex in #271
 - Create Client websocket.py by @calclavia in #179
 - Close unclosed resources in the whole project by @Kludex in #267
 - Add support for Linux configuration path in get_claude_config_path by @emsi in #270
 - Release on GitHub release by @Kludex in #276
 - Changed default log level to error by @Michaelzag in #258
 - refactor: reorganize message handling for better type safety and clarity by @dsp-ant in #239
 
New Contributors
- @hmwildermuth made their first contribution in #207
 - @Kludex made their first contribution in #245
 - @calclavia made their first contribution in #179
 - @emsi made their first contribution in #270
 - @Michaelzag made their first contribution in #258
 
Full Changelog: v1.3.0...v1.4.0