ifc-mcp
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., "@ifc-mcpload the IFC file 'office.ifc' from my desktop"
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.
IFC MCP Server
An MCP (Model Context Protocol) server that enables AI agents to understand and query IFC (Industry Foundation Classes) building model files. This server exposes a rich set of tools for loading IFC files, traversing spatial hierarchies, inspecting elements and properties, querying materials and quantities, and retrieving geometry bounding boxes — allowing AI assistants like Claude to reason about building information models without requiring the user to manually extract data.
Installation
From PyPI (recommended)
pip install ifc-mcp
# or with uv:
uv tool install ifc-mcpClaude Desktop config (no path needed):
{
"mcpServers": {
"ifc": {
"command": "uvx",
"args": ["ifc-mcp"]
}
}
}To update
uv tool upgrade ifc-mcpOr pin to a specific version:
"args": ["ifc-mcp==0.2.0"]Skip permission prompts (Claude Code)
Add the tools to your ~/.claude/settings.json so Claude Code never asks for confirmation:
{
"permissions": {
"allow": [
"mcp__ifc__load_ifc_file",
"mcp__ifc__list_loaded_models",
"mcp__ifc__unload_ifc_file",
"mcp__ifc__get_spatial_structure",
"mcp__ifc__get_element_containment",
"mcp__ifc__get_elements_by_type",
"mcp__ifc__get_element_by_id",
"mcp__ifc__search_elements",
"mcp__ifc__get_property_sets",
"mcp__ifc__get_quantities",
"mcp__ifc__get_material",
"mcp__ifc__get_model_statistics",
"mcp__ifc__get_bounding_box",
"mcp__ifc__get_element_placement",
"mcp__ifc__get_element_local_bbox",
"mcp__ifc__get_element_body_mapping",
"mcp__ifc__get_property_sets_detail",
"mcp__ifc__get_element_by_label",
"mcp__ifc__get_representation",
"mcp__ifc__get_elements_batch"
]
}
}Related MCP server: IFCX MCP
Development Setup
Prerequisites: Python 3.11+, uv
git clone <repo>
cd IfcMcp
uv sync
uv run pytest # verify all tests passClaude Desktop config for local dev:
{
"mcpServers": {
"ifc": {
"command": "uv",
"args": ["run", "python", "server.py"],
"cwd": "/absolute/path/to/IfcMcp"
}
}
}On Windows, use double backslashes: "cwd": "C:\\Users\\...\\IfcMcp"
Tools Reference
Every tool (except list_loaded_models) requires a model_id — the value returned by load_ifc_file.
Tool | Parameters | Description |
|
| Load an IFC file; returns |
| — | List all models in memory |
|
| Free a loaded model |
|
| Full spatial hierarchy (Project→Site→Building→Storey→Space) |
|
| Full containment chain up to Site |
|
| Paginated list by IFC type |
|
| Full element details (includes |
|
| Look up element by integer STEP label ( |
|
| Batch query; |
|
| Filter elements by type/name/pset/property |
|
| All Psets for an element |
|
| Psets split by instance-level vs type-level |
|
| All quantity sets for an element |
|
| Material info (name, layers, category) |
|
| Element counts by type, storey names, schema |
|
| Min/max XYZ bounding box in world coordinates |
|
|
|
|
| Bounding box in element's local coordinate frame |
|
| Body mapping matrix, world transform, mirroring detection |
|
| Representation structure without tessellating geometry |
MCP Resource
Each loaded model exposes a pre-computed summary resource:
ifc://model/{model_id}/summaryThis resource is computed at load time and contains the project name, IFC schema version, element counts by type, and storey names. It gives AI agents a fast overview of a model without issuing individual tool calls.
Error Responses
All tools return structured error objects. Common codes:
{"error": "element_not_found", "details": "..."}
{"error": "model_not_loaded", "details": "..."}
{"error": "geometry_unavailable", "details": "..."}
{"error": "file_not_found", "details": "..."}
{"error": "load_failed", "details": "..."}
{"error": "query_failed", "details": "..."}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.
Latest Blog Posts
- 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/WolfzTech/Ifc-Mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server