Skip to main content
Glama
bimq

bimq

by aec-platform

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

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

CapabilityDetails
tools
{
  "listChanged": false
}

Tools

Functions exposed to the LLM to take actions

NameDescription
bim_element_detailA

The drill-down half of the loop: list queries return compact rows, and this expands named GlobalIds into every property set, quantity and material.

Ids that are not returned are reported in not_found, which covers both "no such element" and "hidden by policy" — deliberately without distinguishing them, so the response does not leak the shape of what is filtered out.

bim_elements_by_propertyA

Find elements whose property matches a condition, e.g. fire-rated doors on level 3: type=IfcDoor, storey=Level 3, property=FireRating, op=exists.

pset is optional and usually best left out: the same field lands in Pset_DoorCommon on one exporter and a bespoke set on another, so by default every property set on the element is searched. The matched set and value are returned alongside each hit, so the answer says where it came from.

bim_elements_by_typeA

List elements of an IFC type, optionally narrowed by storey, name or PredefinedType. Subtypes are included by default, so IfcBuiltElement returns walls, slabs, doors and the rest. Returns one compact row per element with its GlobalId citation.

bim_elements_missing_materialA

Elements that no IfcRelAssociatesMaterial reaches — through a plain material, a material list, a layer set, a profile set or a constituent set, all of which are resolved before the check. Restrict with type to ask the question that actually matters, e.g. only IfcWall and IfcSlab.

bim_elements_missing_propertyA

The inverse of elements_by_property, and the one most model-audit questions reduce to: which elements of this type have no value for this field? An empty string counts as missing by default, because exporters write one for "not filled in" as often as they omit the property entirely.

bim_model_summaryA

Schema, authoring application, units, storeys, and the element counts by type — of the visible model, after policy. Cheap, bounded, and the right first call: it tells an agent which types and property sets exist before it starts guessing names at them.

bim_property_valuesA

What values does this field actually take? Run this before elements_by_property rather than guessing: it is how you learn that the model spells fire ratings "EI60", "60 min" and "60" in three different property sets, which no amount of schema documentation will tell you.

Returns each distinct value with a count and up to three example GlobalIds.

bim_quantity_rollupA

Total a named quantity (NetSideArea, GrossVolume, Length, ...) over a selection, grouped by type, storey or PredefinedType. Lengths, areas and volumes are already converted to m, m2 and m3.

Every group reports without_quantity next to count. A total computed over 40 of 200 walls is not a total, and the caller is told so rather than left to assume the model was complete.

bim_spaces_by_areaA

Spaces whose floor area falls inside a range, e.g. "rooms below the 8 m2 minimum". Areas are reported in square metres after unit conversion, so the threshold means the same thing on a model authored in millimetres and one authored in feet.

Quantity names are tried in order: the explicit quantity if given, then NetFloorArea, GrossFloorArea, Area. Spaces carrying none of them are reported in notes rather than silently dropped — "no answer" and "no data" are different findings.

bim_spatial_treeA

The containment hierarchy, which is the map an agent needs before it can ask anything storey-shaped: it turns "level 3" into a GlobalId. Element counts are counts of visible elements, so a policy that scopes the model to two storeys shows zero elsewhere rather than hinting at what it is hiding.

bim_citeA

Return the original file text behind a GlobalId: the STEP line that declares it, verbatim. Use it to verify a claim before repeating it, and when a reviewer asks where a number came from.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.2/5.0

Scored across 11 tools

Disambiguation5/5

Each tool maps to a distinct IFC query or audit operation: model discovery, typed/property selection, missing-data filters, detail expansion, aggregation, spatial lookup, and raw citation. The element-query family shares a resource but the filters and inverses are clearly separated, so misselection risk is low.

Naming Consistency5/5

All 11 names use a uniform snake_case `bim_` prefix and predictable resource/action phrasing such as `elements_by_*`, `missing_*`, and `*_rollup`. The singular `bim_element_detail` versus plural `bim_elements_*` reads naturally rather than inconsistently.

Tool Count5/5

11 tools fit the scope of an IFC/BIM inspection server: a small discovery set, a coherent element-query family, and specialized aggregation, spatial, and citation tools. There is no obvious filler or missing basic operation that would require extra tools.

Completeness4/5

The surface covers discovery, filtering, missing-data audits, quantity aggregation, spatial containment, and source citation, which is strong for a read-only BIM query server. Minor gaps remain around reverse material queries and richer relationship/containment queries, but most audit workflows are covered or workable through detail expansion.

Maintenance

ActivityInactive
ResponsivenessOutdated data