Commit graph

68 commits

Author SHA1 Message Date
Jeremiah Lowin
e50f4ae965
Add Cursor support via CLI integration (#1052)
* Add Cursor support

* Use url-safe encoding
2025-07-05 20:30:47 -04:00
Jeremiah Lowin
ef742d9400
Ensure multi-client configurations use new ProxyClient (#1045)
* Validate elicitation responses are dicts

* Ensure advanced MCP features are forwarded through proxy

* Use proxy client in tests
2025-07-05 11:57:03 -04:00
Jeremiah Lowin
e182231fc8
Add path expansion to image/audio/file (#1038)
* Add path expansion to image/audio/file

* Make path tests platform agnostic
2025-07-04 09:51:30 -04:00
Jeremiah Lowin
9b9c0fce2c Merge branch 'main' into elicitation 2025-06-28 15:08:16 -04:00
Jeremiah Lowin
3805ac9b44 Provide a response type to client 2025-06-28 09:47:14 -04:00
Jeremiah Lowin
79c086febe
Merge branch 'main' into auth 2025-06-28 08:16:16 -04:00
Jeremiah Lowin
e22267142e
Merge pull request #901 from jlowin/output-schema
MCP 6/18/25: Add output schema to tools
2025-06-28 08:16:06 -04:00
Jeremiah Lowin
3598e947b2 Update test_mcp_config.py 2025-06-28 08:15:43 -04:00
Jeremiah Lowin
db24c85359 Update all tests 2025-06-27 21:41:37 -04:00
Aditya Bansal
f524652f25 Add OpenAPI extensions support to HTTPRoute
- Add extensions field to HTTPRoute class to store x-* fields
  - Extract extensions from operation's model_extra in parser
  - Add test to verify extensions are properly parsed
2025-06-27 15:27:36 -07: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
6584750667 Fix external schema reference handling in OpenAPI parser
Previously, external schema references (URLs) in OpenAPI schemas were
silently passed through and only failed during JSON schema validation
with confusing "failed to match exactly one schema" errors.

This change:
- Detects external references in _replace_ref_with_defs() and raises clear error messages
- Updates exception handlers to propagate external reference errors while preserving other error handling
- Adds comprehensive test coverage for external reference detection
- Provides helpful error messages explaining that FastMCP only supports local schema references

Fixes #926

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-25 21:25:06 -04:00
Jeremiah Lowin
0142bb2af1
Merge branch 'protocol-update' into output-schema 2025-06-22 13:46:26 -04:00
Jeremiah Lowin
8506f78453 Fix event loop conflict in inspect CLI command
Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-21 20:04:39 -04:00
Jeremiah Lowin
6a3a3077b7 Add fastmcp inspect command with detailed server analysis
- Add comprehensive server inspection utility supporting both FastMCP 1.x and 2.x
- Create detailed info dataclasses for tools, prompts, resources, and templates
- Implement CLI command with path:object notation and JSON output
- Add version reporting (fastmcp_version, mcp_version, server_version)
- Include comprehensive unit tests for utilities and CLI

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-21 16:40:54 -04:00
Jeremiah Lowin
337c2f8db5
Merge pull request #897 from owtaylor/openapi-recursive-components 2025-06-20 18:43:27 -04:00
Jeremiah Lowin
3bc585788f Add output schema to tools 2025-06-20 17:54:07 -04:00
Owen W. Taylor
14d1b8a94d openapi: Rewrite recursive #/components/schemas/ references
When a schema referenced another schema as #/components/schemas/...
that wasn't properly rewritten into #/$defs/..
2025-06-20 14:34:47 -04:00
Owen W. Taylor
bbf8165636 openapi: Improve pruning of unused defs
Defs that are used only by other unused defs were counted as
used. Fix this by tracing what defs use other defs recursively.
2025-06-20 14:34:41 -04:00
Jeremiah Lowin
fbe2fc3533 Add transport handling for trailing slashes 2025-06-20 13:12:23 -04:00
Jeremiah Lowin
18ae625fef Update docs and test 2025-06-20 13:06:48 -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
6dc2bd7ca2 Merge branch 'main' into settings 2025-06-10 12:02:39 -04:00
Jeremiah Lowin
47b2c58134
Merge branch 'main' into transform-tools-2 2025-06-09 17:24:23 -04:00
Jeremiah Lowin
6fbb555962 Support remote auth in mcpconfig 2025-06-07 21:39:57 -04:00
Jeremiah Lowin
aaa09ca7a3 Remove open-ended and server-specific settings 2025-06-07 20:20:04 -04:00
Jeremiah Lowin
23617c9c72 Use ellipsis default 2025-06-07 16:58:59 -04:00
William Easton
93a7255f7a
Make the type checker less sad 2025-06-05 23:02:40 -05:00
Jeremiah Lowin
31fd9abee0 Remove DecoratedFunction 2025-06-05 09:18:39 -04:00
Jeremiah Lowin
d1549c3d35 Remove empty parens 2025-06-04 15:37:55 -04:00
Jeremiah Lowin
a8c309f59f Make sure tests are atomic 2025-06-04 10:29:25 -04:00
ShiWei
82a987b900 add tests for _replace_ref_with_defs 2025-06-04 09:23:37 +08:00
ShiWei
6baa906813 replace nested requestBody's #/components/ with 2025-06-04 08:54:55 +08:00
Jeremiah Lowin
f1e3713fc6 Update test typing 2025-05-31 20:41:18 -04:00
Jeremiah Lowin
794ef3f114 Match functions and methods 2025-05-23 19:00:54 -04:00
Jeremiah Lowin
213abc4244 Pass client headers through to OpenAPI client 2025-05-23 12:38:24 -04:00
Jeremiah Lowin
d618f9151b add transport to stdio server in mcpconfig, with default 2025-05-22 11:25:25 -04:00
Jeremiah Lowin
fa1c94ccdc Support creating clients from mcpconfig 2025-05-20 20:48:16 -04:00
Jeremiah Lowin
f5cddc3219 Formalize MCP Config 2025-05-20 17:43:32 -04:00
Jeremiah Lowin
44a7f10ee6 prune titles from jsonschemas 2025-05-14 15:28:16 -04:00
Jeremiah Lowin
e4eaa9890b ensure all json schemas are compressed 2025-05-14 14:20:18 -04:00
Jeremiah Lowin
ff318e655d Add reprs for OpenAPI objects 2025-05-14 13:42:20 -04:00
Jeremiah Lowin
7c257a481f
Merge pull request #388 from didier-durand/add-test-cache
Adding tests for TimedCache
2025-05-09 18:08:23 -04:00
Jeremiah Lowin
3ccf27930f Fix typing and static issues 2025-05-09 18:06:51 -04:00
Didier Durand
31f07d8ddf Adding tests for TimedCache 2025-05-09 18:15:47 +02:00
Didier Durand
f8130cc22f Adding a few tests to Image type 2025-05-09 18:00:00 +02:00