fastmcp/tests/server/openapi
Jeremiah Lowin 4a9f02c87c
Upgrade to MCP 1.17+ with RFC 9728 compliance (#2122)
* Upgrade to MCP 1.17+ with RFC 9728 compliance

Updates FastMCP to require MCP 1.17+ and implements RFC 9728-compliant
OAuth protected resource metadata URL handling.

The key change is that .well-known/oauth-protected-resource endpoints
are now registered at path-aware locations. For example, if an MCP
server is mounted at /mcp, the metadata endpoint is now at
/.well-known/oauth-protected-resource/mcp instead of
/.well-known/oauth-protected-resource.

This ensures proper OAuth discovery for path-based resource servers
and aligns with the MCP SDK's implementation of RFC 9728 §3.1.

Changes include:
- Update minimum MCP version from 1.12.4 to 1.17.0
- Use build_resource_metadata_url() for RFC 9728 compliance
- Configure CI to test with latest package versions (--upgrade)
- Update tests for path-aware metadata URLs
- Add icons field to Tool model (introduced in MCP 1.17)

* Fix RemoteAuthProvider integration tests for RFC 9728

* Fix parameterized test for nested base URL paths
2025-10-17 09:29:23 -04:00
..
__init__.py clean up test inits 2025-05-31 19:32:08 -04:00
conftest.py Enable more type checking rules (#1775) 2025-09-07 11:11:44 -04:00
test_advanced_behavior.py Refactor mounting logic from managers to server (#2069) 2025-10-11 18:28:21 -04:00
test_basic_functionality.py Upgrade to MCP 1.17+ with RFC 9728 compliance (#2122) 2025-10-17 09:29:23 -04:00
test_configuration.py Refactor mounting logic from managers to server (#2069) 2025-10-11 18:28:21 -04:00
test_deepobject_style.py Fix OpenAPI deepObject style parameter encoding (#1122) 2025-07-11 12:50:19 -04:00
test_description_propagation.py Refactor mounting logic from managers to server (#2069) 2025-10-11 18:28:21 -04:00
test_explode_integration.py Remove asyncio mark 2025-07-06 21:14:30 -04:00
test_openapi_compatibility.py Update test_openapi_compatibility.py 2025-07-03 21:09:27 -04:00
test_openapi_path_parameters.py Internal refactor of MCP handlers (#2005) 2025-10-05 08:45:10 -04:00
test_optional_parameters.py Introduce experimental OpenAPI parser with improved performance and maintainability (#1209) 2025-07-21 16:17:36 -04:00
test_parameter_collisions.py Fix OpenAPI parameter name collisions with location suffixing 2025-07-09 18:49:00 -04:00
test_route_map_fn.py Fix OpenAPI tool name registration when modified by mcp_component_fn (#1096) 2025-07-08 21:28:46 -04:00