IFCX MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| ifcx_capabilitiesA | Report installed IFCX/IFClite adapter capabilities. |
| ifcx_plan_modelA | Plan an IFCX authoring flow from natural-language or structured intent without mutating a draft. |
| ifcx_create_modelB | Create empty IFCX/IFC5 model with standard imports and provenance. |
| ifcx_create_spatial_structureC | Create project/site/building/storey/space tree. |
| ifcx_add_spatial_structureD | Alias for ifcx_create_spatial_structure. |
| ifcx_create_typeC | Create reusable type node, e.g. wall type, window type, pipe segment type. |
| ifcx_create_elementC | Create typed element occurrence with class, name, current IFC5 standard properties, material, and parent placement. |
| ifcx_instantiate_typeC | Create occurrence inheriting from a type node. |
| ifcx_create_geometry_meshC | Create mesh body node from points/indices and attach it. |
| ifcx_add_mesh_geometryD | Alias for ifcx_create_geometry_mesh. |
| ifcx_create_geometry_procC | Create procedural geometry hint such as extrusion/sweep/revolve/boolean. |
| ifcx_add_procedural_geometryD | Alias for ifcx_create_geometry_proc. |
| ifcx_create_geometry_brepC | Create a BRep body tier reference such as OCCT BREP or STEP AP242 and attach it. |
| ifcx_create_geometry_curveC | Create curve geometry such as polyline, arc, circle, bspline, or composite curve and attach it. |
| ifcx_create_wall_from_axisC | Create a wall occurrence from an axis with direct IFC5 length/height properties, mesh body, material, and type inheritance. |
| ifcx_create_window_with_voidC | Create a window occurrence plus a procedural void hint attached to its host. |
| ifcx_create_pipe_network_with_portsD | Create a pipe sweep with start/end distribution ports. |
| ifcx_create_storey_gridC | Create a storey grid with X/Y curve axes. |
| ifcx_create_materialC | Add material or PBR material layer to a target node. |
| ifcx_create_classification_layerC | Attach CCI/NL-SfB/bSDD-style classification references. |
| ifcx_resolve_bsdd_classificationC | Resolve bSDD or IFC class classifications from live bSDD or the local cache. |
| ifcx_create_georeference_layerC | Generate EPSG/WKT georeference attributes like the IFCX georeference example. |
| ifcx_create_patch_layerC | Propose a delta layer over an existing draft model. |
| ifcx_validate_created_modelC | Schema validation, composition validation, missing references, geometry sanity, and optional real adapter validation. |
| ifcx_validate_draftD | Alias for ifcx_validate_created_model. |
| ifcx_validate_idsC | Validate a draft against IDS XML using IFClite IDS and the IFCX draft accessor. |
| ifcx_create_bcf_from_validationC | Convert an IDS validation report into BCF topics using IFClite BCF. |
| ifcx_write_bcf_from_idsC | Validate a draft against IDS XML and write a BCF zip with validation topics. |
| ifcx_write_bcf_from_validationC | Write a BCF zip from an existing IDS validation report. |
| ifcx_preview_created_modelC | Compose and return viewer-shaped tree/scene summary. |
| ifcx_write_alphaD | Write single JSON .ifcx. |
| ifcx_export_alphaD | Alias for ifcx_write_alpha. |
| ifcx_write_tieredD | Write index.ifcx + NDJSON tables. |
| ifcx_export_tieredD | Alias for ifcx_write_tiered. |
| ifcx_write_zippedC | Write zipped post-alpha .ifcx via TS SDK-style JSZip packaging. |
| ifcx_export_preview_gltfC | Export a simple glTF preview artifact from draft mesh geometry. |
| ifcx_export_preview_threejsC | Export a Three.js preview folder with glTF geometry from the draft. |
| ifcx_publish_layer_versionB | Upload created zipped IFCX to /ifcx-api/layers/{layerId}/versions after validation. Dry-run by default. |
| ifcx_list_draftsB | List in-memory draft sessions. |
| ifcx_explain_layer_historyB | Explain provenance, overrides, and opinions for all nodes or one target path. |
| ifcx_explain_patch_effectC | Explain how a patch draft changes a base draft. |
| ifcx_create_layer_stackC | Create an IFCX federated layer stack for USD-style composition. |
| ifcx_add_layer_to_stackD | Add a draft session to a federated layer stack. |
| ifcx_reorder_layersC | Reorder a federated layer stack by session IDs, strongest first. |
| ifcx_toggle_layerC | Enable or disable one layer in a federated layer stack. |
| ifcx_list_layer_stacksA | List IFCX federated layer stacks. |
| ifcx_compose_federatedC | Compose a federated layer stack with source tracking and conflict detection. |
| ifcx_compose_stageC | Compose one draft as an ECS-style stage with resolved inheritance. |
| ifcx_detect_conflictsC | Detect child, inherit, and attribute opinion conflicts in a session or stack. |
| ifcx_resolve_conflictC | Apply a chosen conflict resolution opinion to a draft session. |
| ifcx_query_nodesC | Query composed IFCX ECS nodes by class, attribute, property, material, classification, or text. |
| ifcx_query_relationshipsC | Return parents, children, and inheritance edges for a composed node. |
| ifcx_query_spatial_pathC | Return the composed parent chain from root to a node. |
| ifcx_begin_changesetC | Begin an IFCX mutation changeset for patch-like editing. |
| ifcx_changeset_add_opinionC | Add an attribute, child, or inherit opinion to a changeset. |
| ifcx_apply_changesetC | Apply a changeset to its target draft session. |
| ifcx_set_transformC | Set a USD-style xform transform attribute on a node. |
| ifcx_set_visibilityC | Set USD-style visibility on a node. |
| ifcx_bind_materialC | Bind a USD-style material path to a node. |
| ifcx_compose_world_transformC | Compose the transform chain and translation for a node. |
| ifcx_resolve_geometry_tierC | Resolve one generated geometry/semantics tier table from a draft. |
| ifcx_validate_tier_tablesC | Validate generated tier table counts for a draft. |
| ifcx_evaluate_lensC | Evaluate lens rules against a session or federated stage. |
| ifcx_spatial_summaryC | Build simple bounds and collision summary for stage mesh geometry. |
| ifcx_build_spatial_indexB | Build a simple AABB spatial index for mesh bodies in a session or federated stack. |
| ifcx_detect_geometry_collisionsC | Detect AABB mesh collisions and overlap volumes for a session or federated stack. |
| ifcx_raycast_sceneC | Raycast against mesh AABBs and return sorted hit candidates. |
| ifcx_validate_ifc5_complianceC | Validate the sanitized alpha export against the current IFC5 development schema/import conventions. |
| ifcx_validate_viewer_compatibilityD | Alias for ifcx_validate_ifc5_compliance; retained for existing clients. |
| ifcx_roundtrip_alphaC | Roundtrip a draft through the installed IFCX adapter parser. |
| ifcx_export_ifc_stepC | Export a draft subset to IFC4 STEP using IFClite create. |
| ifcx_import_ifc_stepB | Import IFC STEP metadata into a new IFCX draft using IFClite parser. |
| ifcx_export_ifc5_bridgeC | Export a sanitized IFC5/IFCX alpha JSON through the IFClite bridge path. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| ifcx_creation_review | Prompt template for reviewing an IFCX draft before export or publication. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| ifcx-drafts | In-memory IFCX drafts. |
TDQS
Scored across 73 tools
Many tools have clear distinct purposes, but the presence of numerous aliases (e.g., ifcx_add_mesh_geometry for ifcx_create_geometry_mesh) and similar tool names (ifcx_create_model, ifcx_plan_model, ifcx_preview_created_model) may still cause confusion for an agent.
All tools follow the ifcx_verb_noun pattern with consistent verbs like create, list, export, validate. However, aliases (add vs create, write vs export) break the pattern, and the mixing of 'write' and 'export' for similar actions reduces consistency.
With 73 tools, the server is very large. While it covers a broad domain, the number is excessive and likely to overwhelm an agent, making selection difficult. A more focused set or consolidation of related tools would improve coherence.
The tool surface is extremely comprehensive, covering creation, geometry, spatial structure, changesets, composition, validation, export, query, conflict detection, and more. There are no obvious gaps for the IFCX modeling and collaboration workflow.