OpenBIM
FreeNot checkedConverts IFC building files to efficient fragment format and enables querying of BIM elements by category with configurable attributes and relations for archite
About
Converts IFC building files to efficient fragment format and enables querying of BIM elements by category with configurable attributes and relations for architectural and construction workflows.
README
A Model Context Protocol (MCP) server for working with Building Information Modeling (BIM) files. This server provides tools to convert IFC files to fragment format, load fragments, and query BIM data by category.
Features
- IFC to Fragment Conversion: Convert Industry Foundation Classes (IFC) files to the open and efficient fragment format
- Fragment Loading: Load and work with pre-converted fragment files
- Category-based Querying: Fetch BIM elements by category (e.g., walls, doors, windows) with configurable attributes and relations
Tools
convert-ifc-to-frag
Converts an IFC file to a .frag file format for efficient processing.
Parameters:
inputPath(string): Full path of the IFC file to convertoutputPath(string): Full path where the output .frags file will be saved
Example:
Input: /path/to/building.ifc
Output: /path/to/building.frag
load-frag
Loads a .frag file into memory for querying.
Parameters:
filePath(string): Full path of the .frag file to load
fetch-elements-of-category
Fetches elements of a specified IFC category from loaded fragments.
Parameters:
category(string): Category name (e.g., "IFCWALL", "IFCDOOR", "IFCWINDOW")config(object): Configuration for fetching elements with the following structure:attributesDefault(boolean): Include default attributesattributes(array): List of specific attributes to includerelations(object): Relation configurationHasAssociations: Include association relationsIsDefinedBy: Include definition relations
Dependencies
- @modelcontextprotocol/sdk: MCP server framework
- @thatopen/fragments: Fragment processing library
- web-ifc: IFC file processing
- zod: Schema validation
Installation
- Install dependencies:
pnpm install
- Run the server:
node main.ts
Claude Desktop Integration
To use this MCP server with Claude Desktop, add the following configuration to your Claude Desktop settings file:
Configuration
- Open Claude Desktop settings
- Navigate to the MCP servers configuration
- Add the following JSON configuration:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/path/to/your/models/directory"
]
},
"bim": {
"command": "npx",
"args": [
"-y",
"tsx",
"/path/to/your/openbim-mcp/main.ts"
]
}
}
}
Prerequisites for Claude Desktop
- Node.js must be installed and accessible via
npx - The
tsxpackage should be available (install globally withnpm install -g tsxif needed) - Both the filesystem and bim servers need to be configured for full functionality
Usage Workflow
- Convert IFC to Fragment: Use
convert-ifc-to-fragto convert your IFC file to the efficient fragment format - Load Fragments: Use
load-fragto load the fragment file into memory - Query Elements: Use
fetch-elements-of-categoryto retrieve specific building elements by their IFC category
Supported IFC Categories
Common categories you can query include:
IFCWALL- WallsIFCDOOR- DoorsIFCWINDOW- WindowsIFCSLAB- Slabs/FloorsIFCBEAM- BeamsIFCCOLUMN- ColumnsIFCSPACE- Spaces/Rooms
Requirements
- Node.js
- File system access for reading IFC files and writing fragment files
- Compatible with Model Context Protocol clients
Author
Helen Kwok
Installing OpenBIM
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/helenkwok/openbim-mcpFAQ
Is OpenBIM MCP free?
Yes, OpenBIM MCP is free — one-click install via Unyly at no cost.
Does OpenBIM need an API key?
No, OpenBIM runs without API keys or environment variables.
Is OpenBIM hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install OpenBIM in Claude Desktop, Claude Code or Cursor?
Open OpenBIM on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare OpenBIM with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
