Provides tools for working with Building Information Modeling (BIM) files, converting IFC files to fragment format, loading fragments, and querying BIM data by category like walls, doors, and windows.
Requires Node.js to run the server and access file system functionality for reading IFC files and writing fragment files.
Uses pnpm for dependency management and installation of required packages.
Uses Zod for schema validation within the MCP server to ensure proper data formatting and validation.
Fragment MCP Server
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:
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 libraryweb-ifc
: IFC file processingzod
: Schema validation
Installation
- Install dependencies:
- Run the server:
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:
Prerequisites for Claude Desktop
- Node.js must be installed and accessible via
npx
- The
tsx
package should be available (install globally withnpm install -g tsx
if needed) - Both the filesystem and bim servers need to be configured for full functionality
Usage Workflow
- Convert IFC to Fragment: Use
convert-ifc-to-frag
to convert your IFC file to the efficient fragment format - Load Fragments: Use
load-frag
to load the fragment file into memory - Query Elements: Use
fetch-elements-of-category
to 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
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
A Model Context Protocol server that enables working with Building Information Modeling (BIM) files by converting IFC files to fragment format and querying BIM data by category.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol server that provides file system operations, analysis, and manipulation capabilities through a standardized tool interface.Last updated -4TypeScriptMIT License
- AsecurityFlicenseAqualityA Model Context Protocol server that integrates with Figma's API, allowing interaction with Figma files, comments, components, projects, and webhook management.Last updated -5909JavaScript
- -securityFlicense-qualityA Model Context Protocol server that connects AI tools and LLMs to Figma designs, enabling them to extract design data, analyze design systems, and generate development documentation.Last updated -691TypeScript
- -securityAlicense-qualityA server that implements the Model Context Protocol, providing a standardized way to connect AI models to different data sources and tools.Last updated -27TypeScriptMIT License