Skip to main content
Glama

Check that the building is closed and roofed

cao_integrite
Read-only

WHEN you need the structural-integrity check alone (is the building really closed and roofed? walls that join nothing, wall clusters scattered outside the envelope, open roof, walls or volumes in each other, stairs badly placed). Returns alerts, applicable correctifs (field → value) and, with appliquer: true, the corrected scene. Free, no key. cao_verifier already includes it.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
mursNoWalls: plan segments extruded vertically. Every coordinate in this whole scene is in MILLIMETRES, in a single plan frame whose origin you choose — X to the right, Y upward, Z up from the floor. Keep one consistent origin across murs/boites/plan: the generators never recentre anything for you.
planNo2D reference lines — drawn flat, never extruded and never counted in the quantities. Use them for axes, plot limits or setting-out marks.
boitesNoBoxes (furniture, volumes): a rectangular block placed by its CENTRE, not by a corner. Millimetres, same frame as murs[].
georefNoOptional Lambert-93 (EPSG:2154) false origin for IfcMapConversion. Local millimetres are scaled by 0.001 to CRS metres. Do not invent coordinates: omit est/nord if unknown (origin stays 0). orientation is the angle in degrees of project X from map East, counterclockwise.
cerclesNoCircles on the 2D plan, alongside plan[] lines: each has a centre and a radius, in the same unit as the plan. Use for round shapes a polyline would render badly — fillets, posts, manholes.
reseauxNoPlumbing pipe runs (EF/EC/EU/EV/EP/chauffage) — used only by cao_pdf (technical plan + linear-meter quantities per type).
toituresNoRoofs — used only by cao_pdf. WITHOUT this field: a flat roof is auto-generated over the footprint of ALL walls (legacy default). WITH it: compose freely — each entry can target a subset of walls (via `murs`), letting you build an L-shaped building's roof, or add a dormer on top of a main roof.
appliquerNoApply the proposed fixes to a copy of the scene.
plomberieNoSanitary fixtures (sink, WC, shower…) — used only by cao_pdf. Same positioning as electricite.
revaliderNoWith appliquer: re-run the check on the corrected scene.
decorationNoPaint/finish per wall — used only by cao_pdf. Colors the elevations (exterior face) and the axonometric view (face auto-detected by orientation relative to the building's centroid).
ouverturesNoDoors/windows embedded in a wall — used only by cao_pdf (elevations + axonometric view), no effect on dxf/metres.
electriciteNoElectrical symbols (outlets, switches, lights…) — used only by cao_pdf (dedicated technical plan + quantities), no effect on dxf/metres/render. Position: attached to a wall (`mur`+`position`, like ouvertures) or free (`x`,`y`).
compositionsNoNamed wall/slab layer sets declared by the project. A key that matches an inferred kind (mur_exterieur, refend, cloison, plancher, toiture) or murs[].composition drops the Hypothese flag. Each value is {libelle, couches: [{cle, epaisseur?}]}. cle: enduit, bloc_beton, isolant, ba13, ossature, enduit_platre, beton_arme, tuile, charpente, etancheite. Omit epaisseur on the load-bearing layer.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added
  2. Removed
  3. Added

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds real context beyond them: it names the return payload (alerts plus applicable `correctifs` field→value), explains that appliquer:true yields the corrected scene, and states it is free with no key required (auth/cost info). It stops short of describing alert structure or severity levels.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The selecting WHEN-clause is front-loaded and the return/behavior sentence follows, so the ordering is agent-friendly. The parenthetical defect list is long but each item is a concrete check, so it earns its space; the string is dense in one paragraph rather than wastefully padded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 14-parameter, nested-schema tool with no output schema, the description covers the essentials an agent needs: what it checks, what it returns, the appliquer/revalider behavior, and cost/auth. What it does not cover — alert shape, severity, or how correctifs map back to the scene — is a modest remaining gap rather than a blocker.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% across 14 parameters, so the schema carries the diagram-geometry burden and the baseline would be 3. The description adds meaning for `appliquer` beyond the schema's 'Apply the proposed fixes to a copy of the scene' by tying it to the returned corrected scene, and frames the whole payload in terms of correctifs. Minor value-add over an already rich schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb+resource (structural-integrity check) and enumerates exactly what it detects: walls joining nothing, clusters outside the envelope, open roof, intersecting walls/volumes, misplaced stairs. It explicitly distinguishes itself from the sibling cao_verifier ('cao_verifier already includes it'), so an agent can tell when this narrower tool is the right pick.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Opens with 'WHEN you need the structural-integrity check alone', giving the selecting condition, and names the superset alternative cao_verifier that already contains this check. Both the when-to-use and the when-to-use-something-else routing are stated, not inferred.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources