mirror of
https://github.com/PrefectHQ/fastmcp.git
synced 2026-10-19 19:31:26 +02:00
#5206 made a `{?tags}` query param on a list-typed function parameter fail at registration, pointing at `{?tags*}`. 4.0.5 registered that shape, so a server that shipped it stopped starting after a patch upgrade, and RFC 6570 section 3.2.8 defines it anyway: a non-exploded list is one comma-joined value, with literal commas between items and `%2C` inside an item. Templates now record their non-exploded list params and split those values on literal commas before decoding. Expansion joins list items the same way, where it previously emitted the percent-encoded Python repr. Mounts and proxies forward the incoming query string byte for byte instead of decoding and re-encoding it, since they cannot know which params hold lists and would otherwise merge `a%2Cb,c` into a single item. Claude-Session: https://claude.ai/code/session_01KfHgVhbYEhBCC5eSeqGiuG Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| test_file_resources.py | ||
| test_function_resources.py | ||
| test_resource_security.py | ||
| test_resource_template.py | ||
| test_resource_template_meta.py | ||
| test_resource_template_query_params.py | ||
| test_resources.py | ||
| test_standalone_decorator.py | ||