Install guide

Connect Normi to your AI client: paste a URL, sign in, approve. Or use an API key.

Guides by client

The exact configuration, a first prompt with its real response, and troubleshooting specific to each client:

1

Choose the method

ClientMethod
claude.ai (web, mobile, Cowork), Claude DesktopOne click from the Claude directory, then OAuth sign-in
ChatGPTOAuth sign-in
Claude CodeOAuth sign-in (/mcp), or an API key
Cursor, VS Code (Copilot), Windsurf, Gemini CLIOAuth sign-in, or an API key
n8n, LangChain / LangGraph, REST API, scripts, CIA normi_… API key

With OAuth you don't need to create a key in advance: if your account doesn't have one, a free key (500 credits) is created on your first approval. Either way, credits are charged to your account's active key. Learn more

2

Connect your client

claude.ai, Claude Desktop, mobile, Cowork Recommended

Normi is in the Claude connector directory: open the listing, click to add it, then sign in to Normi and approve Claude. No URL to paste.

Directory not available in your organisation? Add a custom connector with this URL:

https://mcp.normi.fr/mcp
See the step-by-step Claude guide, with screenshots ->

ChatGPT

  1. In ChatGPT: Plugins → Add → Create an MCP app.
  2. Any name (if “Normi” is already taken, use for example “Normi-mcp”), the URL below, OAuth authentication, then Create.
  3. Sign in to Normi and approve ChatGPT.
https://mcp.normi.fr/mcp
See the step-by-step ChatGPT guide, with screenshots ->
What is the median price per m² for apartments in Lyon 6?

Claude Code

Add the server, then run /mcp inside Claude Code to sign in:

claude mcp add --transport http normi https://mcp.normi.fr/mcp
# then, inside Claude Code:
/mcp

Without a browser (CI, remote machine), with an API key:

claude mcp add --transport http normi https://mcp.normi.fr/mcp --header "Authorization: Bearer YOUR_TOKEN"
See the full Claude Code guide (scopes, .mcp.json, STDIO) ->

API key (REST, scripts, n8n, STDIO)

  1. Sign in on normi.fr with Google.
  2. In the dashboard, go to Tokens → Create a token.
  3. Copy the token shown — it won't be visible again.
One active token per account
Creating a new token revokes the old one. Apps connected with OAuth follow the new token automatically.

Claude Desktop with a key, through the STDIO package @normi/mcp-dvf:

{
  "mcpServers": {
    "normi": {
      "command": "npx",
      "args": ["-y", "@normi/mcp-dvf"],
      "env": { "NORMI_API_KEY": "normi_YOUR_TOKEN" }
    }
  }
}

Clients with neither OAuth nor custom headers: a secret connector URL is available in Dashboard → Tokens → AI connectors (Advanced section).

HTTP Streamable (universal)

For any MCP client that supports HTTP Streamable (Cline, custom agents…):

URLhttps://mcp.normi.fr/mcp
TransportHTTP Streamable (POST)
AuthOAuth 2.1 (discovered via 401 + WWW-Authenticate), or Authorization: Bearer YOUR_TOKEN

Ask This Guy Partner platform

Ask This Guy is a conversational AI platform that integrates Normi natively in its MCP catalogue. Your users can query DVF data directly from their conversations.

  1. Sign in to your Ask This Guy console.
  2. Go to Tools management → MCP Catalog.
  3. Select Normi and enter your API key (normi_…).
  4. Normi is immediately available in your conversations.
See the Ask This Guy documentation (in French) →
3

Check that it works

In Claude or ChatGPT, ask a question about French property prices:

“What is the median price per m² for apartments in Lyon 6?”
“Show me how prices in Bordeaux have moved over the last 3 years.”
“Find properties comparable to a 65 m² apartment in Paris 11.”

Claude calls the Normi tools automatically and answers with real DVF data.

Troubleshooting

Error 401 — Unauthorized↓
API key: it is missing, invalid or revoked; regenerate it from the dashboard. OAuth: access was revoked or has expired; reconnect the app from your client.
ChatGPT: “Reconnect” fails (“no browser configuration URL”)↓
ChatGPT caches the connector's old configuration. Delete the connector in ChatGPT, then create it again with https://mcp.normi.fr/mcp.
“no active API key” (403) on every call↓
Your account no longer has an active key (revoked with no replacement). Create one in the dashboard: the connected app resumes on the next call, without reconnecting.
Error 429 — Rate limited↓
You are over your plan's requests-per-minute limit. Wait a few seconds.
Insufficient credits↓
The error appears in the response text (not as HTTP 402). Buy credits from the dashboard.
Claude can't find the Normi tool↓
Check that the command ran in the right terminal. In Claude Desktop, restart the app after editing the config file.

Next steps