LLM agents frequently serialize list/dict tool arguments as JSON strings instead of native types (e.g., tags='["a","b"]' instead of tags=["a","b"]), causing Pydantic validation failures. This extends _make_tools_tolerant to detect array/object parameters from the JSON Schema and auto-coerce string values via json.loads before validation. Also fixes _make_tools_tolerant compatibility with FastMCP 3.x by adding a _get_mcp_tools helper that supports both 2.x and 3.x internal APIs. |
||
|---|---|---|
| .. | ||
| __init__.py | ||
| http.py | ||
| mcp.py | ||