プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

HasData Booking.com

作者:HasDataバージョン 1.0.8i★ –iパソコンでもクラウドでも
レジストリ名com.hasdata/booking

インストール

概要

作者による説明(英語の原文)

Booking.com stays by destination and dates, and full property details, as structured JSON.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンでもクラウドでも
  • トランスポート: stdio, Streamable HTTP
  • カテゴリ: その他
  • 入力が必要なもの:HASDATA_API_KEY, x-api-key

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。

必要なもの

  • クラウドで動くインストール不要。インターネット経由でつながります
  • npmNode.jsのインストール(npxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

このアドレスはリクエストの header にキーが必要ですが、コネクタを追加するメニューでは設定できません。代わりにClaude Code、Cursor、VS Codeを使ってください。

または、パソコンで動かす

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "booking": {
      "command": "npx",
      "args": [
        "-y",
        "@hasdata/booking-mcp"
      ],
      "env": {
        "HASDATA_API_KEY": "your-value"
      }
    }
  }
}

ターミナルでこれを実行します

claude mcp add --transport http booking 'https://mcp.hasdata.com/mcp?apis=booking' --header 'x-api-key: your-value'

または、パソコンで動かす

claude mcp add booking --env HASDATA_API_KEY=your-value -- npx -y @hasdata/booking-mcp

動かす前に、空欄の値を入力してください。

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "booking": {
      "url": "https://mcp.hasdata.com/mcp?apis=booking",
      "headers": {
        "x-api-key": "your-value"
      }
    }
  }
}

または、パソコンで動かす

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "booking": {
      "command": "npx",
      "args": [
        "-y",
        "@hasdata/booking-mcp"
      ],
      "env": {
        "HASDATA_API_KEY": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "booking": {
      "type": "http",
      "url": "https://mcp.hasdata.com/mcp?apis=booking",
      "headers": {
        "x-api-key": "your-value"
      }
    }
  }
}

または、パソコンで動かす

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "booking": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@hasdata/booking-mcp"
      ],
      "env": {
        "HASDATA_API_KEY": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

このアドレスはリクエストの header にキーが必要ですが、コネクタを追加するメニューでは設定できません。代わりにClaude Code、Cursor、VS Codeを使ってください。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

自分で入力する値

  • HASDATA_API_KEY 秘密 必須 env
    HasData API key, created at app.hasdata.com. 1,000 free credits every month, no card.
  • x-api-key 秘密 必須 HTTP header
    HasData API key, created at app.hasdata.com. 1,000 free credits every month, no card.

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

このサーバーのツール一覧はまだ読み取っていません。エンドポイントは順番にチェックしています。

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名はドメイン hasdata.com で確認済みです(レジストリがドメインの所有を確認しています)

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    エンドポイントが応答する

    まだチェックしていません。エンドポイントは順番にチェックしています

  • … 未チェック

    OAuthでサインイン

    まだチェックしていません。エンドポイントは順番にチェックしています

  • … 未チェック

    ツールの説明に隠れた指示がない

    まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります

その他のほかのサーバーとの比較i

  • このカテゴリのほかの32403件のうち0%よりスターが多い
  • このカテゴリのほかの32403件のうち49%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの32403件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

HasData Booking.comは安全ですか?

当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:HASDATA_API_KEY, x-api-key

パソコンで動きますか、それともクラウドですか?

どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(1.0.8)がレジストリに届いたのは43 日前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。

代わりに使えるものは?

同じカテゴリには:Spec Driven Development, Remote Desktop Commander, LickityClick

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Remote Desktop Commander

作者:desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

クラウドで動く★ 211昨日更新
インストール

LickityClick

作者:lickity.click

Create, edit and track LickityClick short links, campaigns and click stats from your AI assistant.

パソコンでもクラウドでも今日更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

Booking.com MCP Server

A hosted Booking.com MCP server that gives Claude, Cursor, Windsurf and any other MCP client two read-only Booking.com tools. Search stays by destination and dates with rich filters, and read a single property in full, all as structured JSON, with nothing to host.

It reads public property pages on Booking.com that a signed-out visitor can see.

1,000 free credits every month, no card required, which is 100 Booking.

https://mcp.hasdata.com/mcp?apis=booking
  • Prompts and resources

Contents

  • What you need
  • Quick start
  • Example prompts
  • Tools
  • Errors and failure paths
  • Pricing, free tier and limits
  • Tool selection
  • How it compares
  • FAQ
  • HasData links
  • Development
  • Contributing
  • License

What you need

An MCP client and a HasData API key from the dashboard, free to create with no card, and the free tier covers 100 calls a month at the 10-credit rate. This is a remote server, so the simplest path is a URL and an x-api-key header, with no container to run. A client that only speaks stdio reaches it through a thin launcher, published as @hasdata/booking-mcp on npm and hasdata-booking-mcp on PyPI, shown below.

Quick start

The server URL is the same for every client. We run it hands-on in Claude Code and Claude Desktop. The other blocks follow each client's own documented format for a remote server.

FieldValue
URLhttps://mcp.hasdata.com/mcp?apis=booking
TransportHTTP, streamable
Auth headerx-api-key: HASDATA_API_KEY

Clients with OAuth support can add the same URL as a connector and sign in without putting a key in a config file.

Claude Code

claude mcp add --transport http booking "https://mcp.hasdata.com/mcp?apis=booking" \

--header "x-api-key: HASDATA_API_KEY"

Claude Desktop

Settings, then Connectors, then Add custom connector, then paste https://mcp.hasdata.com/mcp?apis=booking and sign in.

For the config-file route, Claude Desktop loads only local (stdio) servers, so it reaches a remote server through a stdio launcher. The @hasdata/booking-mcp package is that launcher, and it reads the key from the environment. Add this to claude_desktop_config.json:

{

"mcpServers": { "booking": { "command": "npx", "args": ["-y", "@hasdata/booking-mcp"], "env": { "HASDATA_API_KEY": "YOUR_KEY" } } } }

For Python instead of Node, swap the launcher for the PyPI package, which uvx runs without a manual install:

{

"mcpServers": { "booking": { "command": "uvx", "args": ["hasdata-booking-mcp"], "env": { "HASDATA_API_KEY": "YOUR_KEY" } } } }

Cursor

~/.cursor/mcp.json for every project, or .cursor/mcp.json for one:

{

"mcpServers": { "booking": { "url": "https://mcp.hasdata.com/mcp?apis=booking", "headers": { "x-api-key": "HASDATA_API_KEY" } } } }

Windsurf

~/.codeium/windsurf/mcp_config.json. Windsurf calls the field serverUrl, not url:

{

"mcpServers": { "booking": { "serverUrl": "https://mcp.hasdata.com/mcp?apis=booking", "headers": { "x-api-key": "HASDATA_API_KEY" } } } }

VS Code

.vscode/mcp.json in the workspace:

{

"servers": { "booking": { "type": "http", "url": "https://mcp.hasdata.com/mcp?apis=booking", "headers": { "x-api-key": "HASDATA_API_KEY" } } } }

Example prompts

Prompts, not code. Paste one in and the agent picks the tool itself. Each is annotated with the calls it takes, because every successful call costs 10 credits.

Search Booking.com for hotels in Paris from September 15 to 18 for two adults, and give me the ten best-reviewed under $700 for the stay.

*One call, 10 credits. Price, review score and location come back on the search result.*

Take the top result and pull its full detail: facilities, house rules, the room options, and the category ratings.

*One call, 10 credits. Those live on the property page, which the details tool reads by URL and dates.*

Find four-star hotels in Paris with free cancellation near the center, and list price and review score.

*One call, 10 credits. Star rating, cancellation policy and distance are filters on the one request.*

Compare the cheapest stay in Paris against Rome for the same dates.

*Two calls, 20 credits, one search per city.*

The property tool needs the same dates and guest counts as the search, because availability and price depend on the window. A search to shortlist plus a detail call on three properties is one search and three property calls.

Tools

ToolWhat it returns
hasdata_booking_place_getBookingPlaceDetailsThe property identity (hotelId, title, address, coordinates), policies (free cancellation, no prepayment, child/pet stays), price, rating and review summary, photos, and…. 10 credits a call
hasdata_booking_search_getBookingSearchResultsEach hotel's hotelId, title and Booking URL, location info (city, address, coordinates, distance to center / nearest beach), policies (free cancellation, no…. 10 credits a call

Two tools, read-only. Samples below are trimmed from real calls, and prices move constantly. Read them as shapes. Each tool name links to its endpoint reference, which carries the full field list.

The samples are the payload, not the whole response. A tools/call result carries one text block, and that text is itself JSON holding url, status, text and json, with the scraped data under json. From a raw JSON-RPC response the path is result.content[0].text, parsed, then .json. A chat client unwraps that for you and code talking to the endpoint directly does not.

Get Booking.com search results

hasdata_booking_search_getBookingSearchResults

A page of stays by destination and dates.

ParameterTypeRequiredNotes
keywordstringyesDestination, such as Paris or a specific property name
checkInDate / checkOutDatestringyesYYYY-MM-DD, check-in in the future and before check-out
rooms / adults / childrennumberyesGuest composition. Pass children: 0 when there are none
childrenAgesstringComma-separated ages, required when children > 0
sortstringpriceLowestFirst, ratingHighToLow, bestReviewedAndLowestPrice, distanceFromDowntown and more
propertyType__ / rating__ / reviewScore__arrayProperty type, star rating, and guest-score buckets
facilities__ / roomFacilities__ / reservationPolicy__arrayFacility, in-room and cancellation filters
price_min_ / price_max_numberTotal-stay price band
pagenumberAbout 25 results per page, 2 for the next page

The reference documents the full filter set, including distance, meals, accessibility, bed preference and travel group.

Returns searchInformation, a results array, and pagination with page, totalResults and totalPages. Each result carries hotelId, title, url, the offered room and bedTypes, a location object, a policies object, a price object, the star rating, a reviews object with score, count and a text label, and a photo.

The discount pair in price is discountRaw and discountParsed. Earlier releases misspelled it as dicsountRaw and dicsountParsed, and that spelling is gone, so code written against it reads nothing. Also note rating is the official star rating while reviews.score is the guest score out of 10, two different numbers.

{

"hotelId": 50724, "title": "Hôtel du Jardin des Plantes", "url": "https://www.booking.com/hotel/fr/timjardindesplantes.html", "room": "Comfort Double Room", "location": { "city": "Paris", "address": "5 rue Linné", "mainDistance": "0.9 miles from downtown", "centrallyLocated": true }, "policies": { "freeCancellation": true, "noPrepayment": true }, "price": { "pricePerStayParsed": 451.36, "priceBeforeDiscountParsed": 885.03, "discountParsed": 433.66, "currency": "USD" }, "rating": 3, "reviews": { "score": 7.5, "count": 1721, "text": "Good" } }

Get Booking.com property details

hasdata_booking_place_getBookingPlaceDetails

One property in full, by its URL and the stay window.

ParameterTypeRequiredNotes
urlstringyesA Booking.com property URL, the url field from a search result
checkInDate / checkOutDatestringyesYYYY-MM-DD, the window to price and check availability for
rooms / adults / childrennumberyesGuest composition, same meaning as the search tool
childrenAgesstringComma-separated ages, required when children > 0

Returns the page as sections rather than one flat object: overview (id, title, propertyType, a structured address, a description, highlights, mostPopularFacilities and photos), bookingDetails (the window and currency the prices reflect), a rooms array of the available suites each with name, beds, facilities and priced variants, a facilities list, houseRules, a ratings array of category scores, reviews, and questionsAndAnswers.

{

"overview": { "id": "50724", "title": "Hôtel du Jardin des Plantes", "propertyType": "HOTEL", "address": { "country": "France", "zipcode": "75005" }, "mostPopularFacilities": ["Non-smoking rooms", "Free Wifi", "24-hour front desk"] }, "bookingDetails": { "checkIn": "2026-09-15", "checkOut": "2026-09-18", "adults": 2, "rooms": 1, "currency": "USD" }, "ratings": [ { "label": "Average", "value": 7.5, "votes": 1721 }, { "label": "Cleanliness", "value": 7.8 } ] }

Prompts and resources

The server exposes 16 resources, one per parameter whose accepted values are a fixed list. Reading one is cheaper than learning the vocabulary from a rejected call, and it costs no credits. Each URI is `hasdata

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く