Spaces:
Sleeping
Sleeping
Commit History
-
Fix concurrent proxy client operations with session isolation (#1083)
Jeremiah Lowin +1: ClaudeUnverified signature* Refactor Client session state with ClientSessionState dataclass Fixes #1068 by introducing ClientSessionState to encapsulate session management attributes, simplifying Client.new() and preventing concurrent proxy client context mixing through client factory pattern. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com> * Update proxy documentation for new client factory pattern Documents the new session management behavior, client_factory parameter, and concurrent operation safety introduced in v2.10.3 to fix #1068. * Remove deprecation of client parameter and update documentation - Undeprecated FastMCPProxy client parameter - Made client_factory the advanced option for custom control - Added detailed explanation of how client factories work internally - Removed outdated note about proxy feature limitations - Removed fabricated Advanced Usage section * Re-do proxy documentation * Fix deprecated client parameter to provide sess…c7708b2 -
Fix docstring format for fastmcp.client.Client (#1094)
Neil ConwayUnverified signature199f3e5
-
Add documentation
Jeremiah Lowin4943730 -
Replace asserts with runtime checks
Jeremiah Lowin91dbb6a -
Refactor Client context management to avoid concurrency issue
hopeful3b238c3 -
Add Cursor support via CLI integration (#1052)
Jeremiah LowinUnverified signature* Add Cursor support * Use url-safe encoding6090024
-
Pass httpxerrors through
Jeremiah Lowinfaf4760 -
Improve early error handling for stdio transport
Jeremiah Lowin445f86a
-
Handler must be async; add to sessionkwargs
Jeremiah Lowin1f71f65 -
Merge branch 'main' into elicitation
Jeremiah Lowin067cea2
-
Add structured content & update almost all tests
Jeremiah Lowinaa46c09 -
Update tool transformation for ToolResult compatibility
Jeremiah Lowin +1: Claude- TransformedTool.run() now returns ToolResult instead of list[ContentBlock] - forward() and forward_raw() return ToolResult from parent tools - Transform functions can return ToolResult for full control or any value for auto-wrapping - Maintains backward compatibility with existing transform functions 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>7974ade -
Add structured output support
Jeremiah Lowin- Tools can return StructuredOutput() for explicit structured data - Tools with output_schema automatically return structured data - Client hydrates structured responses into typed objects - Maintains backward compatibility with unstructured-only tools03a2687
-
Merge branch 'main' into protocol-update
Jeremiah Lowin5e329a1
-
Fix typing
Jeremiah Lowin8dd25be -
Add automatic MCP list change notifications and client message handling
Jeremiah Lowin +1: ClaudeImplements comprehensive notification system for tools, resources, and prompts with automatic client updates and flexible message handlers. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>6fe9090
-
Merge branch 'protocol-update' into elicitation
Jeremiah LowinUnverified signature1acd948 -
Merge branch 'main' into protocol-update
Jeremiah Lowin401e5ce -
Update client.py
Jeremiah Lowin2aee6b2 -
Update src/fastmcp/client/client.py
Jeremiah Lowin +1: CopilotUnverified signatureCo-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>497cc75 -
Implement client-side argument serialization with focused tests
Jeremiah Lowin +1: Claude- Add pydantic_core.to_json() serialization for non-string prompt arguments - Update type annotations to accept dict[str, Any] instead of dict[str, str] - Add focused tests covering specific scenarios: * Client always serializes non-string args regardless of server types * Integration with server-side type conversion * Client serialization error with specific PydanticSerializationError * Server deserialization error with specific McpError match This ensures MCP protocol compliance while maintaining developer experience with typed arguments. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>da5f976
-
Remove schema to type
Jeremiah Lowinf1e6d16 -
Merge branch 'protocol-update' into elicitation
Jeremiah Lowin6d98edc -
Update types and tests for upcoming SDK release
Jeremiah Lowin3c4246c -
Implement elicitation feature for FastMCP following sampling pattern
Jeremiah Lowin +1: ClaudeAdded comprehensive elicitation support including: - Client-side handler infrastructure following sampling pattern - Server-side Context.elicit() method with type safety and validation - Support for primitive types (str, int, float, bool) with automatic wrapping - Support for dataclasses and other complex types - Pattern matching with AcceptedElicitation, DeclinedElicitation, CancelledElicitation - Comprehensive atomic test coverage for all scenarios 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>baead56
-
Add audio support
Jeremiah Lowin8dc263e
-
Merge branch 'main' into settings
Jeremiah Lowin36b7a70
-
Ensure client is only initialized once
Jeremiah Lowinc04707c -
Remove open-ended and server-specific settings
Jeremiah Lowin927e044
-
Use anyio.event
Jeremiah Lowin9cad16d -
Ensure close() cleans up clients
Jeremiah Lowin917b76a -
Merge branch 'jlowin:main' into main
SillocanUnverified signature74262ae -
fix: Use a background task for managing session state mimicing stdiotransport
Sillocanb18add0
-
Update token cache
Jeremiah Lowin7218a9e -
OAuth client
Jeremiah Lowin9813e5f
-
Merge branch 'main' into oauthclient
Jeremiah Lowind3ba095 -
Reset session after closing
Jeremiah Lowin9e4d18c -
Add keep_alive param to reuse subprocess
Jeremiah Lowin0c29eb8 -
Improve type inference
Jeremiah Lowin7fb0010 -
Improve type inference from client transport
Jeremiah Lowinfa6e614
-
Fix docstring
Jeremiah Lowin4f8c21c -
Add global setting
Jeremiah Lowinb056b3b -
types, None type impossible for init_timeout
jfouretdab7514 -
ruff format src/fastmcp/client/client.py
jfouretac7f295 -
add init_timeout for mcp client
jfouret6c9d31c
-
Merge branch 'main' into mask-errors
Jeremiah LowinUnverified signature7a8ed45
-
Feat(client): add cancel notification method
davenpi1b886a3 -
Make error masking configurable
Jeremiah Lowin85e9cfd
-
Support creating clients from mcpconfig
Jeremiah Lowina01a818
-
Trap timeouterror
Jeremiah Lowin18a0421