{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_kvr3wxvwygzf","handle":"normi-mcp-dvf","url":"https://wellknown.network/agents/normi-mcp-dvf","links":{"self":"https://wellknown.network/agents/normi-mcp-dvf/record.json","html":"https://wellknown.network/agents/normi-mcp-dvf","markdown":"https://wellknown.network/agents/normi-mcp-dvf/record.md","api":"https://wellknown.network/api/v1/agents/normi-mcp-dvf","status":"https://wellknown.network/api/v1/agents/normi-mcp-dvf/status","claim":"https://wellknown.network/agents/normi-mcp-dvf/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/normi-mcp-dvf/claim.json","badge":"https://wellknown.network/agents/normi-mcp-dvf/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/normi-mcp-dvf/history","tools":"https://wellknown.network/api/v1/agents/normi-mcp-dvf/tools"},"ard":{"identifier":"urn:air:mcp.normi.fr:server:normi-mcp-dvf","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"normi","summary":"French property market data — 17M+ DVF sales, 22M+ DPE energy ratings, 20M+ building records.","description":"French property market data — 17M+ DVF sales, 22M+ DPE energy ratings, 20M+ building records.","publisher":{"name":"NormiHQ","url":null},"homepage":"https://normi.fr/docs/mcp","repository":"https://github.com/NormiHQ/Normi","version":"0.2.5","license":"MIT","protocols":["mcp"],"tags":["mcp","model-context-protocol","dvf","immobilier","real-estate","france","claude","ai","anthropic","api","données-foncières"],"pricing":null,"endpoints":[{"url":"https://mcp.normi.fr/mcp","type":"mcp_streamable_http","auth":null,"probeable":true},{"url":"npm:@normi/mcp-dvf","type":"package_npm","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":{"updatedAt":"2026-09-26T19:15:29.637453Z","npmKeywords":["mcp","model-context-protocol","dvf","immobilier","real-estate","france","claude","ai","anthropic","api","données-foncières"],"publishedAt":"2026-09-26T19:15:29.637453Z","registryName":"io.github.NormiHQ/normi"},"attribution":{"kind":"mcp_registry","name":"mcp_registry","license":"npm","repoUrl":"mcp_registry","summary":"mcp_registry","version":"mcp_registry","description":"mcp_registry","homepageUrl":"mcp_registry","publisherName":"mcp_registry"}},"derived":{"capabilities":[],"categories":[],"language":"en"},"observed":{"status":"live","statusReason":"Responded 5m ago.","lastOkAt":"2026-10-10T16:31:27.895Z","lastProbedAt":"2026-10-10T16:31:27.895Z","statusComputedAt":"2026-10-10T16:33:39.233Z","reliability30d":{"probes":111,"successRate":1,"p50Ms":13,"basis":"auth_boundary","measures":{"availability":"authentication boundary reached","latency":"time to authentication response","tools":"not measured — authentication required","summary":"Every successful check was an authentication response (401/403). The endpoint exists and enforces authentication; nothing behind that boundary — tools, behaviour, service health — has been observed."},"checks":{"total":109,"ok":109,"authBoundaryOk":109,"serviceOk":0,"note":"Counted from the observation rows for the window, checks of the server only (HTTP, A2A card, MCP initialize). ok = authBoundaryOk + serviceOk. `probes` is the sum of daily rollups and includes registry checks, so it can differ from `total`."}},"latestObservations":[{"at":"2026-10-10T16:31:27.895Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":9,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://mcp.normi.fr/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-10T09:23:36.710Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":9,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://mcp.normi.fr/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-10T02:30:35.898Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":13,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://mcp.normi.fr/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-09T20:30:34.769Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":13,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://mcp.normi.fr/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-09T14:30:57.755Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":10,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://mcp.normi.fr/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-09T07:25:18.063Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":10,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://mcp.normi.fr/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-09T00:25:39.948Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":15,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://mcp.normi.fr/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-08T18:26:33.698Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":10,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://mcp.normi.fr/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-08T11:24:35.422Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":13,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://mcp.normi.fr/.well-known/oauth-protected-resource/mcp\""}},{"at":"2026-10-08T05:21:16.257Z","kind":"mcp_initialize","ok":true,"httpStatus":401,"latencyMs":10,"error":null,"detail":{"authRequired":true,"wwwAuthenticate":"Bearer resource_metadata=\"https://mcp.normi.fr/.well-known/oauth-protected-resource/mcp\""}}],"tools":null,"package":{"name":"@normi/mcp-dvf","registry":"npm","observedAt":"2026-10-07T06:20:52.178Z","publishedAt":"2026-09-26T18:59:14.704Z","latestVersion":"0.2.5","weeklyDownloads":274},"toolSurface":null,"endpointFacts":[{"id":"ep_8ktbh9zn8ry2","url":"https://mcp.normi.fr/mcp","type":"mcp_streamable_http","factsCheckedAt":"2026-10-10T09:23:36.703Z","auth":{"observedAt":"2026-10-10T09:23:36.779Z","authRequired":true,"scheme":"Bearer","resourceMetadata":{"url":"https://mcp.normi.fr/.well-known/oauth-protected-resource/mcp","resource":"https://mcp.normi.fr/mcp","authorizationServers":["https://zdjywjxnngopobvtbaip.supabase.co/auth/v1"],"scopesSupported":[]},"authorizationServer":{"url":"https://zdjywjxnngopobvtbaip.supabase.co/.well-known/oauth-authorization-server/auth/v1","issuer":"https://zdjywjxnngopobvtbaip.supabase.co/auth/v1","grantTypesSupported":["authorization_code","refresh_token"],"codeChallengeMethodsSupported":["S256","plain"],"tokenEndpointAuthMethodsSupported":["client_secret_basic","client_secret_post","none"],"dynamicClientRegistration":true,"dpopSigningAlgValuesSupported":[],"clientIdMetadataDocumentSupported":null},"conformance":{"dpop":false,"rfc8414":true,"rfc9728":true,"pkceS256":true,"clientIdMetadataDocument":false,"dynamicClientRegistration":true}},"tls":{"observedAt":"2026-10-10T09:23:36.799Z","protocol":"TLSv1.3","chainValid":true,"chainError":null,"hostMatches":true,"subject":"mcp.normi.fr","issuer":{"commonName":"YR2","organization":"Let's Encrypt"},"validFrom":"2026-10-07T16:12:18.000Z","validTo":"2027-01-05T16:12:17.000Z","daysToExpiry":86,"sanCount":1,"fingerprint256":"AB:DC:DB:F0:D5:77:4D:24:87:A9:38:35:EC:EF:11:B9:34:D9:66:9C:32:2E:66:AF:25:A2:00:2E:72:9F:12:23"}}]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"mcp_registry","key":"io.github.NormiHQ/normi","url":"https://registry.modelcontextprotocol.io/v0/servers/io.github.NormiHQ%2Fnormi","firstSeenAt":"2026-09-06T05:22:07.574Z","fetchedAt":"2026-10-09T23:22:47.645Z","normalizedAt":"2026-10-09T23:22:47.645Z"},{"source":"npm","key":"@normi/mcp-dvf","url":"https://www.npmjs.com/package/@normi/mcp-dvf","firstSeenAt":"2026-09-05T23:20:19.696Z","fetchedAt":"2026-10-07T06:20:22.931Z","normalizedAt":"2026-10-07T06:20:22.931Z"}]},"firstSeenAt":"2026-09-05T23:20:19.696Z","updatedAt":"2026-10-07T06:20:52.178Z"}