onehome-mcp について
onehome-mcpは、エージェントが共有したOneHomeの物件を扱う買い手向けのMCPサーバーです。物件情報や写真の取得、比較、住宅ローンと予算の計算に対応します。
主な機能
- 01共有グループと保存済み検索の表示
- 02物件検索と住所の解決
- 03物件情報と写真ギャラリーの取得
- 042~8件の物件比較
- 05住宅ローンと予算の計算
活用シーン
- 01エージェントが選んだ検索結果の確認
- 02住所やMLS番号からの物件検索
- 03候補物件の並べた比較
- 04返済額や購入可能価格の試算
MCP 対応
MCPクライアントにOneHomeの検索、物件取得、比較、計算ツールを提供します。Bearerトークン、マジックリンク、ブラウザーセッションから取得したトークンで認証できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y onehome-mcpONEHOME_TOKENシークレットBearer token for services.onehome.com. Paste the raw JWT (Authorization header value, minus the 'Bearer ' prefix) from your signed-in portal.onehome.com session.ONEHOME_MAGIC_LINKMagic-link URL with ?token=... from your real-estate agent. The MCP extracts the token query param and uses it directly as the bearer.ONEHOME_WS_PORTOverride the fetchproxy WebSocket port (default 37149). Only used when ONEHOME_TOKEN / ONEHOME_MAGIC_LINK are unset and the MCP boots in capture-from-tab mode.ONEHOME_COMMUNITIES_FILEPath to a JSON array of community names used for feature extraction; overrides the built-in Lake Lure / mountain-NC default vocabulary.FETCHPROXY_WS_HOSTBind interface for the fetchproxy concentrator, a literal IP only (default 127.0.0.1). Keep on loopback; it exists for hosted deployments that run each MCP in its own network namespace.FETCHPROXY_IDENTITY_DIRAbsolute path where the fetchproxy long-term identity keypair is stored (default ~/.fetchproxy/identity/).ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
21掲載時のツール一覧 · 2 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| view | enum | いいえ | レスポンス形式:"compact"(デフォルト)は、レスポンス内の別の場所にすでに含まれているフィールドを省略します。"full" は、このサーバーが認識しているすべてのフィールドを返します。compact はレスポンスから画像/アバターの URL を除去します。"full" は OneHome のペイロードを変更せずに返します。フィールドの選択的な返却は行いません。このサーバーには、どの OneHome フィールドが重要かを示す検証済みの記録がなく、独自に選ぶと呼び出し元が必要とするフィールドを削除するおそれがあるためです。compact | full |
詳細
onehome-mcp
OneHome(CoreLogic)向けの MCP サーバーです。Claude 内から、不動産エージェントがあなたのために選んだ物件を検索し、物件の詳細や写真を取得し、住宅を横並びで比較し、住宅ローンや支払い可能額の計算を実行できます。
Zillow、redfin-mcp、compass-mcp、homes-mcpの姉妹プロジェクトです。同じツールの使い勝手を保ちながら、上流の認証方式が異なります。
このプロジェクトは AI(Claude)によって開発され、保守されています。ご自身の判断でご利用ください。
OneHome の特徴
OneHome は一般公開されている物件掲載サイトではありません。購入希望者は通常、エージェントからメールで届くマジックリンク(https://portal.onehome.com/...?token=eyJ...)を通じてアクセスします。この token クエリパラメーターは、ポータルの SPA が各 GraphQL リクエストに渡す、ユーザーごとのベアラートークンです。
そのため、(他の不動産関連 MCP のように)サインイン済みのブラウザータブを経由してすべての取得処理を行う代わりに、onehome-mcp は Node から services.onehome.com/graphql に直接アクセスし、Authorization: Bearer <jwt> を付加します。このベアラートークンの取得方法は次の 3 つに対応しています。
| モード | 有効化方法 | 備考 |
|---|---|---|
env_token | ONEHOME_TOKEN=<jwt> | 開発者ツールの Network パネルから、ベアラートークンをそのまま貼り付けます。最も直接的な方法です。 |
magic_link | ONEHOME_MAGIC_LINK=https://portal.onehome.com/...?token=... | エージェントから届いた URL 全体を貼り付けます。token パラメーターを抽出します。 |
fetchproxy_capture | (環境変数なし)+ ContextMint Bridge ブラウザー拡張機能をインストール(Chrome:リリースの Chrome zip を解凍して読み込みます。Safari 版はまだありません。ContextMint アプリに組み込まれる予定のため、現時点では Chrome を使用してください)+サインイン済みの portal.onehome.com タブ | タブから GraphQL リクエストが送信されるのを待ち、Authorization ヘッダーを取得して再利用します。 |
ContextMint Bridge は、fetchproxy ブラウザー拡張機能の新しい名前で、同じメンテナーが提供しています。fetchproxy の README(fetchproxy#extension)にもリンクがあります。ソースコードは公開されているため、nullnet-app/contextmint-bridgeから自分でビルドするか、リリース zip を同じ場所に公開されている .sha256 ファイルと照合してください(shasum -a 256 -c contextmint-bridge-chrome-<version>.zip.sha256)。
ツール
| ツール | 機能 |
|---|---|
onehome_get_user | 最小限の認証プローブです。OneHome プロフィール(名前、メールアドレス)と、エージェントが共有したグループを返します。 |
onehome_get_groups | エージェントが共有した OneHome の「グループ」(それぞれがマーケット/厳選リスティングの区分)を一覧表示します。 |
onehome_get_saved_search | エージェントが厳選した保存済み検索を ID で取得します。名前、フィルター条件、ポリゴン、および共有を構成する OSK リスティング ID が含まれます。 |
onehome_get_saved_search_with_listings | 「保存した住宅を見せて」という操作を 1 回のラウンドトリップで実行します。保存済み検索と、その検索結果を展開したリスティングを返します。 |
onehome_search_properties | グループ内のリスティングを検索します。必要に応じて保存済み検索に絞り込めます。 |
onehome_search_suggestions | すべてのフィードを対象に、自由入力の候補検索(住所、MLS 番号)を行います。 |
onehome_get_by_address | 自由入力の住所を 1 件解決し、リスティングのポータル URL と ID を返します。 |
onehome_resolve_addresses | 構造化された住所を最大 100 件まとめて解決し、ポータル URL とリスティング ID を返します。並行処理に対応し、行ごとにエラーを捕捉します。 |
onehome_get_property | リスティング ID またはポータル URL から、物件の完全なレコードを取得します。 |
onehome_bulk_get | 1 回の呼び出しで最大 N 件のリスティングを取得します。ID ごとに構造化された行を返し、行ごとにエラーを捕捉します。 |
onehome_get_property_photos | メディアギャラリー全体を取得します。サムネイル/中/大の各バリエーションと部屋の説明が含まれます。 |
onehome_compare_properties | 2~8 件のリスティングを並べて比較します。行ごとにエラーを捕捉し、呼び出しは並行して実行されます。 |
onehome_get_schools | 座標(緯度/経度)付近の Local-Logic の小学校と高校を取得します。 |
onehome_get_walk_score | Local-Logic の徒歩/公共交通機関/自転車/車での移動しやすさのスコアを取得します。 |
onehome_graphql | 上級ユーザー向けのエスケープハッチです。変数とともに読み取り専用の生の GraphQL ドキュメントを送信します(クエリのみ。ミューテーションとサブスクリプションは拒否されます)。 |
onehome_calculate_mortgage | ローカルの PITI 計算ツールです。他の不動産 MCP と同じ計算方法を使用します。 |
onehome_calculate_affordability | ローカルの 28/36 DTI 計算ツールです。購入可能な住宅価格の上限を計算します。 |
onehome_set_auth | 実行時に別の認証済みセッションを追加します(マジックリンク/JWT/メールトークン)。複数のエージェントをまたいで共有を受け取っている購入者向けです。 |
onehome_set_active_session | 登録済みの特定セッションをアクティブなセッションとして強制設定します(MLS サフィックスによるルーティングを上書きします)。 |
onehome_get_session_context | 登録済みのすべてのセッションを一覧表示します。認証モード、トークンの有効期限、および各セッションの初期設定時のグループ/保存済み検索/エージェントのスコープが含まれます。 |
onehome_healthcheck | 認証と GraphQL のエンドツーエンドのスモークテストを実行し、トークンの有効期限に関する診断情報を返します。 |
インストール
最も簡単な方法は、公開されている Claude プラグイン(.mcpb インストール)を使うことです。設定にはOneHome マジックリンクまたはベアラートークンを任意で指定できます(どちらも機密情報として保存されます)。両方とも空欄にすると、代わりにブラウザーブリッジによるキャプチャを使用します。ローカルで開発する場合:
git clone https://github.com/chrischall/onehome-mcp
cd onehome-mcp
npm install
npm run build
次に、以下のいずれかを指定して、MCP ホストから node /abs/path/to/onehome-mcp/dist/bundle.js を実行します。
// claude_desktop_config.json
{
"mcpServers": {
"onehome-mcp": {
"command": "node",
"args": ["/abs/path/to/onehome-mcp/dist/bundle.js"],
"env": {
"ONEHOME_MAGIC_LINK": "https://portal.onehome.com/en-US/properties/map?token=eyJ..."
}
}
}
}
開発
npm test # vitest, mocked transport, no network
npm run test:watch
npm run test:coverage
npx tsc --noEmit
npm run build # tsc --noEmit + esbuild → dist/bundle.js
テストでは FakeTransport(tests/helpers.ts 内)を使用して operationName ごとのハンドラーを登録するため、テストスイートで実際のネットワーク通信は発生しません。tests/index.test.ts のスモークテストでは、src/index.ts が使用するものと同じツール登録をメモリ内の MCP クライアント/サーバーの組み合わせに読み込みます。そのため、「ツールファイルは書いたが、接続するのを忘れた」というミスを確実に検出できます。
ライセンス
MIT.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。