IDS
- python
24
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"vinnividivicci-ifc-ids-mcp": {
"command": "python",
"args": [
"-m",
"ids_mcp_server"
],
"env": {
"IDS_LOG_LEVEL": "INFO"
}
}
}
}You can run an AI-assisted MCP server that deterministically creates, validates, and manages IDS 1.0 files, ensuring full compliance while integrating with AI agents and IfcTester workflows. This server provides fast, session-based interactions and robust validation to keep IDS documents valid throughout the creation process.
How to use
You will run the IDS MCP server locally and connect your MCP client to it. The server exposes a collection of tools to create and manage IDS documents, add specifications, apply facets and restrictions, and perform validation. Use the server to produce IDS XML that is 100% compliant with the IDS 1.0 schema, export validated files, and inspect document structure and metadata.
How to install
Prerequisites you need installed on your machine before starting:
- Python 3.9+ is required
- pip is available with Python installations
Install and run the server with the following steps.
# Clone the project repository
git clone https://github.com/Quasar-Consulting-Group/ifc-ids-mcp.git
cd ifc-ids-mcp
# Install dependencies
pip install -r requirements.txt
# Install in development mode
pip install -e .
Configured MCP server connection (example)
You can connect a client via a local stdio configuration to run the server using Python in module mode. The following example shows how to start the IDS MCP server from a client configuration.
{
"mcpServers": {
"ids_mcp": {
"command": "python",
"args": ["-m", "ids_mcp_server"],
"env": {
"IDS_LOG_LEVEL": "INFO"
}
}
}
}
Usage pattern with the MCP client
Start the server as shown above, then use your MCP client to interact with the server through the MCP protocol. You will create IDS documents, add specifications and facets, run validations, and export IDS XML files that conform to IDS 1.0.
Development and testing notes
The server is designed with test-driven development and deterministic output. Run tests to verify behavior, ensure 95%+ coverage, and validate XSD compliance during export.
Notes on early validation
Early validation provides immediate feedback when constraints are violated, helping AI agents correct invalid states before export. You will receive actionable error messages that point to the exact constraint and how to fix it.
Available tools
create_ids
Create a new IDS document with initial metadata and structure.
load_ids
Load an existing IDS document from file or XML string into the MCP session.
export_ids
Export the IDS document to XML with 100% XSD validation.
get_ids_info
Retrieve document structure and metadata for inspection.
add_specification
Add a new specification with IFC version and cardinality constraints.
add_entity_facet
Add an IFC entity facet to a specification’s applicability (subject to IDS 1.0 constraints).
add_property_facet
Add a property facet with a specified property set for validation.
add_attribute_facet
Add an IFC attribute facet requirement.
add_classification_facet
Add a classification facet constraint.
add_material_facet
Add material facet constraints.
add_partof_facet
Add spatial relationship facets.
add_enumeration_restriction
Constrain facet values to a predefined enumeration.
add_pattern_restriction
Constrain facet values with a regular expression pattern.
add_bounds_restriction
Constrain numeric facets within a range.
add_length_restriction
Constrain string length for facets.
validate_ids
Validate the IDS document against the IDS 1.0 XSD schema.
validate_ifc_model
Validate the linked IFC model against IDS constraints.