floors-mcp-server
v1.0.2
Published
MCP server for Floors.live — professional event floorplan designer. Lets AI assistants create events, design floorplans, manage guests, and run seating assignments.
Maintainers
Readme
Floors.live MCP Server
MCP (Model Context Protocol) server for Floors.live — the professional event floorplan designer. Lets AI assistants create events, design floorplans, manage guest lists, and run intelligent seating assignments.
Prerequisites
You need a Floors.live API key. Generate one at floors.live > Settings > API Keys, or via the API:
curl -X POST https://api.floors.live/v1/auth/keys \
-H "Authorization: Bearer YOUR_FIREBASE_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "My MCP Key", "scopes": ["events:read","events:write","floorplans:read","floorplans:write","guests:read","guests:write","seating:read","seating:write"]}'Setup
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"floors-live": {
"command": "npx",
"args": ["floors-mcp-server"],
"env": {
"FLOORS_API_KEY": "flr_sk_YOUR_KEY_HERE"
}
}
}
}Claude Code
claude mcp add floors-live -- npx floors-mcp-server
# Then set the env variable in your shell:
export FLOORS_API_KEY=flr_sk_YOUR_KEY_HERECursor
Add to .cursor/mcp.json:
{
"mcpServers": {
"floors-live": {
"command": "npx",
"args": ["floors-mcp-server"],
"env": {
"FLOORS_API_KEY": "flr_sk_YOUR_KEY_HERE"
}
}
}
}ChatGPT
In ChatGPT, go to Settings > MCP Servers > Add Server and enter:
- URL:
https://api.floors.live/mcp - Auth: Bearer token — your API key (
flr_sk_YOUR_KEY_HERE)
No setup or self-hosting required — the MCP endpoint is hosted by Floors.live.
HTTP Transport (for web integrations)
FLOORS_API_KEY=flr_sk_YOUR_KEY npx floors-mcp-server --http
# MCP endpoint: http://localhost:3001/mcpAvailable Tools (32)
Events
| Tool | Description |
|------|-------------|
| list_events | List all events |
| create_event | Create a new event |
| get_event | Get event details |
| update_event | Update event fields |
| delete_event | Delete event and all sub-resources |
Floorplans
| Tool | Description |
|------|-------------|
| list_floorplans | List floorplans for an event |
| create_floorplan | Create a new empty floorplan |
| get_floorplan | Get floorplan with all objects |
| update_floorplan | Update floorplan settings |
| delete_floorplan | Delete a floorplan |
| duplicate_floorplan | Copy a floorplan with all objects |
| get_floorplan_stats | Get seat/table statistics |
Objects (Canvas Items)
| Tool | Description |
|------|-------------|
| list_objects | List all objects on canvas |
| add_objects | Add tables, stages, walls, etc. |
| update_object | Move, resize, relabel an object |
| delete_object | Remove an object |
| get_object_templates | Browse 35+ object types with defaults |
Guests
| Tool | Description |
|------|-------------|
| list_guests | List all guests |
| add_guests | Add one or more guests |
| get_guest | Get guest details |
| update_guest | Update guest info |
| delete_guest | Remove a guest |
| import_guests | Bulk import up to 100 guests |
Groups
| Tool | Description |
|------|-------------|
| list_groups | List guest groups |
| create_group | Create a group with priority |
| update_group | Update group settings |
| delete_group | Delete a group (guests kept) |
Relationships
| Tool | Description |
|------|-------------|
| list_relationships | List seating constraints |
| create_relationship | Set seat_together/keep_apart/etc. |
| delete_relationship | Remove a constraint |
Seating
| Tool | Description |
|------|-------------|
| get_seating | Get current seat assignments |
| replace_seating | Replace all assignments |
| assign_guest_to_seat | Assign one guest to a seat |
| unassign_guest | Remove guest from seat |
| auto_assign_seating | Run intelligent auto-assign algorithm |
Export & Sharing
| Tool | Description |
|------|-------------|
| export_guests | Export guest list (JSON/CSV) |
| share_floorplan | Generate a share link |
Composite
| Tool | Description |
|------|-------------|
| describe_floorplan | Human-readable layout description |
| get_event_summary | Full event summary with stats |
Example Workflow
Ask your AI assistant:
"Create a wedding event for Sarah & Lior at The Grand Hall on June 15th. Set up a floorplan with 8 round tables of 10 seats each, a stage, a dance floor, and a bar. Then add 80 guests and run the auto-assign seating."
The assistant will use the MCP tools to:
create_event— Create the eventcreate_floorplan— Create a floorplanadd_objects— Place tables, stage, dance floor, and baradd_guests— Add all 80 guestscreate_group— Organize guests into groupsauto_assign_seating— Run intelligent seating
Environment Variables
| Variable | Required | Description |
|----------|----------|-------------|
| FLOORS_API_KEY | Yes | Your API key (format: flr_sk_...) |
| FLOORS_API_URL | No | Override API base URL (default: https://api.floors.live/v1) |
| PORT | No | HTTP transport port (default: 3001) |
Rate Limits
- Base tier: 30 requests/min, 1,000/day
- Pro tier: 120 requests/min, 10,000/day
- Write operations cost 2x. Auto-assign costs 5x.
