Jeremiah Lowin
aab1f74810
response_type is None
2025-06-30 13:12:25 -04:00
Jeremiah Lowin
eaf27c710d
Support "no response" elicitation requests
2025-06-30 13:03:57 -04:00
Jeremiah Lowin
ed331e717b
Improve early error handling for stdio transport
2025-06-28 21:37:48 -04:00
Jeremiah Lowin
ebc721bdf1
Fix tests
2025-06-28 20:19:08 -04:00
Jeremiah Lowin
ecfbf5de00
Support implicit Elicitation acceptance
2025-06-28 20:15:23 -04:00
Jeremiah Lowin
a34fb9e3bb
Support constrained choice
2025-06-28 14:59:31 -04:00
Jeremiah Lowin
3805ac9b44
Provide a response type to client
2025-06-28 09:47:14 -04:00
Jeremiah Lowin
45d9814374
Handler must be async; add to sessionkwargs
2025-06-28 08:32:48 -04:00
Jeremiah Lowin
11d2bacbb4
Merge branch 'main' into elicitation
2025-06-28 08:26:55 -04:00
Jeremiah Lowin
d8dc28b9b2
Add structured content & update almost all tests
2025-06-27 15:40:52 -04:00
Jeremiah Lowin
38036b1f42
Add automatic MCP list change notifications and client message handling
...
Implements 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>
2025-06-24 22:33:06 -04:00
Jeremiah Lowin
987dd85826
Update test_streamable_http.py
2025-06-22 20:08:36 -04:00
Jeremiah Lowin
ffe0c92d63
Alias streamable-http as http
2025-06-22 20:00:11 -04:00
Jeremiah Lowin
76e3df1bc1
Add "http" as an alias for streamable-http
2025-06-22 18:55:07 -04:00
Jeremiah Lowin
c685c30b8d
Merge branch 'protocol-update' into elicitation
2025-06-22 13:46:08 -04:00
Jeremiah Lowin
73e1aa2112
Apply pre-commit formatting changes
...
🤖 Generated with [Claude Code](https://claude.ai/code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-22 10:29:15 -04:00
Jeremiah Lowin
a7f14d90a4
Implement client-side argument serialization with focused tests
...
- 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>
2025-06-22 10:18:48 -04:00
Jeremiah Lowin
18ae625fef
Update docs and test
2025-06-20 13:06:48 -04:00
Jeremiah Lowin
c0d3313ac6
Implement elicitation feature for FastMCP following sampling pattern
...
Added 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>
2025-06-20 09:47:53 -04:00
Jeremiah Lowin
725c061d66
Fix import prefix behavior
2025-06-19 15:19:31 -04:00
Miki Yutani
60dada7026
Fix code formatting for pre-commit hooks
2025-06-16 13:08:44 +09:00
Miki Yutani
42121b2767
Add version parameter to FastMCP constructor
2025-06-16 12:38:15 +09:00
Alexander Seeliger
ec24a07060
chore: fix format
2025-06-15 18:25:55 +02:00
Alexander Seeliger
68567e5b59
chore: revert change
2025-06-15 18:12:14 +02:00
Alexander Seeliger
64bf0a4112
chore: clean up tests
2025-06-15 18:11:43 +02:00
Alexander Seeliger
92d3cffa53
chore: remove other tests
2025-06-15 17:52:13 +02:00
Alexander Seeliger
bdc3e395e1
fix: missing related_request_id for report_progress
2025-06-15 17:47:09 +02:00
Jeremiah Lowin
a1955eb5cd
Remove old client test; ensure server starts on every test
2025-06-14 14:16:18 -04:00
Jeremiah Lowin
c9c10a55d8
Try expanding timeout because test error
2025-06-14 10:46:20 -04:00
Jeremiah Lowin
1866c17400
Update tests
2025-06-10 17:08:23 -04:00
Jeremiah Lowin
bc59a4fbf5
Ensure client is only initialized once
2025-06-08 14:48:05 -04:00
Jeremiah Lowin
6d36171f38
Fix passing token string to client auth
2025-06-07 21:39:50 -04:00
Jeremiah Lowin
099d340208
Update tests for prompts
2025-06-04 16:37:41 -04:00
Jeremiah Lowin
18615bc48b
Remove empty parens
2025-06-04 15:41:28 -04:00
Jeremiah Lowin
d1549c3d35
Remove empty parens
2025-06-04 15:37:55 -04:00
Jeremiah Lowin
d7824f1414
Move nested server
2025-06-01 09:35:42 -04:00
Jeremiah Lowin
8fb709c98c
Simplify code for running servers in processes
2025-06-01 09:35:06 -04:00
Jeremiah Lowin
3e2fbb606b
Merge branch 'main' into fix-typing
2025-05-31 20:47:12 -04:00
Jeremiah Lowin
f1e3713fc6
Update test typing
2025-05-31 20:41:18 -04:00
Jeremiah Lowin
ad8182eed0
Create http utility
2025-05-31 19:33:50 -04:00
Jeremiah Lowin
2390fb4da6
clean up test inits
2025-05-31 19:32:08 -04:00
Jeremiah Lowin
814a6e4419
Add concurrency test
2025-05-31 18:08:43 -04:00
Jeremiah Lowin
1d131a8c96
Create test_oauth.py
2025-05-30 21:17:56 -04:00
Jeremiah Lowin
975f151a9b
Reset session after closing
2025-05-28 22:02:03 -04:00
Jeremiah Lowin
9bbd417129
Add keep_alive param to reuse subprocess
2025-05-28 21:46:40 -04:00
Jeremiah Lowin
ee059b02b6
Update test_openapi.py
2025-05-28 18:38:16 -04:00
Jeremiah Lowin
d311a2b878
Ensure behavior-affecting headers are excluded
2025-05-28 18:30:33 -04:00
Jeremiah Lowin
307a3b908a
Ensure content-length is always stripped from client headers
2025-05-24 07:38:34 -04:00
Jeremiah Lowin
ae960e2f5a
Update tests for new names
2025-05-23 17:16:32 -04:00
Jeremiah Lowin
e0ae84c75f
Use lowercase name for headers
2025-05-23 16:02:42 -04:00