Tool tree
gradeNot graded
get_event_overviewAnswer
Snapshot of the whole event: name, tables with occupancy, unseated guests, active constraints, and current violations. Call this first to orient yourself.
View tool JSON
{
"name": "get_event_overview",
"kind": "answer",
"impl": "imperative",
"description": "Snapshot of the whole event: name, tables with occupancy, unseated guests, active constraints, and current violations. Call this first to orient yourself.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/seatcraft/"
}list_guestsAnswer
List all guests with their group, tags, table assignment and host-lock status. Optionally filter by text.
View tool JSON
{
"name": "list_guests",
"kind": "answer",
"impl": "imperative",
"description": "List all guests with their group, tags, table assignment and host-lock status. Optionally filter by text.",
"inputSchema": {
"type": "object",
"properties": {
"filter": {
"type": "string",
"description": "Optional substring to match against name/group/tags"
}
}
},
"page": "/seatcraft/"
}add_guestsAction
Add one or more guests to the event. Each needs a name; group/tags/notes are optional.
View tool JSON
{
"name": "add_guests",
"kind": "act",
"impl": "imperative",
"description": "Add one or more guests to the event. Each needs a name; group/tags/notes are optional.",
"inputSchema": {
"type": "object",
"required": [
"guests"
],
"properties": {
"guests": {
"type": "array",
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
},
"group": {
"type": "string",
"description": "e.g. 'bride family', 'work friends'"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "e.g. ['vegetarian','kid']"
},
"notes": {
"type": "string"
}
}
}
}
}
},
"page": "/seatcraft/"
}update_guestAction
Update a guest's name, group, tags, or notes.
View tool JSON
{
"name": "update_guest",
"kind": "act",
"impl": "imperative",
"description": "Update a guest's name, group, tags, or notes.",
"inputSchema": {
"type": "object",
"required": [
"guest"
],
"properties": {
"guest": {
"type": "string",
"description": "Guest id (g_xxx) or exact/partial unique name"
},
"name": {
"type": "string"
},
"group": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"notes": {
"type": "string"
}
}
},
"page": "/seatcraft/"
}remove_guestAction
Remove a guest from the event entirely (unseats them and drops their constraints).
View tool JSON
{
"name": "remove_guest",
"kind": "act",
"impl": "imperative",
"description": "Remove a guest from the event entirely (unseats them and drops their constraints).",
"inputSchema": {
"type": "object",
"required": [
"guest"
],
"properties": {
"guest": {
"type": "string",
"description": "Guest id (g_xxx) or exact/partial unique name"
}
}
},
"page": "/seatcraft/"
}add_tableAction
Add a table with a name and seat capacity.
View tool JSON
{
"name": "add_table",
"kind": "act",
"impl": "imperative",
"description": "Add a table with a name and seat capacity.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"capacity": {
"type": "number",
"description": "Default 8"
}
}
},
"page": "/seatcraft/"
}update_tableAction
Rename a table or change its capacity.
View tool JSON
{
"name": "update_table",
"kind": "act",
"impl": "imperative",
"description": "Rename a table or change its capacity.",
"inputSchema": {
"type": "object",
"required": [
"table"
],
"properties": {
"table": {
"type": "string",
"description": "Table id (t_xxx) or table name"
},
"name": {
"type": "string"
},
"capacity": {
"type": "number"
}
}
},
"page": "/seatcraft/"
}remove_tableAction
Remove a table; its guests become unseated.
View tool JSON
{
"name": "remove_table",
"kind": "act",
"impl": "imperative",
"description": "Remove a table; its guests become unseated.",
"inputSchema": {
"type": "object",
"required": [
"table"
],
"properties": {
"table": {
"type": "string",
"description": "Table id (t_xxx) or table name"
}
}
},
"page": "/seatcraft/"
}seat_guestAction
Seat a guest at a table (or unseat them by passing no table). Refuses to move guests the host has locked — ask the host instead.
View tool JSON
{
"name": "seat_guest",
"kind": "act",
"impl": "imperative",
"description": "Seat a guest at a table (or unseat them by passing no table). Refuses to move guests the host has locked — ask the host instead.",
"inputSchema": {
"type": "object",
"required": [
"guest"
],
"properties": {
"guest": {
"type": "string",
"description": "Guest id (g_xxx) or exact/partial unique name"
},
"table": {
"type": "string",
"description": "Table id (t_xxx) or table name. Omit to unseat."
}
}
},
"page": "/seatcraft/"
}swap_guestsAction
Swap the table assignments of two guests. Refuses if either guest is host-locked.
View tool JSON
{
"name": "swap_guests",
"kind": "act",
"impl": "imperative",
"description": "Swap the table assignments of two guests. Refuses if either guest is host-locked.",
"inputSchema": {
"type": "object",
"required": [
"guestA",
"guestB"
],
"properties": {
"guestA": {
"type": "string",
"description": "Guest id (g_xxx) or exact/partial unique name"
},
"guestB": {
"type": "string",
"description": "Guest id (g_xxx) or exact/partial unique name"
}
}
},
"page": "/seatcraft/"
}add_constraintAction
Record a seating rule: 'together' (a and b must share a table), 'apart' (a and b must not), or 'at_table' (a belongs at a specific table).
View tool JSON
{
"name": "add_constraint",
"kind": "act",
"impl": "imperative",
"description": "Record a seating rule: 'together' (a and b must share a table), 'apart' (a and b must not), or 'at_table' (a belongs at a specific table).",
"inputSchema": {
"type": "object",
"required": [
"type",
"a"
],
"properties": {
"type": {
"type": "string",
"enum": [
"together",
"apart",
"at_table"
]
},
"a": {
"type": "string",
"description": "Guest id (g_xxx) or exact/partial unique name"
},
"b": {
"type": "string",
"description": "Guest id (g_xxx) or exact/partial unique name (for together/apart)"
},
"table": {
"type": "string",
"description": "Table id (t_xxx) or table name (for at_table)"
},
"note": {
"type": "string",
"description": "Why this rule exists, e.g. 'divorced 2019'"
}
}
},
"page": "/seatcraft/"
}remove_constraintAction
Remove a seating rule by its id (see get_event_overview).
View tool JSON
{
"name": "remove_constraint",
"kind": "act",
"impl": "imperative",
"description": "Remove a seating rule by its id (see get_event_overview).",
"inputSchema": {
"type": "object",
"required": [
"constraintId"
],
"properties": {
"constraintId": {
"type": "string"
}
}
},
"page": "/seatcraft/"
}get_violationsAnswer
List every current constraint violation and over-capacity table in plain language.
View tool JSON
{
"name": "get_violations",
"kind": "answer",
"impl": "imperative",
"description": "List every current constraint violation and over-capacity table in plain language.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/seatcraft/"
}auto_seatAction
Run the constraint solver: seats everyone it can while honoring together/apart/at_table rules and never moving host-locked guests. Returns what moved and what still violates.
View tool JSON
{
"name": "auto_seat",
"kind": "act",
"impl": "imperative",
"description": "Run the constraint solver: seats everyone it can while honoring together/apart/at_table rules and never moving host-locked guests. Returns what moved and what still violates.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/seatcraft/"
}set_event_nameAction
Set the event's display name.
View tool JSON
{
"name": "set_event_name",
"kind": "act",
"impl": "imperative",
"description": "Set the event's display name.",
"inputSchema": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string"
}
}
},
"page": "/seatcraft/"
}