Skip to main content

ifc-mcp

MCP server for exploring and querying IFC (Industry Foundation Classes) building models.

Install

pip install ifc-mcp

ifc-mcp must be on your PATH for MCP clients that use command: "ifc-mcp".

which ifc-mcp
ifc-mcp --help
ifc-mcp --version

Run

Start once and load models dynamically during chat:

ifc-mcp serve

Optional preload:

ifc-mcp serve /absolute/path/to/model.ifc

HTTP transport:

ifc-mcp serve --transport http --port 8000

MCP client config

{
  "mcpServers": {
    "ifc_mcp": {
      "command": "ifc-mcp",
      "args": ["serve"]
    }
  }
}

Typical workflow in chat

  1. load_model(file_path="/absolute/path/to/model.ifc") (fast default)
  2. get_model_summary()
  3. Query with tools by element, space, material, property, or type.

Most tools also accept optional file_path for one-shot queries.

Geometry is loaded lazily by default for speed. Use eager mode only when needed:

  • MCP tool: load_model(file_path="...", with_geometry=true)
  • CLI preload: ifc-mcp serve /absolute/path/to/model.ifc --with-geometry
  • Session status: get_loaded_model() includes geometry_loaded

Relationship tools

ifc-mcp includes element relationship tools based on IfcRelContainedInSpatialStructure and IfcRelAggregates:

  • classify_elements_by_relation(file_path="/absolute/path/to/model.ifc") returns parent, child, and investigate buckets for IfcElement records.
  • get_aggregate_relationships(file_path="/absolute/path/to/model.ifc") returns aggregate parents, their children, and a flat child_to_parent map.
  • find_orphans(file_path="/absolute/path/to/model.ifc", exclude_classes=["IfcOpeningElement"]) returns elements with neither spatial containment nor aggregate parent links.

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ifc_mcp-0.2.3.tar.gz (19.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ifc_mcp-0.2.3-py3-none-any.whl (67.2 kB view details)

Uploaded Python 3

File details

Details for the file ifc_mcp-0.2.3.tar.gz.

File metadata

  • Download URL: ifc_mcp-0.2.3.tar.gz
  • Upload date:
  • Size: 19.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.5

File hashes

Hashes for ifc_mcp-0.2.3.tar.gz
Algorithm Hash digest
SHA256 b1fc731960c2600c29ac3a44ea166ad2b2b50a2b7b322d69c4e374003af7abf4
MD5 625225b0ea26ba9b8d8a40c0f31a6aec
BLAKE2b-256 bec1ca39739994b807ac73bf15458eb85ed753ccb92b9019b5147ddbfbdf9068

See more details on using hashes here.

File details

Details for the file ifc_mcp-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: ifc_mcp-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 67.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.5

File hashes

Hashes for ifc_mcp-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e32f792732eff18b185219a09e843789764f627c5ef6c6ce037fb505418ee729
MD5 7d56d9aaef74f816cb49d16f17b2c3ba
BLAKE2b-256 35132f941ca87d721aad166bb232cc61ff9f757e198c7e11a17b9c8bf5d855a9

See more details on using hashes here.

Release history Release notifications | RSS feed

0.2.4

2 files

This release

0.2.3 This release

2 files

0.2.2

2 files

0.2.1

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page