Surfaced while reviewing MCP transports across DataZoo repos (flAPI MCP overhaul, DataZooDE/flapi#107).
src/mcp/mcp_http_server.cpp (~line 75) sets Access-Control-Allow-Origin: * and never validates the Origin header on the POST /mcp transport. This is the DNS-rebinding / CSRF shape the MCP transport spec has warned about since 2025-03-26, and it is more serious here because the endpoint executes writes against a production SAP system (adt_write_source, adt_delete_object, bw_save_object).
Recommended fix (independent of any protocol-version work):
- Validate
Origin against an allowlist; return 403 on mismatch.
- Default the allowlist to the embedded web UI's origin.
Reference: MCP 2026-07-28 Streamable HTTP transport security section.
Surfaced while reviewing MCP transports across DataZoo repos (flAPI MCP overhaul, DataZooDE/flapi#107).
src/mcp/mcp_http_server.cpp(~line 75) setsAccess-Control-Allow-Origin: *and never validates theOriginheader on thePOST /mcptransport. This is the DNS-rebinding / CSRF shape the MCP transport spec has warned about since2025-03-26, and it is more serious here because the endpoint executes writes against a production SAP system (adt_write_source,adt_delete_object,bw_save_object).Recommended fix (independent of any protocol-version work):
Originagainst an allowlist; return 403 on mismatch.Reference: MCP 2026-07-28 Streamable HTTP transport security section.