Skip to content

Fonciq pour le Registre foncier et zones inondables (Fonciq for Québec land registry & flood zones)

ca.fonciq/fonciqfonciq.castreamable-httpv1.0.2Scanned

Zones inondables gratuites, outils Fonciq. Indépendant, non affilié au Registre foncier ni au MRNF

14 tools: 5 change things and 9 only read.

Tools: 0 delete, 0 irreversible, 5 write, 9 read.
  • Reads private data · 2
  • Reads text others write · 5
  • Can send data out · 1
  • No findings

Anlyon alternative

5 of these tools change something. Run those as governed actions.

Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.

Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.

Import an OpenAPI spec →

Tools

Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.

14 tools

Changes things 5Claude Code: ask
  • acte_getPOST /v1/actes.Reads text others writeNo findings

    Why it is in this group

    • The name "acte_get" says "get": a word for reading.
    • The description's first verb is "post": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    POST /v1/actes. Returns the PDF of one deed by registration number and circonscription foncière when Fonciq holds it (no Registre fee then); a missing deed fails closed. The full structured deed analysis is « Bientôt » and is not offered here. / Renvoie le PDF d’un acte conservé par numéro d’inscription et circonscription ; un acte absent échoue de façon fermée. L’analyse structurée complète est « Bientôt » et n’est pas offerte ici. Scope registre:write. idempotency_key is sent as the Idempotency-Key header (kept 24 h; a retry with the same key returns the stored answer). idempotency_key est transmis dans l’en-tête Idempotency-Key (conservé 24 h). Billing: identical to the HTTP route. Requires your own Fonciq API key in the Authorization header (Bearer fq_live_… or fq_test_…). Only documents are billed: each index, acte or plan returned on a live key costs 0,99 $ excluant frais du registre; fq_test_ keys and 4xx/5xx responses cost 0. Facturation : identique à la route HTTP. Exige votre propre clé d’API Fonciq dans l’en-tête Authorization. Seuls les documents sont facturés : chaque index, acte ou plan livré sur une clé réelle coûte 0,99 $ excluant frais du registre ; une clé fq_test_ et une réponse 4xx/5xx coûtent 0.

    Annotations the server declares

    • title: Deed / Acte
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • batch_submitPOST /v1/batches.Reads text others writeNo findings

    Why it is in this group

    • The name "batch_submit" says "submit": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    POST /v1/batches. Queues an index for up to 500 lots, spread across your active Registre accounts unless one is pinned. Each lot is one index. / Met en file un index pour au plus 500 lots. Scope batches:write. idempotency_key is sent as the Idempotency-Key header (kept 24 h; a retry with the same key returns the stored answer). idempotency_key est transmis dans l’en-tête Idempotency-Key (conservé 24 h). Billing: identical to the HTTP route. Requires your own Fonciq API key in the Authorization header (Bearer fq_live_… or fq_test_…). Only documents are billed: each index, acte or plan returned on a live key costs 0,99 $ excluant frais du registre; fq_test_ keys and 4xx/5xx responses cost 0. Facturation : identique à la route HTTP. Exige votre propre clé d’API Fonciq dans l’en-tête Authorization. Seuls les documents sont facturés : chaque index, acte ou plan livré sur une clé réelle coûte 0,99 $ excluant frais du registre ; une clé fq_test_ et une réponse 4xx/5xx coûtent 0. The Registre foncier bills its own 1,50 $ to your Registre account when it is consulted; Fonciq does not collect it. Le Registre foncier facture ses propres frais de 1,50 $ à votre compte du Registre lorsqu’il est consulté ; Fonciq ne les perçoit pas.

    Annotations the server declares

    • title: Batch / Lot groupé
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • plan_getPOST /v1/plans.Reads text others writeNo findings

    Why it is in this group

    • The name "plan_get" says "get": a word for reading.
    • The description's first verb is "post": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    POST /v1/plans. Cadastral plan of one lot (Cadastre du Québec). A stored plan has no Registre fee; other cadastres fail closed. / Plan cadastral d’un lot (Cadastre du Québec) ; un plan conservé n’entraîne pas de frais du Registre. Scope registre:write. idempotency_key is sent as the Idempotency-Key header (kept 24 h; a retry with the same key returns the stored answer). idempotency_key est transmis dans l’en-tête Idempotency-Key (conservé 24 h). Billing: identical to the HTTP route. Requires your own Fonciq API key in the Authorization header (Bearer fq_live_… or fq_test_…). Only documents are billed: each index, acte or plan returned on a live key costs 0,99 $ excluant frais du registre; fq_test_ keys and 4xx/5xx responses cost 0. Facturation : identique à la route HTTP. Exige votre propre clé d’API Fonciq dans l’en-tête Authorization. Seuls les documents sont facturés : chaque index, acte ou plan livré sur une clé réelle coûte 0,99 $ excluant frais du registre ; une clé fq_test_ et une réponse 4xx/5xx coûtent 0. The Registre foncier bills its own 1,50 $ to your Registre account when it is consulted; Fonciq does not collect it. Le Registre foncier facture ses propres frais de 1,50 $ à votre compte du Registre lorsqu’il est consulté ; Fonciq ne les perçoit pas.

    Annotations the server declares

    • title: Cadastral plan / Plan cadastral
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • registre_index_requestPOST /v1/registre/requests.Reads text others writeNo findings

    Why it is in this group

    • The name "registre_index_request" says "request": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    Description, as the server wrote it
    POST /v1/registre/requests. Queues an index of immovables (index des immeubles) for one lot on your organization’s own Registre foncier account; returns job_id, then poll job_get. / Met en file un index des immeubles pour un lot sur le compte du Registre de votre organisation. Scope registre:write. idempotency_key is sent as the Idempotency-Key header (kept 24 h; a retry with the same key returns the stored answer). idempotency_key est transmis dans l’en-tête Idempotency-Key (conservé 24 h). Billing: identical to the HTTP route. Requires your own Fonciq API key in the Authorization header (Bearer fq_live_… or fq_test_…). Only documents are billed: each index, acte or plan returned on a live key costs 0,99 $ excluant frais du registre; fq_test_ keys and 4xx/5xx responses cost 0. Facturation : identique à la route HTTP. Exige votre propre clé d’API Fonciq dans l’en-tête Authorization. Seuls les documents sont facturés : chaque index, acte ou plan livré sur une clé réelle coûte 0,99 $ excluant frais du registre ; une clé fq_test_ et une réponse 4xx/5xx coûtent 0. The Registre foncier bills its own 1,50 $ to your Registre account when it is consulted; Fonciq does not collect it. Le Registre foncier facture ses propres frais de 1,50 $ à votre compte du Registre lorsqu’il est consulté ; Fonciq ne les perçoit pas. An index always consults the Registre. / L’index consulte toujours le Registre.

    Annotations the server declares

    • title: Order index / Commander un index
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • watch_createPOST /v1/watches.Reads text others writeCan send data outNo findings

    Why it is in this group

    • The name "watch_create" says "create": a word for a change.

    What it can reach

    • untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
    • outboundThe input takes a URL (input.url): a request to a URL can carry data to whoever runs it.
    Description, as the server wrote it
    POST /v1/watches. Scheduled re-check of a lot’s index (weekly or daily) against a baseline snapshot, with a webhook to your url. The Registre has no push feed. / Revérification planifiée de l’index d’un lot, avec webhook. Scope watches:write. idempotency_key is sent as the Idempotency-Key header (kept 24 h; a retry with the same key returns the stored answer). idempotency_key est transmis dans l’en-tête Idempotency-Key (conservé 24 h). Billing: identical to the HTTP route. Requires your own Fonciq API key in the Authorization header (Bearer fq_live_… or fq_test_…). Creating the watch is not billed (0 $). Each index the watch pulls later is a document: 0,99 $ excluant frais du registre on a live key. Facturation : identique à la route HTTP. Exige votre propre clé d’API Fonciq dans l’en-tête Authorization. Créer la surveillance n’est pas facturé (0 $). Chaque index tiré ensuite par la surveillance est un document : 0,99 $ excluant frais du registre sur une clé réelle. The Registre foncier bills its own 1,50 $ to your Registre account when it is consulted; Fonciq does not collect it. Le Registre foncier facture ses propres frais de 1,50 $ à votre compte du Registre lorsqu’il est consulté ; Fonciq ne les perçoit pas.

    Annotations the server declares

    • title: Watch / Surveillance
    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
Only reads 9Show 9 read-only tools
  • billing_getGET /v1/billing.No findings

    Why it is in this group

    • The name "billing_get" says "get": a word for reading.
    Description, as the server wrote it
    GET /v1/billing. Estimated Registre foncier fees charged to each connected account for a period (Fonciq’s own pull log; no portal statement is read). Not Fonciq platform billing. / Frais du Registre estimés par compte et par période ; pas la facturation Fonciq. Scope billing:read. Billing reads cost 0. Requires your own Fonciq API key (Authorization: Bearer …). Les lectures de facturation coûtent 0. Exige votre propre clé d’API Fonciq.

    Annotations the server declares

    • title: Registre fees / Frais du Registre
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • billing_usageGET /v1/billing/usage.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    GET /v1/billing/usage. The documents behind GET /v1/billing, one line per pull, paginated. / Les documents derrière GET /v1/billing, une ligne par tirage. Scope billing:read. Billing reads cost 0. Requires your own Fonciq API key (Authorization: Bearer …). Les lectures de facturation coûtent 0. Exige votre propre clé d’API Fonciq.

    Annotations the server declares

    • title: Registre fee lines / Lignes de frais
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • document_entriesGET /v1/documents/{id}/entries.Reads private dataNo findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.

    What it can reach

    • private-dataThe name "document_entries" says "document": it reads documents.
    • private-dataThe description's first sentence says "get" and "document": it reads documents.
    Description, as the server wrote it
    GET /v1/documents/{id}/entries. Stored parsed lines of one index document. / Lignes conservées d’un index. Scope jobs:read. Billing: identical to the HTTP route. Requires your own Fonciq API key in the Authorization header (Bearer fq_live_… or fq_test_…). This call returns no new document and is not billed (0 $). Facturation : identique à la route HTTP. Exige votre propre clé d’API Fonciq dans l’en-tête Authorization. Cet appel ne livre pas de nouveau document et n’est pas facturé (0 $).

    Annotations the server declares

    • title: Index lines / Lignes d’index
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • document_getGET /v1/documents/{id}.Reads private dataNo findings

    Why it is in this group

    • The name "document_get" says "get": a word for reading.

    What it can reach

    • private-dataThe name "document_get" says "get" and "document": it reads documents.
    • private-dataThe description's first sentence says "get" and "document": it reads documents.
    Description, as the server wrote it
    GET /v1/documents/{id}. PDF of an index or a deed produced for your organization, returned as an embedded application/pdf resource (base64). / PDF d’un index ou d’un acte, en ressource intégrée. Scope jobs:read. Billing: identical to the HTTP route. Requires your own Fonciq API key in the Authorization header (Bearer fq_live_… or fq_test_…). This call returns no new document and is not billed (0 $). Facturation : identique à la route HTTP. Exige votre propre clé d’API Fonciq dans l’en-tête Authorization. Cet appel ne livre pas de nouveau document et n’est pas facturé (0 $).

    Annotations the server declares

    • title: Document PDF
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • flood_zones_lookupFREE, no API key.No findings

    Why it is in this group

    • The name "flood_zones_lookup" says "lookup": a word for reading.
    Description, as the server wrote it
    FREE, no API key. Checks which of 9 open Québec flood-zone sources (BDZI, flood-zone presence grid, the historical 2017-2019 ZIS, Gatineau, Québec, Sherbrooke, Montréal) intersect a point. Give exactly one of: lat+lon, address (Québec civic address, matched to the Référentiel québécois des adresses) or lot (lot number, answered on its RQA address points). Returns the zones at the point, the source zone type, the distance to the nearest zone, CC BY 4.0 attribution per source and a disclaimer. A no-hit means "No zone found at this point", never that a property is outside a flood zone; the lot boundary is not evaluated. These are old-generation and indicative maps; new-generation maps (in force by sector since March 1, 2026) are not included, so each answer links to the official Québec map to confirm. The 2017-2019 ZIS was lifted in 2022 and is shown as historical, never rated high. Limits: 30 requests/min and 1000/day per IP, shared with the HTTP endpoint. Docs: https://fonciq.ca/api-gratuite/zones-inondables. GRATUIT, sans clé. Indique quelles zones inondables de 9 sources ouvertes touchent un point, une adresse ou un lot ; distance à la zone la plus proche, attribution CC BY 4.0 et avertissement. Une absence de résultat signifie « Aucune zone trouvée à ce point », jamais qu’une propriété est hors zone inondable ; la limite du lot n’est pas évaluée. Cartographie d’ancienne génération et couches indicatives ; la nouvelle génération n’est pas incluse : chaque réponse renvoie à la carte interactive officielle du gouvernement du Québec. La ZIS 2017-2019, levée en 2022, est historique. Information indicative seulement, pas une attestation officielle.

    Annotations the server declares

    • title: Flood zones (free) / Zones inondables (gratuit)
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • job_getGET /v1/jobs/{id}.No findings

    Why it is in this group

    • The name "job_get" says "get": a word for reading.
    Description, as the server wrote it
    GET /v1/jobs/{id}. Status, documents, result (result.index or result.indexes) and the daily index capacity of each account used. / État, documents, résultat et capacité du jour. Scope jobs:read. Billing: identical to the HTTP route. Requires your own Fonciq API key in the Authorization header (Bearer fq_live_… or fq_test_…). This call returns no new document and is not billed (0 $). Facturation : identique à la route HTTP. Exige votre propre clé d’API Fonciq dans l’en-tête Authorization. Cet appel ne livre pas de nouveau document et n’est pas facturé (0 $).

    Annotations the server declares

    • title: Job / Tâche
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • job_resultsGET /v1/jobs/{id}/results.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    GET /v1/jobs/{id}/results. Parsed index lines of a finished job (JSON, one block per lot). The index PDF remains the source of record. / Lignes d’index analysées ; le PDF d’index fait foi. Scope jobs:read. Billing: identical to the HTTP route. Requires your own Fonciq API key in the Authorization header (Bearer fq_live_… or fq_test_…). This call returns no new document and is not billed (0 $). Facturation : identique à la route HTTP. Exige votre propre clé d’API Fonciq dans l’en-tête Authorization. Cet appel ne livre pas de nouveau document et n’est pas facturé (0 $).

    Annotations the server declares

    • title: Job results / Résultats
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • lot_getGET /v1/lots/{lot}.No findings

    Why it is in this group

    • The name "lot_get" says "get": a word for reading.
    Description, as the server wrote it
    GET /v1/lots/{lot}. Stored profile of a Québec lot: cadastre, assessment-roll value in cents and stored index lines (registre.entries). Does not pull a new index. / Fiche conservée d’un lot : cadastre, évaluation du rôle et lignes d’index conservées ; ne tire pas d’index. Scope lots:read. Billing: identical to the HTTP route. Requires your own Fonciq API key in the Authorization header (Bearer fq_live_… or fq_test_…). This call returns no new document and is not billed (0 $). Facturation : identique à la route HTTP. Exige votre propre clé d’API Fonciq dans l’en-tête Authorization. Cet appel ne livre pas de nouveau document et n’est pas facturé (0 $).

    Annotations the server declares

    • title: Lot profile / Fiche de lot
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • lot_resolveGET /v1/lots/resolve.No findings

    Why it is in this group

    • The name "lot_resolve" says "resolve": a word for reading.
    Description, as the server wrote it
    GET /v1/lots/resolve. Resolves a Québec address or a property-assessment matricule to lot number(s), cadastre and matricule, from the municipal assessment rolls. Give address or matricule. / Résout une adresse ou un matricule en numéros de lot à partir des rôles d’évaluation foncière. Scope lots:read. Billing: identical to the HTTP route. Requires your own Fonciq API key in the Authorization header (Bearer fq_live_… or fq_test_…). This call returns no new document and is not billed (0 $). Facturation : identique à la route HTTP. Exige votre propre clé d’API Fonciq dans l’en-tête Authorization. Cet appel ne livre pas de nouveau document et n’est pas facturé (0 $).

    Annotations the server declares

    • title: Resolve lot / Résoudre un lot
    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Exfil surface

Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.

10 paths in this server alone from private data, through text someone else wrote, to a way out. Denying 1 outbound tool breaks every one.

Reads private data2
Reads files, mail, messages, databases, secrets, calendars or repositories.
Reads text others write5
Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
Can send data out1
Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
deny to break every path
{
  "permissions": {
    "deny": [
      "mcp__fonciq__watch_create"
    ]
  }
}

Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.

Findings

Matches of fixed checks, with the text they matched.

No check matched anything in these tool definitions. That is not a safety guarantee.

History

Changes to its tool definitions and to its remote endpoint, newest first.

No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.

Install

Pinned to version 1.0.2. Values in angle brackets are yours to fill in.

claude mcp add --transport http fonciq https://api.fonciq.ca/v1/mcp
claude mcp add --transport http fonciq https://api.fonciq.ca/v1/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__fonciq__flood_zones_lookup",
      "mcp__fonciq__lot_resolve",
      "mcp__fonciq__lot_get",
      "mcp__fonciq__job_get",
      "mcp__fonciq__job_results",
      "mcp__fonciq__document_get",
      "mcp__fonciq__document_entries",
      "mcp__fonciq__billing_get",
      "mcp__fonciq__billing_usage"
    ],
    "ask": [
      "mcp__fonciq__registre_index_request",
      "mcp__fonciq__acte_get",
      "mcp__fonciq__plan_get",
      "mcp__fonciq__batch_submit",
      "mcp__fonciq__watch_create"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as fonciq. Review it before you use it.

Capability tags behind 7 rules
  • mcp__fonciq__registre_index_request untrusted-input
  • mcp__fonciq__acte_get untrusted-input
  • mcp__fonciq__plan_get untrusted-input
  • mcp__fonciq__document_get private-data
  • mcp__fonciq__document_entries private-data
  • mcp__fonciq__batch_submit untrusted-input
  • mcp__fonciq__watch_create untrusted-input, outbound

Pin

Keep the decision: fail CI when the tools change, follow every change, or show a badge.

Pin in CI

Fail a build when the tools you reviewed are not the tools the server serves today.

curl -s "https://anlyon.dev/api/v1/servers/ca.fonciq/fonciq/verify?hash=d55999ea6dfab8e6fa7e43633dfb7babae4e3e05d270f2eb04bd8073ae4b9b38" | jq -e '.changed == false'

Pinned hash d55999ea6dfa, from Oct 31, 2026, 19:18 UTC.

Watch

Get told when its tools change: a new tool, a new description, a new class.

https://anlyon.dev/servers/ca.fonciq/fonciq/changes.xml

An Atom feed. Works in any feed reader or Slack's RSS app.

Badge

anlyon.dev badge for ca.fonciq/fonciq
[![anlyon.dev](https://anlyon.dev/badge/ca.fonciq/fonciq.svg)](https://anlyon.dev/servers/ca.fonciq/fonciq)

Source: MCP Registry. Synced Oct 31, 2026, 20:17 UTC.