Skip to main content
Glama
assoujojo82-coder

synergieloc — French Real-Estate Legal Calculations

cao_visite_camera

Pilot a virtual visit camera by action sequences ('avancer', 'pivoter_gauche') or keyboard shortcuts, with wall-collision detection. Start from any waypoint or overall view; get step-by-step states and a path for 4K rendering.

Instructions

WHEN the automatic visit is good but ONE view is wrong — the façade is cut off, the ridge is out of frame, you want to step into the next room — and rewriting a whole chemin by hand would be absurd. PILOT the camera with a SEQUENCE OF ACTIONS instead of coordinates: ['avancer x3', 'pivoter_gauche', 'monter', 'zoom_arriere']. Actions are named (avancer, reculer, gauche, droite, the four diagonals, monter, descendre, pivoter_gauche/droite, incliner_haut/bas, zoom_avant, zoom_arriere, vue_initiale, vue_ensemble, piece_suivante, piece_precedente) or given as the KEYBOARD SHORTCUT a human would press in the render studio ('ctrl+8' = forward, numeric keypad laid out as a compass rose). Same grammar both ways, so a view prepared here is reproduced exactly by hand. Start from depuis (any waypoint of a chemin from cao_visite_plan) or omit it for an overall view. POST THE SCENE TOO: it enables wall collision (a step that would end inside a partition is refused and explained, not silently applied) and the room landmarks. Returns {camera, etapes[] (state after EACH action, with the reason for refused steps), chemin[]} — feed chemin straight back to cao_visite_studio to render that exact viewpoint in 4K. Catalogue of actions and keys (free, no key): GET /api/v1/cao/visite/commandes. Requires API key. REST: POST /api/v1/cao/visite/camera.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
mursNoWalls: plan segments extruded vertically
planNo2D reference lines
boitesNoBoxes (furniture, volumes): center x,y + dims l,p,h (mm)
depuisNoStarting viewpoint — same shape as a `chemin` waypoint. Omit for an overall view of the building.
actionsYesOrdered sequence. Each item is an action code ('avancer'), a keyboard shortcut ('ctrl+8'), a repeat form ('avancer x3'), or {code, repetitions}. 200 items max.
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).
reglagesNoStep sizes. Defaults: 500 mm per move, 250 mm per altitude step, 15° per rotation, ×1.25 per zoom. `grand_pas: true` = the Shift key (×4).
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.
plomberieNoSanitary fixtures (sink, WC, shower…) — used only by cao_pdf. Same positioning as electricite.
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`).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.1.1

TDQS

A4.7/5.0
Behavior5/5

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

With no annotations, the description carries the full behavioral load. It clearly states that refused steps are explained rather than silently applied, that the response includes per-action states with reasons for refusals, and that the 'chemin' can be fed back to the studio for rendering. It also explains the effect of posting the scene (enables wall collision and room landmarks).

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

Conciseness3/5

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

The description is verbose (around 130 words) and packs many clauses into one flowing text. While it is front-loaded with the core idea, it includes some redundancy (e.g., repeated emphasis on 'same grammar both ways') and could be more succinct. However, given the tool's complexity, the verbosity is partly justified.

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

Completeness5/5

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

Despite lacking an output schema, the description is complete enough: it outlines the response structure (camera, etapes with reasons, chemin), explains error handling (refused steps), notes the scene post requirement, mentions the catalogue endpoint, and clarifies the overall view default. No critical operational detail is missing for a caller to use the tool effectively.

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?

The schema already has 100% coverage with descriptions, so the baseline is 3. The description adds extra semantics: for 'depuis' it specifies it matches a 'chemin' waypoint and that omitting it yields an overall view; for 'actions' it details action codes, keyboard shortcuts, repeat forms, and a 200-item cap (not in schema). These enrich the parameter understanding beyond the 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?

The description clearly states the tool's purpose: to pilot the camera of an automatic visit via a sequence of actions, specifically for fixing a single wrong view without rewriting the entire path. It distinguishes from coordinate-based approaches and references the companion cao_visite_studio for rendering.

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?

Explicit guidance is provided: use when the automatic visit is good but one view is wrong, or when you want to explore a scene interactively. It explains when to omit the 'depuis' parameter (overall view), how to use action codes and shortcuts, the requirement to post the scene for wall collision, and directs to the catalogue endpoint for all actions. It also mentions the API key requirement.

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