# Fonciq (remote · mcp.fonciq.ca)

Données foncières du Québec pour assistants IA (MCP) · Québec land data for AI assistants

- Trust score: 71/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `mcp.fonciq.ca`: 71/100 (this document), [markdown](https://verifymcp.io/servers/ca-fonciq-fonciq/v1.md), [page](https://verifymcp.io/servers/ca-fonciq-fonciq/v1)

## Channel facts

- Endpoint: `https://mcp.fonciq.ca/v1/`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.1.3`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Endpoint Security**: 80/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Nothing on it is marked destructive, but we can't show that an anonymous caller can only read: full credit needs the server to list at least one tool and every tool to be verifiably read-only. We use a best-effort check of tool names and descriptions to tell read-only tools from tools that change things, so some genuinely read-only tools may not get full credit. Names that start with a read verb (get, list, read, search and similar) and accurate readOnlyHint annotations help. Meet that to earn full credit, or require authorisation.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 58/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 4433 tokens (~295/item across 15 items; 15 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 3/100
  - Stability observed for 1 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 98/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 95% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 15 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 16 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Fonciq MCP server?

Fonciq is a hosted endpoint at https://mcp.fonciq.ca/v1/, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http ca-fonciq-fonciq 'https://mcp.fonciq.ca/v1/'
```

### Cursor

```json
{
  "mcpServers": {
    "ca-fonciq-fonciq": {
      "url": "https://mcp.fonciq.ca/v1/"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "ca-fonciq-fonciq": {
      "type": "http",
      "url": "https://mcp.fonciq.ca/v1/"
    }
  }
}
```

### Codex

```toml
[mcp_servers.ca-fonciq-fonciq]
url = "https://mcp.fonciq.ca/v1/"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ca-fonciq-fonciq": {
      "type": "remote",
      "url": "https://mcp.fonciq.ca/v1/",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add ca-fonciq-fonciq --url 'https://mcp.fonciq.ca/v1/' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  ca-fonciq-fonciq:
    url: "https://mcp.fonciq.ca/v1/"
```

### Netclaw

```json
{
  "McpServers": {
    "ca-fonciq-fonciq": {
      "Transport": "http",
      "Url": "https://mcp.fonciq.ca/v1/"
    }
  }
}
```

### Vellum

```bash
assistant mcp add ca-fonciq-fonciq -t streamable-http -u 'https://mcp.fonciq.ca/v1/'
```

### Other

```json
{
  "mcpServers": {
    "ca-fonciq-fonciq": {
      "type": "http",
      "url": "https://mcp.fonciq.ca/v1/"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-05 (score 71, +1)

- [functional improvement] Stability: unverified → 0.03

### 2026-11-04 (score 70)

First indexed and scored.

## MCP tools (15)

### `flood_zones_lookup` (~521 tokens)

Québec flood zones at a point, address or lot (free) / Zones inondables au Québec (gratuit)

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://mcp.fonciq.ca. 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.

Input parameters:

- `address` (string): Québec civic address, e.g. "148 Rue de la Cédrière, Gatineau". / Adresse civique.
- `lang` (string): Answer language. / Langue de la réponse.
- `lat` (number): Latitude WGS84 (Québec). Use with lon.
- `lon` (number): Longitude WGS84 (Québec). Use with lat.
- `lot` (string): Québec lot number, 5 to 9 digits, spaces allowed. / Numéro de lot.

### `lot_resolve` (~203 tokens)

Resolve an address or matricule to lot numbers / Résoudre une adresse ou un matricule

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 $).

Input parameters:

- `address` (string): Québec address. / Adresse.
- `matricule` (string): Assessment matricule. / Matricule.

### `lot_get` (~189 tokens)

Stored lot profile / Fiche d’un lot

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 $).

Input parameters:

- `lot` (string, required): Lot number. / Numéro de lot.

### `registre_index_request` (~452 tokens)

Order a land-registry index / Commander un index

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.

Input parameters:

- `idempotency_key` (string, required): Unique key for this write, 8+ characters. / Clé unique pour cette écriture.
- `lot` (string, required): Lot number. / Numéro de lot.
- `rf_account_id` (string): Registre account id; omit for the organization default. / Compte du Registre ; par défaut si omis.

### `acte_get` (~440 tokens)

Get one deed PDF / Obtenir le PDF d’un acte

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.

Input parameters:

- `circonscription` (string, required): Circonscription foncière, e.g. "Montréal".
- `idempotency_key` (string, required): Unique key for this write, 8+ characters. / Clé unique pour cette écriture.
- `registration_number` (string, required): Registration number, e.g. "14 736 430". / Numéro d’inscription.
- `rf_account_id` (string): Registre account id; omit for the organization default. / Compte du Registre ; par défaut si omis.

### `plan_get` (~443 tokens)

Get a cadastral plan / Obtenir un plan cadastral

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.

Input parameters:

- `cadastre` (string): Defaults to Cadastre du Québec.
- `idempotency_key` (string, required): Unique key for this write, 8+ characters. / Clé unique pour cette écriture.
- `lot` (string, required): Lot number. / Numéro de lot.
- `rf_account_id` (string): Registre account id; omit for the organization default. / Compte du Registre ; par défaut si omis.

### `job_get` (~156 tokens)

Job status / État d’une tâche

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 $).

Input parameters:

- `id` (string, required): job_id.

### `job_results` (~164 tokens)

Parsed index lines of a job / Lignes d’index d’une tâche

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 $).

Input parameters:

- `id` (string, required): job_id.

### `document_get` (~161 tokens)

Download a document PDF / Télécharger le PDF d’un document

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 $).

Input parameters:

- `id` (string, required): Document id.

### `document_entries` (~141 tokens)

Parsed lines of one index document / Lignes d’un index

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 $).

Input parameters:

- `id` (string, required): Document id.

### `batch_submit` (~413 tokens)

Queue many lots / Soumettre un lot groupé

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.

Input parameters:

- `idempotency_key` (string, required): Unique key for this write, 8+ characters. / Clé unique pour cette écriture.
- `lots` (array, required): Lot numbers. / Numéros de lot.
- `rf_account_id` (string): Registre account id; omit for the organization default. / Compte du Registre ; par défaut si omis.

### `watch_create` (~425 tokens)

Watch a lot / Surveiller un lot

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.

Input parameters:

- `cadence` (string)
- `idempotency_key` (string, required): Unique key for this write, 8+ characters. / Clé unique pour cette écriture.
- `lot` (string, required): Lot number. / Numéro de lot.
- `rf_account_id` (string): Registre account id; omit for the organization default. / Compte du Registre ; par défaut si omis.
- `url` (string, required): Webhook URL (https). / URL du webhook.

### `billing_get` (~177 tokens)

Registre fees per account / Frais du Registre par compte

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.

Input parameters:

- `from` (string): Start date YYYY-MM-DD.
- `rf_account_id` (string): Registre account id; omit for the organization default. / Compte du Registre ; par défaut si omis.
- `to` (string): End date YYYY-MM-DD.

### `billing_usage` (~172 tokens)

Registre fee lines / Lignes de frais du Registre

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.

Input parameters:

- `cursor` (string): Pagination cursor.
- `from` (string): Start date YYYY-MM-DD.
- `limit` (integer)
- `rf_account_id` (string): Registre account id; omit for the organization default. / Compte du Registre ; par défaut si omis.
- `to` (string): End date YYYY-MM-DD.

### `platform_billing_get` (~135 tokens)

Fonciq platform wallet / Portefeuille plateforme Fonciq

GET /v1/platform/billing. Fonciq platform prepaid balance and this month’s API usage (not Registre foncier fees). Shows wallet balance for the current test or live mode, Toronto-month usage from the platform ledger, and the OAuth daily cap when applicable. / Solde prépayé Fonciq et usage API du mois (pas les frais du Registre). 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.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/ca-fonciq-fonciq/v1#diagnostics

## Score history

- 2026-11-05: 71
- 2026-11-04: 70

## Common questions

### What is the Fonciq MCP server?

Fonciq is an MCP server listed in the public MCP registry as ca.fonciq/fonciq. Données foncières du Québec pour assistants IA (MCP) · Québec land data for AI assistants. This page covers its hosted endpoint (https://mcp.fonciq.ca/v1/).

### Is the Fonciq MCP server safe to use?

Fonciq scores 71 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Fonciq MCP server expose?

Fonciq exposes 15 tools: flood_zones_lookup, lot_resolve, lot_get, registre_index_request, acte_get, and 10 more. Their descriptions and schemas cost roughly 4,192 tokens of context every time the server is loaded.

### Does the Fonciq MCP server require authentication?

No. We connected to Fonciq without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Fonciq MCP server still maintained?

Fonciq is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What did VerifyMCP test on the Fonciq MCP server?

VerifyMCP ran 13 checks on Fonciq, covering TLS certificate, Authorization, HTTPS, HSTS header and 9 more. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.

## Links

- Remote endpoint: https://mcp.fonciq.ca/v1/
- Repository: https://github.com/Fonciq/fonciq
- Website: https://fonciq.ca/mcp
- Changelog RSS feed: https://verifymcp.io/servers/ca-fonciq-fonciq/v1.xml
- Changelog JSON feed: https://verifymcp.io/servers/ca-fonciq-fonciq/v1/changelog.json
- Trust report (JSON): https://verifymcp.io/servers/ca-fonciq-fonciq/v1.json
- HTML version of this page: https://verifymcp.io/servers/ca-fonciq-fonciq/v1
