Travel Search Engine (TSE)Search. Book. Manage. MCP server
Model Context Protocol

Give an AI client the whole TSE API

A remote Model Context Protocol server covering every Travel Search Engine endpoint: flight, hotel, transfer, car hire and package search, booking, ticketing, payments and servicing, plus activities, travel insurance, cruises and visa requirements, with places and the fare calendar to search by. It stores nothing between requests and holds no credentials of its own. You set your own API key once in your client's configuration; it is sent with every call and never passes through the model, which can only ever reach what your key already reaches.

Checking the API

Connect

One command for Claude Code. Any other MCP client takes the JSON below in its own configuration file. Put your own key in place of tse_test_...: a test key from developers.travnet.app. The transport is streamable HTTP, so there is nothing to install and nothing to keep running on your machine.

Claude Code
claude mcp add --transport http tse https://mcp.travnet.app \
  --header "Authorization: Bearer tse_test_..."
Claude Desktop, or any MCP client
{
  "mcpServers": {
    "tse": {
      "type": "http",
      "url": "https://mcp.travnet.app",
      "headers": { "Authorization": "Bearer tse_test_..." }
    }
  }
}

Five tools, not one per endpoint

Exposing every endpoint as its own tool would fill the model's context before it had read your question, and choosing between that many similar names makes selection worse rather than better. These five let a client navigate the surface instead: work out what exists, read the exact contract, then make the call.

ToolWhat it does
api_conventions The rules that apply everywhere: how authentication works, why money is carried in each currency's minor unit, when an idempotency key is required, how the asynchronous search flow returns a stream rather than results, and which host to talk to.
list_areas The map. Every surface and area with a count of the endpoints inside it, so a client can orient itself before searching.
search_endpoints Find endpoints by keyword, by area or by HTTP method, without loading the whole surface into context.
describe_endpoint The full contract for one endpoint: every field, its type, whether it is required, and the exact enum values it accepts.
call_endpoint Execute a real call against the test or production host, with your key, and return the response. At most 60 calls a minute from one client.

What stops it doing damage

default Test unless you say otherwise Every call goes to the test host unless production is named explicitly. Production is live, so a booking made there is real. The two share one database: a write on test changes accounts, users, markup rules and suppliers on production too.
explicit Writes need confirming No POST, PATCH, PUT or DELETE is sent without confirm=true on the call. Reading the surface is free; changing it is deliberate.
enforced Idempotency is not optional Endpoints that require an Idempotency-Key are refused without one. A key replays only a success: after a failure it runs again once 300 seconds have passed, so read the booking before retrying.
stateless Your key, out of the model's sight Your key travels in your client's configuration, never through the model, and is never written down. A call carrying a password or card data is refused, and so is a super admin's sign in. There is no session and no cache of your data.

Also available