{"type":"video","version":"1.0","html":"<iframe src=\"https://www.loom.com/embed/540f530d27d541968ee61f78ada758bf\" frameborder=\"0\" width=\"1280\" height=\"960\" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>","height":960,"width":1280,"provider_name":"Loom","provider_url":"https://www.loom.com","thumbnail_height":960,"thumbnail_width":1280,"thumbnail_url":"https://cdn.loom.com/sessions/thumbnails/540f530d27d541968ee61f78ada758bf-161813105fe6327f.gif","duration":704.918,"title":"Enforcing Multi Tenant Travel Recommendation Rules","description":"This Loom explains an agentic travel recommendations API designed to enforce multi-tenant isolation and partner rules in deterministic backend code rather than in the LLM. Using FastMCP, it exposes two tools that accept only a member ID, with the partner identity taken from the MCP server launch environment so a process is hard-scoped to one partner for its lifetime. The service fetches the member, applies tenant guard authorization, reads partner config, generates candidates, then applies ordered rules where category exclusions run before recommendation caps, with removed offers recorded for auditability. It also details a corrected issue where the initial member profile tool skipped tenant guarding and how a guarded profile method plus a cross-partner 403 test prevents data leaks."}