Search DevTools

Jump to any tool or page

public-tools

French rental tools: create & e-sign a lease, rent control, IRL, deposit, receipts (France).

ykarmouta0 stars0 forksAI & Agents
View source

Install

mcp_config.json

{
  "mcpServers": {
    "com-faireplace-public-tools": {
      "url": "https://mcp.faireplace.com/mcp",
      "type": "streamable-http"
    }
  }
}

Documentation

FairePlace — Public MCP Server 🏠🇫🇷

A public, no-auth, remote MCP server that exposes FairePlace's free French residential rental tools to AI agents (ChatGPT, Claude, Perplexity, Cursor…): create & e-sign a lease (bail), check rent control, revise rent (IRL), compute a security deposit or rental yield, get an address risk report, and generate rental documents (rent receipts, inventory, notices, and more).

Zero LLM inference server-side. The server is a thin, deterministic proxy over FairePlace's public API — the calling agent pays for its own inference; FairePlace only runs Rust/Typst logic. Marginal cost ≈ 0.

Endpoint: https://mcp.faireplace.com/mcp · Registry: com.faireplace/public-tools


Quick start

Add the remote server to any MCP client:

ClientHow
Claude (Desktop / claude.ai)Settings → Connectors → Add custom connector → https://mcp.faireplace.com/mcp
CursorSettings → MCP → Add → Streamable HTTP → https://mcp.faireplace.com/mcp
ChatGPT (Custom GPT)Import the OpenAPI at https://mcp.faireplace.com/openapi.json as an Action (auth: none)
MCP Inspectornpx @modelcontextprotocol/inspector@latest → connect to the URL

No API key, no account. Ask your agent things like "Check if a 1500 €/month rent is legal at 75001 Paris for a 45 m² 2-room" or "Create a furnished lease for a flat in Paris at 850 €".

Tools (21)

Data & compliance (return JSON):

ToolPurpose
check_rent_controlRent control verdict for an address (encadrement des loyers)
get_reference_rentReference rent (€/m²) for a rent-controlled quarter
simulate_irl / simulate_irl_by_quartersAnnual rent revision (IRL), explicit or server-resolved INSEE values
calculate_deposit_restitutionSecurity-deposit cap, restitution deadline, penalties
simulate_rental_yieldGross/net yield + per-regime taxation (LMNP, micro-foncier…)
check_address_risksNatural/technological risk report (Géorisques)

Lease creation (the conversion tool):

ToolPurpose
create_lease_draftCreate a lease draft → returns a link to finalize & e-sign it (advanced eIDAS, PAdES-B-LT) on FairePlace

Document generation (return a link that renders the PDF): generate_quittance, generate_etat_des_lieux, generate_conge, generate_cautionnement, generate_avenant, generate_resiliation_amiable, generate_relance_impaye, generate_inventaire_mobilier, generate_notice_information, generate_reparations_locatives, generate_grille_vetuste, generate_charges_recuperables, generate_bordereau_restitution.

How the lease → signature flow works

agent → create_lease_draft(owner, logement, lease)
      → FairePlace stores an anonymous draft, returns draft_token
      → tool returns  https://mcp.faireplace.com/r?draft_token=…
user clicks the link
      → GET /r sets the draft_token cookie on .faireplace.com, 302 → app sign-up
      → on login, FairePlace ingests the draft and opens it on the Signature step

The server never hands back a signable document — signature stays behind FairePlace auth. Every link carries utm_source=mcp for attribution.

Architecture

Intentionally a thin adapter — not a domain application. All business logic (rent-control data, IRL indices, legal document rendering) lives in FairePlace's Rust backend; this Worker only maps MCP tool calls to the public /public/tools/* HTTP endpoints and formats results.

  • Runtime: Cloudflare Worker (McpAgent, Durable Object for session state).
  • Transport: Streamable HTTP on /mcp.
  • Guardrail: native per-IP rate limit (100 req / 60 s).
  • PDF delivery: /pdf/<slug>?p=<base64url payload> serves an HTML page that fetches the PDF browser-side (avoids a same-zone Worker→origin block; no storage — the PDF is a local blob).

Endpoints

PathPurpose
/mcpMCP server (Streamable HTTP)
/openapi.jsonCurated OpenAPI 3.1 for GPT Actions
/.well-known/ai-plugin.jsonPlugin manifest
/llms.txtPassive AI discovery
/rDraft-resume → sets cookie → sign-up
/pdf/<slug>On-demand PDF rendering (browser-side)

Development

npm install
npm run typecheck
npm run dev            # wrangler dev (local)
npm run inspect        # MCP Inspector
npm run deploy         # wrangler deploy (needs Cloudflare auth)

Config lives in wrangler.jsonc (vars: API_BASE, WEB_BASE, SELF_BASE, DRAFT_REPRISE_URL, APP_SIGNUP_URL).

Discoverability

License

MIT © 2026 FairePlace (Thinkylab SAS). Not legal advice — an aid for French rental workflows.

Sourced from the repository README.

More in AI & Agents