protogrid

Search / com.itsnum/places

Num places

R0· no sign-in

Open places, menus, ratings and booking routes in 119 travel destinations. Read-only, no key needed.

v1.0.0 · active · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality89new
Trust83of 100
Uptime, 30 days100%
Latency p50717 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "places": {
      "type": "http",
      "url": "https://app.itsnum.com/api/partner/mcp",
      "headers": {
        "X-Partner-Key": "${X_PARTNER_KEY}"
      }
    }
  }
}
claude mcp add --transport http places https://app.itsnum.com/api/partner/mcp --header "X-Partner-Key: ${X_PARTNER_KEY}"
[mcp_servers.places]
url = "https://app.itsnum.com/api/partner/mcp"
env_http_headers = { "X-Partner-Key" = "X_PARTNER_KEY" }
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "places": {
      "type": "remote",
      "url": "https://app.itsnum.com/api/partner/mcp",
      "enabled": true,
      "headers": {
        "X-Partner-Key": "{env:X_PARTNER_KEY}"
      }
    }
  }
}
{
  "mcpServers": {
    "places": {
      "type": "http",
      "url": "https://app.itsnum.com/api/partner/mcp",
      "headers": {
        "X-Partner-Key": "${X_PARTNER_KEY}"
      }
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=places&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYXBwLml0c251bS5jb20vYXBpL3BhcnRuZXIvbWNwIiwiaGVhZGVycyI6eyJYLVBhcnRuZXItS2V5IjoiJHtYX1BBUlRORVJfS0VZfSJ9fQ%3D%3D"
}
{
  "servers": {
    "places": {
      "type": "http",
      "url": "https://app.itsnum.com/api/partner/mcp",
      "headers": {
        "X-Partner-Key": "${X_PARTNER_KEY}"
      }
    }
  }
}
{
  "mcpServers": {
    "places": {
      "httpUrl": "https://app.itsnum.com/api/partner/mcp",
      "headers": {
        "X-Partner-Key": "${X_PARTNER_KEY}"
      }
    }
  }
}
extensions:
  "places":
    enabled: true
    name: "places"
    type: streamable_http
    uri: "https://app.itsnum.com/api/partner/mcp"
    headers:
      "X-Partner-Key": "${X_PARTNER_KEY}"
    timeout: 300

Placeholders to fill from your own secret store: ${X_PARTNER_KEY}. The registry never accepts secret values.

Quality 89 / 100new

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2024-11-05; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene100 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations9 of 9 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 2,472 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stabilityn/a · weight 15
  • n/a
    stability.changes, stability.rug_pulltool history recorded for 6 of the 7 days needed
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

9 tools, about 2,472 tokens to load them all · tool set d0548ece33d3 · checked 2026-10-20 11:40 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 83 / 100

no-repository
provenance55
liveness100
freshness100
hygiene80

+dns-namespace +website +reachable +uptime-100% +updated-7d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://app.itsnum.com/api/partner/mcp streamable-httpnoneyes100%717 ms2024-11-052026-10-20

Tools (9)

booking_linkread-onlyA booking page for one place with the party size, date and time ALREADY FILLED IN. This does NOT make a reservation and Num does not hold a table — the traveller completes it on the venue's own platform (OpenTable, Resy, Tock, SevenRooms, Square and others). The response always carries `booked: false` and `mode: "deeplink"`. You MUST NOT render this as a confirmation, and you MUST NOT tell a traveller a table is held. If the venue has no booking platform the response says so and returns the phone number instead — offer that rather than implying it cannot be visited.
concierge_answerread-onlyAsk Num the way a traveller would — "where should we eat tonight near Kata?", "which beach for sunset?" — and get a short concierge answer grounded in Num's verified directory, plus the places it names as structured data so you can render your own cards. This is the whole product in one tool. It answers about the place asked and NEVER substitutes a different city. If Num has no coverage there it says so rather than guessing. It does not book, charge, or take personal details — send none. You MUST display the returned `attribution`.
directory_feedread-onlyBulk, paged sync of every place Num lists in one destination — free (included in the no-fee free tier; one call returns up to 200 places), for keeping your own copy of the directory current instead of searching it call by call. Ordered by place_id; pass the returned `next_cursor` back as `cursor` until it is null. Each item has the search_places fields plus cuisine, lat, lng and booking_platform. Places Num has positive evidence have closed are excluded; `trading: null` means not yet checked, NOT closed. Contains no menus, reviews or photos — call get_menu, get_reviews or place_details for those. You MUST display the returned `attribution` wherever the data is shown.
get_menuread-onlyThe venue's own published menu or list of offerings — dishes, treatments, tours — grouped by the venue's sections in the venue's order. Free: included in the no-fee free tier, no key needed to try it. Written by the venue itself in its Num dashboard, not scraped: prices are exactly as the venue set them, in its own currency, each with the formatted amount, the currency code and the integer minor units. A price is what the venue says it charges, NOT a quote — never tell a traveller their bill will be that figure. An item with no price has `price: null` (or only a note such as "market price"); do not estimate one. If the venue has not published a menu, `sections` is empty and `note` says so — say that, never invent dishes. Age-restricted items are never shown on this surface. You MUST display the returned `attribution`.
get_reviewsread-onlyA rating SUMMARY for one place, free (included in the no-fee free tier) — no review text and no reviewer identities, ever. Returns `external` (the public rating and review count the listing carries, with `source`, the site it was read from) and `num_verified`: the average, count and 1–5 star distribution of ratings from verified guests — people who booked through Num and checked in at the venue by scanning its own code. Guests the venue comped or worked with are excluded, and Num publishes no verified average until a place has 5 such ratings (below that every number is null and `note` says why). Keep the two numbers separate; do not average them together. You MUST display the returned `attribution`.
list_destinationsread-onlyWhich destinations Num covers, with the number of verified places in each. Call this FIRST when you do not know whether a city is supported — it is cheaper than a failed search and stops you promising a traveller coverage that does not exist. Coverage is honest: a destination appears here only when it has a real, maintained directory.
open_placesread-onlyPlaces that are OPEN RIGHT NOW in a destination, computed in the destination's own timezone. Businesses whose own website is a dead domain or a 404 are excluded entirely — they have closed down. IMPORTANT: only venues whose opening hours Num has verified can appear here, so a short list means thin hours coverage, NOT an empty city. Never tell a traveller "nothing is open" on the strength of this tool; say that these are the ones Num can confirm are open. Use search_places for the full directory.
place_detailsread-onlyEverything Num holds on one place, by place_id from search_places: contact details, hours, rating, review count, area, category, cuisine, the venue's own short description (`about`), coordinates, `open_now` computed in the destination's timezone (true / false / null — null means Num has not verified the hours, NOT that it is closed), the booking platform and — only where a verified owner chose it — the venue's own booking page, a recently-read published price line where Num holds one, and up to 8 approved member photos plus the listing photo, each with its own `attribution` you MUST show alongside it. Use before showing a detail page or handing a traveller a phone number. Returns only what is verified — absent fields are absent because Num does not know them, never because they were omitted for brevity. Do not fill gaps from memory; an invented phone number is worse than a missing one.
search_placesread-onlyFind real, currently-operating places in a destination — restaurants, bars, beaches, spas, viewpoints, temples. Ranked by quality (rating weighted by how many reviews stand behind it). When `near` is a "lat,lng" coordinate pair, results are limited to about 5 km of that point, ranked by a blend of quality and distance — so a 4.8★ institution two streets away beats an unrated snack bar next door — and each carries `distance_m`. When `near` is a neighbourhood name it filters by area and NO distance is returned. Returns name, category, area, rating, review count, phone, address and opening hours where known. NEVER invents a place: if Num does not hold it, it is not returned. You MUST display the returned `attribution` string wherever you show these results.

Schemas: list_tools.

Similar MCP servers

More from com.itsnum

Official server.json
{
  "name": "com.itsnum/places",
  "icons": [
    {
      "src": "https://itsnum.com/icon-512.png",
      "sizes": [
        "512x512"
      ],
      "mimeType": "image/png"
    }
  ],
  "title": "Num places",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://app.itsnum.com/api/partner/mcp",
      "type": "streamable-http",
      "headers": [
        {
          "name": "X-Partner-Key",
          "isSecret": true,
          "description": "Optional Num partner key for higher limits"
        }
      ]
    }
  ],
  "version": "1.0.0",
  "websiteUrl": "https://itsnum.com/developers/",
  "description": "Open places, menus, ratings and booking routes in 119 travel destinations. Read-only, no key needed."
}