{"record":{"id":"72bb94a1a8a99235","repo":"rohitg00/ai-engineering-from-scratch","slug":"32602-72bb94","errorCode":"-32602","errorMessage":"missing request _meta","messagePattern":"missing request _meta","errorType":"exception","errorClass":"McpError","httpStatus":null,"severity":"error","filePath":"phases/13-tools-and-protocols/11-mcp-sampling/code/main.py","lineNumber":81,"sourceCode":"    return {\n        PROTOCOL_META: PROTOCOL_VERSION,\n        CAPABILITIES_META: capabilities,\n        CLIENT_INFO_META: {\"name\": \"lesson-client\", \"version\": \"1.0.0\"},\n    }\n\n\ndef _server_meta() -> dict[str, Any]:\n    return {SERVER_INFO_META: {\"name\": \"mrtr-demo\", \"version\": \"1.0.0\"}}\n\n\ndef complete(**fields: Any) -> dict[str, Any]:\n    return {\"resultType\": \"complete\", **fields, \"_meta\": _server_meta()}\n\n\ndef validate_request_meta(params: dict[str, Any]) -> dict[str, Any]:\n    meta = params.get(\"_meta\")\n    if not isinstance(meta, dict):\n        raise McpError(-32602, \"missing request _meta\")\n    requested_version = meta.get(PROTOCOL_META)\n    if not isinstance(requested_version, str):\n        raise McpError(-32602, \"missing protocol version\")\n    if requested_version != PROTOCOL_VERSION:\n        raise McpError(\n            -32022,\n            \"unsupported protocol version\",\n            {\"supported\": [PROTOCOL_VERSION], \"requested\": requested_version},\n        )\n    capabilities = meta.get(CAPABILITIES_META)\n    if not isinstance(capabilities, dict):\n        raise McpError(-32602, \"missing client capabilities\")\n    return meta\n\n\ndef server_discover(params: dict[str, Any]) -> dict[str, Any]:\n    validate_request_meta(params)\n    return complete(","sourceCodeStart":63,"sourceCodeEnd":99,"githubUrl":"https://github.com/rohitg00/ai-engineering-from-scratch/blob/39ea8a1c6d0b61f071226eff7ede4d4105fed820/phases/13-tools-and-protocols/11-mcp-sampling/code/main.py#L63-L99","documentation":"Error \"missing request _meta\" thrown in rohitg00/ai-engineering-from-scratch.","triggerScenarios":"Thrown at phases/13-tools-and-protocols/11-mcp-sampling/code/main.py:81 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"39ea8a1c6d0b61f071226eff7ede4d4105fed820","analyzedAt":"2026-08-26T03:13:46.626Z","schemaVersion":2},"datasetVersion":"2026-08-26T07:17:17.940Z"}