mcp-floorplans
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@mcp-floorplansGenerate space layouts for 200 sqm and 20 people"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
mcp-floorplans
Workspace floorplan generation MCP server with deterministic space layout calculation.
Status: Phase 4 MVP — Deterministic space layout engine (no external APIs)
Features
Deterministic space layout calculation — No API dependencies, pure Python logic
3 layout variants per brief — Balanced, Collaboration-heavy, Focus-intensive
Detailed metrics — Workstations, meeting rooms, collaboration %, window distances
Zone adjacency analysis — Functional recommendations for zone placement
Space brief validation — Feasibility checking with recommendations
Related MCP server: ritn3d-mcp
Architecture
space_calculator.py
├─ SpaceCalculator class — Core calculation engine
├─ Zone, LayoutVariant, SpaceMetrics dataclasses
└─ generate_space_layouts_json() — Main entry point
server.py
├─ MCP server with 3 tools
├─ generate_space_layouts — Layout generation
├─ analyze_zone_adjacencies — Adjacency rules
└─ validate_space_brief — Feasibility validation
test_space_calculator.py
└─ 15+ unit tests, 100% deterministicQuick Start
# Install dependencies
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
# Run tests
pytest test_space_calculator.py -v
# Start MCP server (stdio mode for Claude)
python server.pyMCP Tools
generate_space_layouts
Generate 3 workspace layout variants from brief.
Input:
{
"surface_sqm": 200,
"headcount": 20,
"zone_types": ["open-space", "meeting", "quiet-zone"],
"collaboration_style": "medium_collab",
"project_id": "test-proj-1"
}Output: JSON with 3 layout variants, each containing:
Zones with dimensions and occupancy
Metrics (workstations, meeting rooms, collaboration %, window distances)
Stub floorplan URL (stub:///floorplans/...)
Design notes
analyze_zone_adjacencies
Get functional adjacency recommendations for zone types.
Input:
{
"zone_types": ["open-space", "meeting", "quiet-zone"]
}validate_space_brief
Check feasibility and get recommendations.
Input:
{
"surface_sqm": 200,
"headcount": 20,
"zone_types": ["open-space", "meeting"]
}Calculation Logic
Space Sizing
Standard guidelines per zone type:
Open-space: 5–8.5 sqm per workstation (hotdesking to dedicated)
Quiet-zone: 4 sqm per person
Meeting: 2.5 sqm per person
Phone-booth: 2 sqm per booth (1 person)
Break-room: 1 sqm per person
Collaboration Percentages
high_collab: 40% meeting + break + phone zones
medium_collab: 30%
low_collab: 20%
Circulation
15% of total area reserved for corridors, stairs, etc.
Metrics Provided
For each variant:
total_sqm— Total workspace areaworkstations— Number of workstationsmeeting_rooms— Number of dedicated meeting roomsphone_booths— Number of private call boothsquiet_zones— Number of focus areasbreak_rooms— Number of break/social areascollaboration_zones_pct— % of space for collaborative workaverage_sqm_per_person— Density metricwindow_distance_avg— Average distance to windows (meters)natural_light_zones_pct— % of space with potential window access
Example Usage
from space_calculator import generate_space_layouts_json
# Generate layouts for 200 sqm, 20 people
json_output = generate_space_layouts_json(
surface_sqm=200,
headcount=20,
zone_types=["open-space", "meeting", "quiet-zone", "phone-booth", "break-room"],
project_id="my-project"
)
# Parse output
import json
data = json.loads(json_output)
# Access first variant
variant = data["variants"][0]
print(f"Variant: {variant['layout_name']}")
print(f"Workstations: {variant['metrics']['workstations']}")
print(f"Collaboration: {variant['metrics']['collaboration_zones_pct']}%")Testing
All calculation logic is deterministic and fully tested:
# Run all tests
pytest test_space_calculator.py -v
# Test categories:
# - Calculator initialization and configuration
# - Usable area calculation
# - Zone distribution across types
# - Metrics calculation accuracy
# - Variant generation (3 variants per brief)
# - JSON output format validation
# - Edge cases (small/large spaces)
# - Determinism (same input → same output)Phase 3 Integration (mcp-interior)
mcp-floorplans works alongside:
mcp-interior — Interior redesign of existing spaces (Decor8 API, stub provider)
mcp-archviz — 3D visualization of layouts (stub provider)
WorkspaceAgent — Orchestrates all three services
Phase 4 Status
✅ COMPLETED:
Space calculator implementation (deterministic, no API calls)
3 layout variants per brief
Metrics calculation
Zone adjacency analysis
Space brief validation
15+ unit tests (all passing)
Full test coverage of calculation logic
⏸️ DEFERRED (Phase 5+):
Real floorplan image generation (requires image service)
3D model generation (via mcp-archviz)
CAD export (SVG/DXF format)
Furniture library integration
Cost estimation (fit-out budgeting)
Architecture Decisions
Deterministic (no APIs): Core calculation is pure Python, testable, reproducible
Stub floorplans:
stub:///floorplans/...URLs indicate placeholder imagesDataclasses: Type-safe zone/layout/metrics models
No external services: Calculation doesn't depend on CasaAI, HWFC, Roomify, etc.
MCP standard tools: Integrates with Claude agents via MCP protocol
License
Proprietary — Virtus Agents
See Also
Phase 3: mcp-interior
Phase 4: mcp-archviz
Orchestrator: WorkspaceAgent
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityCmaintenanceEnables AI-powered computational design in Rhino/Grasshopper with ML-based automatic layout optimization, component clustering, performance prediction, and real-time code execution in running Rhino instances.Last updated15MIT
- AlicenseAqualityCmaintenanceEnables AI agents to prepare floor plans for Ritn3D and interpret 3D outputs by providing tools for validation, complexity estimation, pricing, and failure analysis.Last updated9MIT
- Flicense-qualityDmaintenanceExposes Pre-DCR and Auto-DCR building scrutiny workflows as AI-consumable tools, enabling AI assistants to open DXF drawings, validate layers, compute areas, run regulatory checks, and generate compliance reports via natural language.Last updated
- Alicense-qualityBmaintenanceEnables 2D irregular polygon nesting (bin-packing) with tools to design, preview, get reports, and export DXF files for laser cutting or CNC routing.Last updatedMIT
Related MCP Connectors
Cutlist optimization for sheet, linear and roll stock, with grain, kerf, nesting and saw exports.
Construction takeoff and estimating for AI agents. Measure a drawing PDF, export a priced estimate.
Convert Revit files to XKT, IFC, or DWG and query BIM data via natural language.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Simoagadir95/mcp-floorplans'
If you have feedback or need assistance with the MCP directory API, please join our Discord server