# synergieloc (English) > French property-management & condominium software (synergieloc.fr) exposing an > API + MCP server of EXACT French real-estate legal calculations for AI agents: > rent revision (IRL index, law 89-462 art. 17-1), service-charge reconciliation > (decree 87-713), compliant rent receipts and letters — every answer includes its > legal basis. Plus a browser CAD engine drivable by API/MCP (2D→3D plans, DXF, > costed quantities, technical plans, PDF board, exterior video). Stateless: no > user data is stored. French version: https://synergieloc.fr/llms.txt ## API for AI agents (header X-API-Key, or Authorization: Bearer for MCP) - Landing, pricing, instant purchase: https://synergieloc.fr/en/api-ia (in French: /api-ia) — free key, 30 days unlimited, no email - OpenAPI spec: https://synergieloc.fr/api/v1/openapi.json - MCP server (Streamable HTTP, JSON-RPC 2.0): https://synergieloc.fr/mcp — tools/list is open, tools/call needs a key - MCP descriptor: https://synergieloc.fr/.well-known/mcp.json — transport, auth and key-free surfaces as JSON, enough to connect without reading this page (also /.well-known/ai-plugin.json, plugin format) - Visual MCP sandbox: https://synergieloc.fr/mcp/sandbox — interactive tools/list, tools/call, /usage - Copy-paste MCP setup + system prompt: https://synergieloc.fr/en/agents (in French: /agents) - GET /api/v1/cao/demo : complete already-verified scene (maison | appartement | extension) — free, no key. Call this FIRST. MCP: `cao_demo` - Building codes per country: set `juridiction` in the scene — fr (default), eu, us (IRC, NEC), cn (GB 55038, GB 50096), uk (Approved Documents, BS 7671), de (MBO, DIN 18065); the checker applies that code and only that one. GET /api/v1/cao/normes lists every threshold with its source text (free, no key) - GET /api/v1/usage : real consumption (eval minutes / monthly units + recent log) — 0 units - POST /api/v1/signup (or MCP tool `obtenir_cle_api`): FREE key in one call, no email — 30 days unlimited then 240 min/day (4 h) - [Machine-readable pricing](https://synergieloc.fr/api/v1/tarifs): cost per call, plans, and where the free/paid boundary of the CAO sits, with its switch-over date — no key - POST /api/v1/irl/revision : IRL-capped new rent + formula + legal warnings (1 unit) - POST /api/v1/regularisation/charges : tenant share, prorata temporis, balance (2 units) - POST /api/v1/documents/quittance : compliant rent-receipt PDF, law 89-462 art. 21 (4 units) - POST /api/v1/documents/avenant-irl : IRL rent-revision letter PDF (4 units) - POST /api/v1/cao/dxf : the AI DRAWS on its own — JSON scene → AutoCAD DXF file (2 units) - POST /api/v1/cao/metres : same scene → costed quantities (ml, m², counts) for a quote (2 units) - POST /api/v1/cao/render : same scene → SVG/PNG preview, to self-check before delivering (2 units) - POST /api/v1/cao/pdf : same scene → full technical board (top view, elevations, shaded axonometric, MEP plan, dimensions) as one PDF (2 units) - POST /api/v1/cao/programme : brief → floor plan: {chambres (bedrooms), cuisine, surface_m2…} → a complete single-storey house to French dimensions (walls, doors, windows, rooms, roof) with zero verifier alerts, in two layout types (2 units, MCP: cao_programme) - POST /api/v1/cao/devis : same scene → quantities by trade (French DPGF skeleton): every item measured on the scene, priced only with the unit prices you pass in body.prix (2 units, MCP: cao_devis) - POST /api/v1/cao/re2020 : same scene → RE 2020 pre-study: H_T, mean U, compactness, ventilation, glazing per orientation (nord_deg), levers; French RE 2020 thresholds recalled, never a made-up Bbio (2 units, MCP: cao_re2020) - POST /api/v1/cao/soleil : same scene → SUN and SHADOWS on 21 June, 21 March and 21 December: sunrise, sunset, maximum altitude, the building's shadow at solar noon (area and outline) and, per window, its hours of direct sun with the first and last hour; the building's own walls and any declared `masques` block the light (2 units, MCP: cao_soleil) - POST /api/v1/cao/energie : what the house will use — heating need by degree-days (solar gains corrected by the shading factors MEASURED on the scene), domestic hot water, consumption per generator, an order-of-magnitude embodied-carbon figure from YOUR emission factors, and a summer-comfort check against what one night of ventilation can remove; neither a DPE nor the regulatory RE 2020 calculation, and the climate data comes from you (2 units, MCP: cao_energie) - POST /api/v1/cao/urbanisme : the local planning rules applied to the scene — footprint and %, heights, the setback of EVERY plot boundary with the height facing it, the French H/2 rule, roof pitches, parking spaces, open ground; the rules are the ones YOU pass (from the zone's regulation): no planning value is ever guessed (2 units, MCP: cao_urbanisme) - POST /api/v1/cao/plan/partager : the plan sent to the client — a link (/plan/{jeton}) they open with no account and no software to pin comments straight onto the plan; the comments come back through the API and export as BCF topics. Reading and commenting are free, creating the link is a production call (2 units) - POST /api/v1/cao/permis : same scene → French building-permit file for a detached house (Cerfa 13406, draft): floor area (R111-22), footprint (R420-1), heights, site plan, section, written notice, elevations; what the scene cannot produce is listed as to-supply, never invented (2 units, MCP: cao_permis) - POST /api/v1/cao/visite/plan : DIRECT the 4K visit — pick the LENS (focal length in mm, full-frame equivalent) and the CAMERA PATH; returns a shooting plan {objectif, cadence, plans[], chemin[]} plus alerts (2 units). GET /api/v1/cao/visite/objectifs lists the lenses (free, no key). Video RENDERING has a single engine: the browser GPU — CAO editor "Visite 4K" button (3840x2160, exterior + room-by-room interior, multi-storey). Paste the plan into "Plan de camera pilote", or call CAD_startCinematicTour({plan}). There is no server-side video rendering any more. - GET /api/v1/agent-playbook : versioned agent playbook (free) — domains include offre (upsell) + gerance (MCP: bonnes_pratiques) - POST /api/v1/documents/avis-echeance | /relance | /crg : rent notice, dunning 1–5, management statement (agent service) - POST /api/v1/documents/mouvement-locataire | /edl | /bon-intervention | /facturx : move-in/out, inventory, work order, Factur-X e-invoice - POST /api/v1/gerance/declaration-paiement : client confirms payment → suggested ledger entry ## Driving the CAD (CAO) from an English agent Coordinate system: x = right, y = depth, z = height, ALL in millimetres. A scene is one JSON object whose fields are lists. IMPORTANT: field names are in FRENCH. Multi-floor: every `murs` item accepts `z` (base altitude) so you can stack as many storeys as you want, then put a `toitures` on top. `escaliers` (Blondel-sized stairs) and `garde_corps` (guardrails, NF P01-012) are rendered in the DXF (layers ESCALIER/GARDE_CORPS), the preview and the PDF. Glossary: - `murs` = walls: [{x1,y1,x2,y2, hauteur(=height, default 2500), epaisseur(=thickness, default 200)}]. Close the loop for a room. - `ouvertures` = openings (doors/windows): [{mur(=wall index), position(=mm from x1,y1), largeur(=width), hauteur(=height), z, type:'porte'(door)|'fenetre'(window)}]. Affects /cao/pdf only. - `toitures` = roofs: [{type, murs, hauteur_faitage(=ridge height), ...}]. Types: plat(flat), deux_pans(gable), quatre_pans(hip), conique(conical), dome, chien_assis(dormer), personnalise(custom). Affects /cao/pdf only. - `decoration` = per-wall finish/paint: [{mur, face:'interieur'(inside)|'exterieur'(outside), type:peinture(paint)/enduit(render)/papier_peint(wallpaper)/carrelage_mural(wall tiles)/lambris(panelling)/beton_cire(polished concrete), couleur(=hex color)}]. - `electricite` = electrical symbols: [{type, mur, position}] or [{type, x, y}]. Types: prise(socket), prise_rj45, prise_spe, interrupteur(switch), va_et_vient(2-way), luminaire(light), tableau_electrique(panel), detecteur_fumee(smoke detector), vmc(mechanical ventilation). - `plomberie` = plumbing fixtures: [{type, mur, position}] or [{type, x, y}]. Types: evier(sink), lavabo(basin), wc(toilet), douche(shower), baignoire(bathtub), chauffe_eau(water heater), radiateur(radiator), compteur_eau(water meter), pac_exterieure(heat pump outdoor unit), module_hydraulique(heat pump indoor hydronic module). - `reseaux` = pipe networks: [{type, diametre(=diameter), trace:[{x,y}, ...]}]. Types: ef(cold water), ec(hot water), eu(waste), ev(soil), ep(rainwater), chauffage(heating). - `boites` = boxes/volumes (masses, furniture, slabs, terraces): [{x,y,l(=length),p(=depth),h(=height), z, rotation}]. - `plan` = 2D lines, `cercles` = circles. Where each field renders: electricite/plomberie/reseaux appear in the DXF (layers ELEC/PLOMB/PLOMB_RESEAUX), the render preview, the metres counts AND the pdf board. ouvertures/toitures only affect /cao/pdf. Recommended workflow: GET /cao/schema → compose scene → POST /cao/verifier (fix critical alerts) → POST /cao/metres and/or /cao/render → deliver /cao/dxf and/or /cao/pdf. For the video tour: POST /cao/visite/plan to set lens + camera path, then render it with the editor's "Visite 4K" button. ## Minimal example (a simple room) POST /api/v1/cao/dxf with body: {"murs":[{"x1":0,"y1":0,"x2":4000,"y2":0},{"x1":4000,"y1":0,"x2":4000,"y2":3000},{"x1":4000,"y1":3000,"x2":0,"y2":3000},{"x1":0,"y1":3000,"x2":0,"y2":0}],"ouvertures":[{"mur":0,"position":1500,"largeur":900,"hauteur":2100,"type":"porte"}]} ## Guides (French, screen-by-screen) and full docs - All guides: https://synergieloc.fr/guides · Full CAD guide: https://synergieloc.fr/guides/cao-3d-artisan - Full machine docs (French): https://synergieloc.fr/llms-full.txt ## Contact - Test key: POST /api/v1/signup {"name":"YourAI"} — instant, no email. - contact@synergieloc.fr — paid tiers (Agent/Platform) and partnerships.