Decode a generated-tools.py response: MCP envelope with JSON text.
(raw)
| 36 | |
| 37 | |
| 38 | def unwrap_tool_json(raw): |
| 39 | """Decode a generated-tools.py response: MCP envelope with JSON text.""" |
| 40 | outer = json.loads(raw) |
| 41 | assert "error" not in outer, f"tool dispatch returned an error: {outer}" |
| 42 | content = outer["content"] |
| 43 | assert content and content[0]["type"] == "text", outer |
| 44 | inner = json.loads(content[0]["text"]) |
| 45 | assert "error" not in inner, f"tool payload carries an error: {inner}" |
| 46 | return inner |
| 47 | |
| 48 | |
| 49 | def main(): |