mcpField
S
staydata

staydata

ローカル
github.com/CloudCorpRecords地図・旅行03 日前に更新

staydata について

staydata は、宿泊情報を必要とするクライアント向けに、HasData Airbnb MCP サーバーへ接続するローカルブリッジです。読み取り専用の検索と物件詳細の取得を転送し、結果を JSON で返します。

主な機能

  1. 01場所または地図範囲で宿泊先を検索
  2. 02チェックイン日と人数で絞り込み
  3. 03検索結果のページネーション
  4. 04Airbnb URL から物件詳細を取得
  5. 05CLI と stdio MCP サーバーを提供

活用シーン

  1. 01日程や地域ごとの宿泊料金を比較
  2. 02物件の部屋、設備、写真、評価を確認
  3. 03クライアントから公開 Airbnb 掲載情報を参照

MCP 対応

MCP クライアントに 2 つのツールを公開し、宿泊先検索と物件詳細取得の呼び出しを HasData Airbnb MCP サーバーへ転送します。読み取り専用で、予約、メッセージ、決済のツールはありません。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"cloudcorprecords-staydata": {
"command": "npx",
"args": [
"-y",
"@reneturcios/staydata"
]
}
}
}
起動コマンドnpx -y @reneturcios/staydata

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@reneturcios/staydata0.1.0
ocighcr.io/cloudcorprecords/staydata:0.1.0

ツール

2

掲載時のツール一覧 · 2 日前に更新

パラメーター型必須説明
petsnumberいいえペットの数。
neLatnumberいいえ地図のバウンディングボックスの北東角の緯度。4 つの境界ボックス座標をすべて指定すると、場所ではなくボックス内でリスティングを検索します。
neLngnumberいいえ地図のバウンディングボックスの北東角の経度。
swLatnumberいいえ地図のバウンディングボックスの南西角の緯度。
swLngnumberいいえ地図のバウンディングボックスの南西角の経度。
adultsnumberいいえ大人の人数。
checkInstringはいリスティングのチェックイン日。
infantsnumberいいえ乳幼児の人数。
checkOutstringいいえリスティングのチェックアウト日。
childrennumberいいえ子どもの人数。
locationstringいいえリスティングを検索する場所。完全な地図バウンディングボックス(neLat、neLng、swLat、swLng)を指定しない場合は必須です。
nextPageTokenstringいいえ次のページの結果を取得するためのトークン。

詳細

staydata

staydata は、Airbnb のデータを JSON として返す、ホスト型 HasData Airbnb MCP サーバーへの小さなローカルブリッジです。 場所、または地図上の境界ボックスとチェックイン日を指定すると、その日程と人数で利用可能な宿泊施設を検索します。リスティングの URL を指定すると、その物件のページ全体を取得します。ホスト、部屋とベッド、写真、アメニティ、評価、レビュー件数が含まれます。

このブリッジはリスティングデータを保持しません。稼働中のエンドポイントから取得した内容をそのまま使って、上流サーバーのツール一覧をローカルで提供し、各ツール呼び出しを上流に転送して、結果を変更せずに返します。取得したインターフェースは読み取り専用です。公開されているリスティングページを検索して読み取ります。予約、メッセージ送信、支払いのツールはありません。

ツール

  • hasdata_airbnb_listing_getAirbnbListings — 利用可能な宿泊施設を検索します。必須項目:checkIn。location を指定するか、地図上の境界ボックス内を検索する場合は、4 つの座標(neLat、neLng、swLat、swLng)をすべて指定します。オプション項目:ページ送り用の checkOut、adults、children、infants、pets、nextPageToken。リスティング ID/URL、タイトル、1 泊あたりと合計の料金、評価、レビュー件数、座標、写真を返します。
  • hasdata_airbnb_property_getAirbnbPropertyDetails — 1 件のリスティングの物件ページ全体を取得します。必須項目: url(有効な Airbnb リスティング URL)。タイトル、 説明、場所、座標、評価とレビュー件数、ホストのプロフィール、部屋/ベッド/バスルームの数、 写真、アメニティ一覧を返します。

設定

  • HASDATA_AIRBNB_MCP_URL(任意)— 上流エンドポイントを上書きします。デフォルトは https://mcp.hasdata.com/mcp?apis=airbnb です。(この 上書き用フックは、この再構築独自のラベル付き 再現です。)
  • HASDATA_API_KEY(任意)— 設定すると、呼び出し元自身の HasData API キーとして、 すべての上流リクエストに x-api-key: <key> ヘッダーを付加します。未設定の場合、キーのヘッダーは送信されません。(ヘッダー名と環境変数名は、元のレジストリレコードで確定しています。この環境変数からキーを転送する機能は、ラベル付きの再現です。元のインターフェースはキーなしで取得されました。)
転送の仕組み

最初のツール呼び出し時に、クライアントは上流とのストリーミング可能な HTTP セッションを開きます。JSON-RPC の initialize リクエスト(protocolVersion 2025-03-26、 clientInfo name staydata)を送信し、続いて notifications/initialized 通知を送り、その後、呼び出し元の引数を変更せずに含めた tools/call リクエストを送信します。上流が initialize への応答で Mcp-Session-Id ヘッダーを返すと、その値は 以降のすべてのセッションリクエストに付加され、プロセスの終了までセッションが再利用されます。応答は 通常の JSON またはサーバー送信イベントで届く場合があり、どちらも読み取ります。

上流からの成功結果は、上流が設定した isError フラグも含めて、そのまま渡されます。 失敗(JSON-RPC エラー、2xx 以外のステータス、読み取り不能な応答、または完了できないリクエスト)は、テキストが staydata error: で始まる isError の結果として返されます(この形式での出力は、この再構築独自のラベル付き再現です)。

CLI

各ツールは、JSON 引数文字列を 1 つ受け取るサブコマンドとしても実行できます。

npx @reneturcios/staydata hasdata_airbnb_listing_getAirbnbListings '{"location":"San Francisco","checkIn":"2026-11-10","checkOut":"2026-11-14","adults":2}'
npx @reneturcios/staydata hasdata_airbnb_property_getAirbnbPropertyDetails '{"url":"https://www.airbnb.com/rooms/12345678"}'
npx @reneturcios/staydata --version

終了コード:成功時は 0、isError の結果の場合は 1、使用方法に誤りがある場合は 2 です。

MCP サーバー

npx -y @reneturcios/staydata mcp

MCP クライアントの設定:

{
  "mcpServers": {
    "staydata": {
      "command": "npx",
      "args": ["-y", "@reneturcios/staydata", "mcp"]
    }
  }
}

Docker

docker run -i ghcr.io/cloudcorprecords/staydata
docker run --rm ghcr.io/cloudcorprecords/staydata --version

コンテナーのデフォルトコマンドは mcp なので、最初の形式では stdio MCP サーバーとして動作します。それ以外の引数は通常どおり CLI に渡されます。

開発

npm install
npm run build
npm test
npm run dev

テストスイートはすべて、スタブ化された JSON-RPC 上流に対して実行されます。実際のネットワーク呼び出しはありません。

ライセンス

MIT — LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。