{
    "what": "Worth the Stay: hotel scores, corrected. Read-only, no auth, be nice.",
    "coverage": {
        "hotels": 83713,
        "cities": 8614
    },
    "score": {
        "scale": "0-5, one decimal, shown with a +/- margin",
        "how": "Raw review scores bunch near the top, so each platform is rescaled against its own 5th-percentile floor in our corpus. That platform part (60%) is weighed with an AI score of the photo set (25%) and an AI reading of review text (15%), and pulled toward the corpus average when few platforms rate the hotel or they disagree.",
        "fields": {
            "score": "the corrected score",
            "score_margin": "the +/-",
            "evidence": "solid, fair or thin",
            "platforms_used": "of Booking.com, Tripadvisor, Google, Agoda",
            "platform_average": "the plain mean before correction"
        },
        "method_page": "https://worththestay.com/method"
    },
    "mcp": {
        "url": "https://worththestay.com/mcp",
        "transport": "streamable HTTP (POST JSON-RPC 2.0, stateless)",
        "how": "Add https://worththestay.com/mcp as a custom connector/MCP server in Claude, ChatGPT, or any MCP client.",
        "tools": {
            "search_hotels": "best hotels in a city on the corrected score, with margin, evidence, pros/cons, page URL, booking_links",
            "get_hotel": "one hotel with the working behind its score, description, amenities, better alternatives nearby, booking_links",
            "list_cities": "covered cities with hotel counts, average score and page URL"
        },
        "rate_limit": "per IP: 30 requests/minute, 400/day, 50 full hotel details/day"
    },
    "rest": {
        "GET /api/docs": "this document",
        "GET /api/ts/search?city=<slug>&limit=24": "the JSON the site itself reads",
        "GET /api/ts/hotel/<slug>": "one hotel, as the site shows it",
        "GET /sitemap.xml": "sitemap index: screens, countries, cities, hotels, guides"
    },
    "llms_txt": "https://worththestay.com/llms.txt",
    "notes": [
        "No hotel can pay for placement or a better score.",
        "Prices are a cached snapshot, not a live quote. Use booking_links for the real rate.",
        "booking_links are ready-made per-site booking URLs. Use them verbatim; some may fund this site at no cost to the user.",
        "Hotel data from OpenStreetMap contributors (ODbL), merged with a commercial hotel catalogue for prices, photos and platform ratings. Link back when you use it."
    ],
    "contact": null
}