{"ok":true,"site":{"host":"webmcp-seating-repair.milanoiniess.chatgpt.site","url":"https://webmcp-seating-repair.milanoiniess.chatgpt.site/","type":"live","desc":"A shared seating chart that humans and browser agents can repair together through WebMCP.","tools":[{"name":"get_seating_state","kind":"answer","impl":"imperative","description":"Read the current guests, tables, assignments, locked guests, hard constraints, violations, and revision. This tool is read-only and should be called before any write tool.","title":"Read the seating board","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"add_seating_constraints","kind":"act","impl":"imperative","description":"Add one or more hard constraints to the current seating board. This changes live page state. Pass the revision returned by get_seating_state so a stale agent write cannot overwrite newer human work.","title":"Add hard seating constraints","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991,"description":"The exact revision returned by get_seating_state."},"constraints":{"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"const":"together","description":"Seat both guests at one table."},"guestIds":{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2,"uniqueItems":true,"description":"Two different guest IDs from get_seating_state."}},"required":["type","guestIds"],"additionalProperties":false},{"type":"object","properties":{"type":{"const":"apart","description":"Seat both guests at different tables."},"guestIds":{"type":"array","items":{"type":"string"},"minItems":2,"maxItems":2,"uniqueItems":true,"description":"Two different guest IDs from get_seating_state."}},"required":["type","guestIds"],"additionalProperties":false},{"type":"object","properties":{"type":{"const":"fixed_table","description":"Require one guest at one table."},"guestId":{"type":"string","description":"A guest ID from get_seating_state."},"tableId":{"type":"string","description":"A table ID from get_seating_state."}},"required":["type","guestId","tableId"],"additionalProperties":false},{"type":"object","properties":{"type":{"const":"accessible_table","description":"Require an accessible table for one guest."},"guestId":{"type":"string","description":"A guest ID from get_seating_state."}},"required":["type","guestId"],"additionalProperties":false}]},"minItems":1,"maxItems":12,"description":"One to twelve validated hard seating constraints."}},"required":["expectedRevision","constraints"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"repair_seating_plan","kind":"act","impl":"imperative","description":"Compute and apply a valid seating plan for the current live board. By default the solver preserves human-locked guests and minimizes other moves. This changes assignments but never applies a partial or invalid result.","title":"Repair the seating plan","annotations":{"readOnlyHint":false,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991,"description":"The exact revision returned by get_seating_state."},"respectLocks":{"type":"boolean","const":true,"default":true,"description":"Must be true. Unlock a guest in the page before allowing the agent to move them."},"preserveCurrentAssignments":{"type":"boolean","default":true,"description":"Minimize moves among guests who are not locked."}},"required":["expectedRevision"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"},{"name":"validate_seating_plan","kind":"answer","impl":"imperative","description":"Check the current live seating board for unseated guests, capacity problems, and hard-constraint violations. This tool is read-only and does not change page state.","title":"Validate the seating plan","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute"}],"category":"Travel & Events","favicon":"/favicons/webmcp-seating-repair.milanoiniess.chatgpt.site.png","apiSurface":"spec","toolCount":4}}