Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

TourScanner

by TourScanner-orgversion 1.0.0i★ –iRuns in the cloud
Registry nameio.github.TourScanner-org/tourscanner

Install

Overview

Description from the maker (original English)

Search, check availability and book tours and activities worldwide.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Runs in the cloud
  • Transport: Streamable HTTP
  • Category: Search & AI memory
  • You need to fill in: X-API-Key

Install

Pick the AI app you use, then copy the settings.

Before you install

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.

Run this in your terminal

claude mcp add --transport http tourscanner https://tourscanner.ai/api/mcp --header 'X-API-Key: your-value'

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "tourscanner": {
      "url": "https://tourscanner.ai/api/mcp",
      "headers": {
        "X-API-Key": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "tourscanner": {
      "type": "http",
      "url": "https://tourscanner.ai/api/mcp",
      "headers": {
        "X-API-Key": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • X-API-Key secret required HTTP header
    TourScanner API key. Request one at api@tourscanner.ai.

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

The server asks you to sign in before it lists its tools.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified with the GitHub account TourScanner-org, which owns the repo

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • ✓ Pass

    Endpoint responds

    Responded in 191 ms (HTTP 401)

  • ✓ Pass

    Sign-in with OAuth

    Declares OAuth sign-in, so your AI app can take you to log in

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Compared with others in Search & AI memoryi

  • More stars than 0% of the other 5654 servers in this category
  • Published to the registry more recently than 82% of the other 5654 servers in this category
  • Basic checks equal to or better than 100% of the other 5654 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is TourScanner safe?

It passed 3 of 3 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: X-API-Key

Does it run on my computer or in the cloud?

It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.

Is it still maintained?

The GitHub repo last changed –, and the latest version (1.0.0) reached the registry 8 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.

What can I use instead?

In the same category: Context7, Codebase Memory, Exa

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Context7

by upstash

Feeds AI the latest docs for libraries and frameworks before it answers, so code it writes does not use outdated, removed functions.

Computer or cloud★ 64,224MITUpdated yesterday
Install

Codebase Memory

by DeusData

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

Runs on your computer★ 48,148MITUpdated 21 days ago
Install

Exa

by exa-labs

Connect AI agents to Exa for web search, content fetching, and multi-step research.

Runs in the cloud★ 5,213MITUpdated 2 months ago
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

TourScanner AI guide

How to use the TourScanner API: search tours and activities, check live availability, and book them. It also covers the MCP server, if you want an AI agent to do the same thing.

It's a REST API (JSON over HTTPS, OpenAPI 3.1) for tours, activities and attractions worldwide. The catalog is about a million activities from 14 providers, behind one set of endpoints. This repo is the practical side of the docs: what to call, in what order, and the mistakes that cost people an afternoon.

Reference docs live at tourscanner.ai/docs, and the machine-readable spec is at tourscanner.ai/openapi.json.

Get a key

Keys are issued by hand. Email api@tourscanner.ai with what you're building and which cities matter to you. Send it in the X-API-Key header on every request. Without one you get a 401.

export TOURSCANNER_API_KEY=your_key

First request

curl -s "https://tourscanner.ai/api/search/activities?city=rome&q=colosseum&limit=3" \

-H "X-API-Key: $TOURSCANNER_API_KEY"

You get back activities, plus total, page and some facets. Each activity has an id, a name, a rating, and a price of the form { "currency": "EUR", "price": 5400 }.

Prices are integers in minor units, so 5400 is 54.00. This applies to the min_price and max_price filters too.

The booking flow

Five calls, in this order:

  1. GET /api/search/activities to find something.
  2. POST /api/availability/slots for the real slots and prices on a date.
  3. POST /api/booking/options for the ticket variants and booking questions.
  4. POST /api/booking/hold reserves the slot and returns a Stripe checkoutUrl. The card is authorized, not charged.
  5. POST /api/booking/confirm after the customer pays. This confirms with the supplier and captures the payment.

Details and request bodies are in docs/booking.md. A runnable version of steps 1 to 4 is in examples/node/book.mjs.

Examples

Node, Python, Ruby, Go and curl. Each does the same three things: search, check availability, and run the booking flow up to the Stripe link. None needs a package beyond the language's standard library (Node 18 or newer).

searchavailabilitybook
Nodenode examples/node/search.mjs rome colosseumnode examples/node/availability.mjs 12345 2026-12-01OPTION_CODE=... node examples/node/book.mjs 12345 2026-12-01
Pythonpython3 examples/python/search.py rome colosseumpython3 examples/python/availability.py 12345 2026-12-01OPTION_CODE=... python3 examples/python/book.py 12345 2026-12-01
Rubyruby examples/ruby/search.rb rome colosseumruby examples/ruby/availability.rb 12345 2026-12-01OPTION_CODE=... ruby examples/ruby/book.rb 12345 2026-12-01
Gogo run . search rome colosseumgo run . availability 12345 2026-12-01OPTION_CODE=... go run . book 12345 2026-12-01

Run the Go ones from examples/go. The curl scripts are in examples/curl.

They read your key from TOURSCANNER_API_KEY. Set TOURSCANNER_BASE_URL to point them at a different host. Run book without OPTION_CODE first: it prints the options and stops, so you can pick a code. On the production host a full book run places a real hold and creates a real Stripe checkout.

Missing your language? The API is plain JSON over HTTPS, so any HTTP client works. The OpenAPI spec above will generate a client for most languages.

For AI agents

There's a remote MCP server at https://tourscanner.ai/api/mcp. It exposes 12 tools covering search, availability, checkout links, and booking status. Setup for Claude, Cursor, VS Code and others is in docs/mcp.md.

Things that trip people up

  • Cents, not euros. Every price field is in minor units.
  • `productOptionCode` comes from `booking/options`. The hold fails without it, and the codes differ per activity.
  • `adults` is required in passengers, and it has to be at least 1.
  • Phone numbers need the country code, like +442079460000. Anything else is rejected.
  • Stripe sessions expire after 30 minutes. After that the hold is released.
  • Check availability right before booking. Search results come from our catalog, and slots come live from the supplier. They can disagree.
  • Not every provider books in-house. For the others you hand the traveller off to the partner instead. Adding providers=2,3,7 to a search limits it to the ones we book directly. The MCP get_activity tool reports this per activity as bookableByUs.
  • Rate limits return `429` with a Retry-After header. Honor it.

Environments

The production host places real holds and real Stripe checkouts. If you want a sandbox on provider test rails, ask for one when you get your key.

License

MIT for the code in this repo. The catalog content you get from the API is covered by the terms.

Ask PopNx