Commit graph

68 commits

Author SHA1 Message Date
Jeremiah Lowin
ddb557ba30 Update for 'result' kwarg instead of 'value' 2025-06-27 15:44:46 -04:00
Jeremiah Lowin
d8dc28b9b2 Add structured content & update almost all tests 2025-06-27 15:40:52 -04:00
Jeremiah Lowin
1e29149d5f Merge branch 'main' into output-schema 2025-06-26 19:30:35 -04:00
Jeremiah Lowin
7b9696405b Remove legacy json parsing
Because the server now validates inputs, its no longer viable to provide a JSON string where e.g. an array is expected, so we can entirely remove FastMCP's "legacy json parsing" support from 1.x.

This is a breaking change (for legacy opt-in behavior)
2025-06-26 18:19:43 -04:00
Jeremiah Lowin
9d51bca0d8 Merge branch 'main' into protocol-update 2025-06-26 18:13:59 -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
cc69e56758 Add output schema to tool decorator 2025-06-20 18:58:23 -04:00
Jeremiah Lowin
3bc585788f Add output schema to tools 2025-06-20 17:54:07 -04:00
Jeremiah Lowin
02b2ec1adf Update types and tests for upcoming SDK release 2025-06-20 09:56:21 -04:00
Jeremiah Lowin
085c5b765b Update docs and tests 2025-06-19 17:06:54 -04:00
Jeremiah Lowin
607125abf8 Update tool manager 2025-06-19 11:04:50 -04:00
Goro
4c60119767 Add missing tests 2025-06-16 08:10:34 +02:00
Goro
57e0b03711 Run pre-commit and fix typing issues 2025-06-16 07:12:41 +02:00
Goro
d2b2243957 Add file utility type and tests 2025-06-16 00:23:11 +02:00
Jeremiah Lowin
06dcff3b3b Add tests 2025-06-14 09:22:29 -04:00
Jeremiah Lowin
46ab813de6 Deprecate top-level import 2025-06-14 09:12:21 -04:00
William Easton
1a6bb55b27
add examples to param transformation 2025-06-11 13:43:11 -05:00
Jeremiah Lowin
7ca0da7577 Add test for disabled transformation tools 2025-06-10 11:10:14 -04:00
Jeremiah Lowin
9b201cfd74 Update test_tool_transform.py 2025-06-09 17:24:11 -04:00
Jeremiah Lowin
ac89a09332 fix typing 2025-06-09 17:21:01 -04:00
Jeremiah Lowin
f8854fb3fd Add documentation 2025-06-09 17:18:04 -04:00
Jeremiah Lowin
52700a4e22 Use hide instead of drop 2025-06-09 12:38:48 -04:00
Jeremiah Lowin
642f9149d4 Allow setting type with ArgTransform 2025-06-07 17:32:22 -04:00
Jeremiah Lowin
a147eb17f4 Add tool transformation 2025-06-07 17:04:21 -04:00
Jeremiah Lowin
d1549c3d35 Remove empty parens 2025-06-04 15:37:55 -04:00
Jeremiah Lowin
cc541d6eee Ensure tool serializer is applied 2025-06-04 12:47:12 -04:00
Jeremiah Lowin
7d520ec5d1 Use strict basemodel for Prompt; relax from_function deprecation 2025-06-04 10:46:48 -04:00
Jeremiah Lowin
6014e880ef Update test_tool_manager.py 2025-06-04 10:24:03 -04:00
Jeremiah Lowin
0b8bf825c1 Merge branch 'main' into transform-tools 2025-06-04 10:22:15 -04:00
Jeremiah Lowin
3a3c01708d Split Tool into Tool and FunctionTool 2025-06-04 10:19:14 -04:00
William Easton
246111bba7
Fix missing import 2025-06-02 10:08:48 -05:00
William Easton
b57f5fd9fc
Merge branch 'main' into tool_tests 2025-06-01 23:20:43 -05:00
Jeremiah Lowin
f1e3713fc6 Update test typing 2025-05-31 20:41:18 -04:00
William Easton
72e999d4be
Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-05-31 15:48:43 -05:00
William Easton
cf5d0c9e95
add test for list case and lint 2025-05-31 14:49:35 -05:00
William Easton
b086dd4f32
Add content tests, fix array wrapping single objects 2025-05-31 14:39:54 -05:00
Jeremiah Lowin
010170337f Ensure that tools/templates/prompts are compatible with callable objects 2025-05-23 18:53:55 -04:00
Jeremiah Lowin
53b067b4e7 Make error masking configurable 2025-05-22 09:08:16 -04:00
Jeremiah Lowin
6b4f700a59 Improve handling of exceptiongroups when raised in clients 2025-05-14 19:34:17 -04:00
Jeremiah Lowin
08d54ef65b
Merge pull request #437 from davenpi/feat/remove-tool
feat: add support for removing tools from server
2025-05-13 18:36:18 -04:00
davenpi
a6b7da4599 chore: unify tool not found error message 2025-05-13 16:54:16 -04:00
davenpi
d6f7dab9e6 feat: add support for removing tools from server 2025-05-13 16:39:04 -04:00
Jeremiah Lowin
6fa7c1704a Improve error handling for tools and resources 2025-05-13 14:19:55 -04:00
strawgate
a12edd7be5 fix recursive calls 2025-05-08 20:33:41 -05:00
Jeremiah Lowin
82aa53e09b Refactor context to avoid unecessary passing 2025-05-06 21:24:29 -04:00
Jeremiah Lowin
112b91f521 create a setting for legacy parsing 2025-05-06 13:21:38 -04:00
Jeremiah Lowin
c449f1d697 Handle args/kwargs appropriately for various objects 2025-05-04 15:00:26 -04:00
Jeremiah Lowin
c63fcc96ea Remove is_async attribute 2025-05-04 12:18:28 -04:00
Jeremiah Lowin
70598d4d7b Update test_tool.py 2025-05-04 12:07:47 -04:00
Jeremiah Lowin
51a867c3af Replace custom parsing with TypeAdapter 2025-05-04 12:07:00 -04:00