immo について
immo は、物件分析担当者や自律型 AI エージェント向けのフランスの API です。ADEME のエネルギー性能診断を検索し、取引価格、リスク、社会経済データを付加します。x402 による USDC のリクエスト単位決済に対応しています。
主な機能
- 017 種類の DPE 検索方式
- 02住所の自動ジオコーディング
- 03DVF による市場価格推定
- 04Géorisques のリスク概要
- 05INSEE の社会経済指標
- 06JSON、CSV、XLSX の出力
活用シーン
- 01物件のエネルギー性能評価
- 02価格と地域リスクの確認
- 03不動産デューデリジェンスの自動化
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
2掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| adresse | string | はい | 物件の完全な住所。例:'12 rue de la Paix 75002 Paris' |
| loyerM2Mois | number | いいえ | 既知の場合は月額の平方メートルあたり賃料を指定してください(推定ではなく実際の利回りを算出します) |
詳細
DPE-X402
自律型 AI エージェント向けに、x402 プロトコルを通じて USDC で収益化する、フランスのエネルギー性能診断(DPE)APIです。
🌐 本番環境の URL:https://dpe.bdatax.com 📄 自動検出:https://dpe.bdatax.com/.well-known/x402.json
この API の機能
フランスの DPE(エネルギー性能診断)に関する公開データベース ADEME をスマートに検索できます。主な機能は次のとおりです。
- 7 種類の検索モード:自由形式の住所、郵便番号、GPS、DPE 番号、BAN 識別子など
- BAN API による自動ジオコーディング(誤検出を防ぐため、厳密な選択を実施)
- DVF による情報拡充 (v0.7.0):各検索結果に、DGFiP が公開する実際の不動産取引に基づいた市場価格の推定値を追加します(中央値 €/m²、総額の推定値、比較対象の件数、近隣での最新取引日)
- Géorisques による情報拡充 (v0.7.1):各検索結果に、自治体の自然災害・技術的リスクの概要を追加します(洪水、地震、ラドン、粘土の収縮・膨張、地滑り、ICPE、危険物パイプライン、土壌汚染など)。公式の Géorisques API(BRGM + 環境移行省)から提供されます
- INSEE FILOSOFI による情報拡充 (v0.7.2):各検索結果に、自治体の社会経済指標を含めます。INSEE の 2021 年版「地域別社会・税務ファイル」制度に基づく、生活水準の中央値、貧困率、D1/D9 十分位数、十分位数間比率(不平等指標)、就業者および年金受給者の割合を提供します
- 各検索結果の関連性をスマートにスコアリング
- 重複排除と複数基準による並べ替え(スコア、面積、日付)
- 3 種類のエクスポート形式:JSON(デフォルト)、CSV、XLSX
- Base mainnet 上の x402 プロトコル(HTTP 402)によるリクエストごとの支払い — 1 回の呼び出しにつき約 0.001 USDC
人の介入なしに暗号資産で支払いを行う自律型 AI エージェント(マシンエコノミー)向けに設計されていますが、人間が curl やブラウザーから直接利用することもできます。
クイックスタート
1. API が提供する内容を確認する(無料)
curl https://dpe.bdatax.com/
2. 支払わずに API を呼び出す(402 を返します)
curl -i "https://dpe.bdatax.com/dpe?cp=75001"
レスポンス:
HTTP/1.1 402 Payment Required
{
"x402Version": 1,
"accepts": [{
"scheme": "exact",
"network": "base",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"maxAmountRequired": "1000",
"payTo": "0xc0a484b32798dEefcA38Ced6c6Aa780660c752A4"
}]
}
3. 支払いを行い、DPE データを取得する(x402 クライアントを使用)
x402-fetch と viem を使用した Node.js の完全な例については、test-client.js を参照してください。
利用可能なエンドポイント
| エンドポイント | 価格 | 説明 |
|---|---|---|
GET / | 無料 | ホームページ、エンドポイント一覧 |
GET /.well-known/x402.json | 無料 | x402 クローラー向けの検出ファイル |
GET /dpe?cp=75001 | 0,001 USDC | 郵便番号で検索 |
GET /dpe?adresse=203 rue Saint-Honoré 75001 Paris | 0,001 USDC | 自由形式の住所で検索 |
GET /dpe?voie=Saint-Honoré&cp=75001 | 0,001 USDC | 通り名で検索 |
GET /dpe?numero=203&voie=Saint-Honoré&cp=75001 | 0,001 USDC | 番地 + 通り名 + 郵便番号で検索 |
GET /dpe?numeroDPE=2175E0465600P | 0,001 USDC | DPE 識別子で検索 |
GET /dpe?lat=48.864968&lon=2.331665 | 0,001 USDC | GPS 座標で検索 |
GET /dpe?cp=75001&format=csv | 0,001 USDC | CSV エクスポート(フランス版 Excel と互換) |
GET /dpe?cp=75001&format=xlsx | 0,001 USDC | Excel ネイティブ形式でエクスポート |
各 /dpe 呼び出しは、meilleurResultat、resultats(並べ替え済み配列)、dpeLePlusRecent、検索メタデータを含む構造化 JSON を返します。
DVF によるデータ補完 (v0.7.0 で新登場)
返される各 DPE には、不動産市場のデータ(公的データベース DVF(Demandes de Valeurs Foncières、DGFiP)由来)が自動的に追加されます(追加料金はかかりません)。
{
"adresse": "14 rue Vauvilliers 75001 Paris",
"etiquetteDPE": "F",
"surfaceM2": 22.9,
"coutAnnuelTotal": 1168,
"dvf": {
"prixMedianM2": 12400,
"prixEstimeTotal": 283960,
"nbTransactionsComparables": 8,
"derniereTransaction": "2025-11-14",
"rayonMetres": 200,
"ecartSurfacePct": 30
}
}
方法:位置情報がある各 DPE について、半径 200 m 以内から、同じ種類(アパート/一戸建て)で面積が同程度(±30%)の最近の不動産取引(2024〜2025年)を検索します。次に、1 m² あたりの価格の中央値を算出し、DPE の面積に適用します。
サンプル数が少なすぎる場合(比較可能な取引が3件未満)、または該当する県がまだインデックス化されていない場合、dvf は null になります。API の利用者が一貫した方法でフィールドの有無を確認できるよう、このフィールドは常に含まれます。
対象範囲:フランス全土(本土+DROM)。DGFiP の直近の半年ごとの更新までに公開された取引が対象です。
DVF インデックスの更新:年2回(4月と10月)、新しい full.csv.gz ファイルを data.gouv.fr からダウンロードした後、ローカルで node build-dvf-index.js を実行し、data/dvf/ を push してください。
Géorisques によるデータ補完 (v0.7.1 で新登場)
返される各 DPE には、BRGM と環境移行省が管理する公式 Géorisques API を通じて、その自治体が抱える自然災害および技術的リスクの概要も追加されます(ユーザーに追加料金はかかりません)。
{
"adresse": "203 Rue Saint-Honoré 75001 Paris",
"etiquetteDPE": "F",
"codeInsee": "75101",
"georisques": {
"commune": "PARIS 1ER ARRONDISSEMENT",
"codeInsee": "75101",
"risquesNaturels": {
"inondation": "existant",
"seisme": "faible",
"retraitGonflementArgile": "important",
"radon": "faible",
"mouvementTerrain": "existant",
"remonteeNappe": "existant"
},
"risquesTechnologiques": {
"icpe": "concerne",
"canalisationsMatieresDangereuses": "concerne",
"pollutionSols": "concerne"
},
"nbRisquesPresents": 9,
"sourceUrl": "https://www.georisques.gouv.fr/mes-risques/..."
}
}
方法:DPE の identifiantBAN フィールドから自治体の INSEE コードを導出し、Géorisques の /api/v1/resultats_rapport_risque エンドポイントに問い合わせます。レスポンスは INSEE コードごとに RAM 内で24時間キャッシュされるため、同じ自治体の DPE が1000件あっても、API 呼び出しは1日あたり1回だけです。
INSEE コードを導出できない場合(DPE に identifiantBAN がない場合)、Géorisques API がエラーを返した場合、または5秒のタイムアウトを超過した場合、georisques は null になります。正常にフォールバックし、レスポンスの他のフィールド(DPE+DVF)は通常どおり返されます。
一般的なユースケース:保険会社(保険料の算出)、銀行(不動産信用リスクの分析)、不動産トークン化プラットフォーム(自動化されたデューデリジェンス)、自律型不動産 AI エージェント。
Node.js クライアントでの使用
インストール:
npm install x402-fetch viem
使用方法:
import { wrapFetchWithPayment } from "x402-fetch";
import { privateKeyToAccount } from "viem/accounts";
const account = privateKeyToAccount(process.env.PRIVATE_KEY);
const fetchWithPayment = wrapFetchWithPayment(fetch, account, BigInt(10_000));
const response = await fetchWithPayment(
"https://dpe.bdatax.com/dpe?cp=75001"
);
const data = await response.json();
console.log(data.meilleurResultat);
コメント付きの完全なサンプルは test-client.js にあります。
テストには、以下が必要です:
- Base mainnet に数セント分の USDC がある EVM ウォレット(Arbitrum または Ethereum からブリッジするか、Coinbase で直接購入)
PRIVATE_KEY=...を記載したclient.envファイルを作成(絶対にコミットしないでください!)- 次を実行:
node --env-file=client.env test-client.js
アーキテクチャ
各 /dpe リクエストに対する12段階のパイプライン:
- x402 ミドルウェア(決済)
- 検索条件の抽出
- 住所の自動解析(正規表現)
- BAN 逆ジオコーディング(GPS → 住所)
- BAN ジオコーディング(住所 → GPS、郵便番号/市区町村名を厳格に検証)
- ADEME へのリクエストを並列実行(Promise.all)
- 各 DPE のスコアリング(調整済み基準)
- 重複排除と複数基準による並べ替え
- DVF によるデータ補完 — 各結果について、比較可能な不動産取引をローカル検索(メモリ内 LRU キャッシュ)
- Géorisques によるデータ補完 — INSEE コードごとに
/resultats_rapport_risqueAPI を呼び出し(RAM 内で24時間キャッシュ) - INSEE FILOSOFI によるデータ補完 — INSEE コードごとに所得/貧困/十分位数をローカル検索(LRU キャッシュ)
- 指定された形式で出力(JSON/CSV/XLSX)
一般的な応答時間:< 800 ms(Géorisques の呼び出しは自治体ごとの初回のみ約200〜400 ms追加され、その後はキャッシュから返されます。DVF と INSEE はローカル処理のため数ミリ秒です)。
ロードマップ
- v0.7.0 ✅ DVF データの拡充(不動産取引、中央値 €/m²)
- v0.7.1 ✅ Géorisques データの拡充(洪水、地震、ラドン、汚染、ICPE、粘土など)
- v0.7.2 ✅ INSEE FILOSOFI データの拡充(所得中央値、貧困率、十分位数)
- v0.8.x:独自スコア(改修、夏季の快適性、総合的な魅力)
- v0.9.x:料金を差別化した
/dpe/enrichiエンドポイント(約0,02 USDC) - v1.0:統合、公開 SLA、パートナー向けダッシュボード
データの出典
- DPE データ:ADEME — オープンデータ
- 土地価格データ(DVF):DGFiP / Etalab — オープンデータ
- 自然災害および技術的リスク:Géorisques — BRGM および環境移行省
- 市区町村別の所得と貧困:INSEE FILOSOFI 2021 — オープンライセンス
- ジオコーディング:Base Adresse Nationale — オープンデータ
- 決済プロトコル:x402 — Coinbase が推進する HTTP 402 標準
技術スタック
- ランタイム:Node.js + Express 5
- 決済:Base 上の x402-express
- Excel エクスポート:SheetJS
- ホスティング:Render.com(フランクフルト)
- DNS:Cloudflare
ブランド
BData X — 公開データを利用した、x402 で収益化するフランスの API のポートフォリオです。
ライセンス
このプロジェクトは Business Source License 1.1(BSL)の下で配布されています。詳細は LICENSE をご覧ください。
概要:
- ✅ コードを自由に調査、フォーク、変更できます
- ✅ 個人または社内のプロジェクトで使用できます
- ✅ プルリクエストを通じて貢献できます
- ❌ dpe.bdatax.com と競合する商用 SaaSとして利用することはできません
2030年8月27日に、このライセンスは自動的に Apache 2.0(完全に自由なライセンス)に切り替わります。
それ以前に競合する商用利用を希望する場合は、リポジトリからお問い合わせください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。