Fragment MCP Server

Fragment MCP Server

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.

Category
Visit Server

Tools

convert-ifc-to-frag

Convert an IFC file to a .frag file. Needs file-system server

load-frag

Load a .frag file. Needs file-system server

fetch-elements-of-category

Fetch elements of a specified category

README

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 convert
  • outputPath (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 attributes
    • attributes (array): List of specific attributes to include
    • relations (object): Relation configuration
      • HasAssociations: Include association relations
      • IsDefinedBy: Include definition relations

Dependencies

Installation

  1. Install dependencies:
pnpm install
  1. 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

  1. Open Claude Desktop settings
  2. Navigate to the MCP servers configuration
  3. 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 tsx package should be available (install globally with npm install -g tsx if needed)
  • Both the filesystem and bim servers need to be configured for full functionality

Usage Workflow

  1. Convert IFC to Fragment: Use convert-ifc-to-frag to convert your IFC file to the efficient fragment format
  2. Load Fragments: Use load-frag to load the fragment file into memory
  3. 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 - Walls
  • IFCDOOR - Doors
  • IFCWINDOW - Windows
  • IFCSLAB - Slabs/Floors
  • IFCBEAM - Beams
  • IFCCOLUMN - Columns
  • IFCSPACE - 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

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured