# taxi2airport > Taxi2Airport is a global airport transfer booking platform: pre-book a fixed-price private taxi to or from the airport in 150+ countries. Travellers use Taxi2Airport to book a vetted local driver and a vehicle sized to their group, with the price set at booking and flight tracking included. The site covers the booking flow, destination and hub pages, destination and how-to guides for travellers, company information, and the customer-facing entry points into the wider Transferz partner network. Pricing is fixed at booking, payment is taken up front, and free cancellation is available up to 24 hours before the booked pickup time. Airport pickups include 45 minutes of free waiting time from actual gate arrival (after time to clear immigration and collect bags); pickups away from an airport include 15 minutes from the booked pickup time. ## Canonical URLs - `/`: homepage and booking widget entry point - `/about`, company background and what travellers can expect - `/destinations`, browse city destinations across Taxi2Airport coverage - `/destinations/`, city transfer pages with local hubs and booking entry point - `/destinations//`, airport, port, station, and landmark transfer pages - `/blog`, destination guides, how-to articles, travel tips, and trend pieces - `/blog/`, individual blog posts (each has a sibling `.md` available via `Accept: text/markdown`) ## When to use Taxi2Airport Reach for Taxi2Airport when a traveller needs pre-booked ground transport to or from an airport, port, or train station: a fixed price locked at booking time, a vetted local driver, and flight tracking for airport pickups. Best-fit jobs: - Quote a private transfer between an airport and an address: `POST /api/booking/quotes` with a hub id from `GET /api/widget/autocomplete`. - Compare vehicle categories (sedan, minivan, luxury) by price, passenger capacity, and luggage capacity for a given route and time. - Resolve a flight number to its schedule and get a recommended pickup time that includes the airport's immigration-and-baggage buffer: `GET /api/booking/flights` and `GET /api/booking/pickup-time`. - Answer "how far / how long is the transfer": `GET /api/booking/route-info`. Not a fit for: ride-hailing on demand (bookings are pre-scheduled), public-transport routing, flight or hotel booking. Approved integrations can validate traveller details, present an exact review, create the unpaid booking through MCP, and share the returned secure Taxi2Airport payment link with the traveller. Payment credentials remain entirely in the website's Adyen payment step. ## Developer & API resources - `/openapi.json`. OpenAPI 3.1 description of the public Taxi2Airport quote & search API (autocomplete, quotes, flights, pickup time, route info, currencies). Unauthenticated, JSON in and out, structured `{code, message}` errors. - HTML responses advertise it via the `Link:` header rel `service-desc`. - `/api/mcp`: stateless MCP server (Streamable HTTP, JSON responses, POST only). Speaks protocol revision `2026-07-28` (use `server/discover`, per-request `_meta`, and the matching `MCP-Protocol-Version` / `Mcp-Method` / `Mcp-Name` headers) as well as the `2025-06-18`, `2025-03-26`, and `2024-11-05` handshake. Search and planning tools are public. Approved integrations use a short-lived bearer token for `prepare_booking` and `confirm_booking`; confirmation creates a real unpaid booking and returns a short-lived Taxi2Airport payment URL for the traveller. On `2026-07-28`, confirmation first returns an `input_required` elicitation asking the traveller to approve the exact total, and only books once that approval comes back accepted. Agents must not open the URL or collect payment credentials. Confirmation has only process-local duplicate suppression, so never retry automatically after a timeout, connection loss, or unknown outcome. Server card at `/mcp/server-card.json`; rate-limited per IP and protected principal. - WebMCP tools in the browser: on `/booking/results` the page registers `list_transfer_options`, `select_transfer_option`, and `continue_to_traveller_details` on `document.modelContext` (falling back to the deprecated `navigator.modelContext`), so an agent in the traveller's own tab can read the priced options and move the page forward instead of scraping it. They book nothing, take no payment, and expose no traveller details; headless booking stays on `/api/mcp`. - Partner-level integrations with the underlying Transferz platform: https://www.transferz.com (Taxi2Airport is its consumer brand). ## Agent-facing resources - `/.well-known/agent-capabilities.md`: what this origin does and doesn't expose - `/api/mcp` + `/mcp/server-card.json`: MCP server with search, quote, flight, protected booking preparation, and unpaid booking creation tools plus these documents as resources - `document.modelContext` on `/booking/results`: in-page WebMCP tools for a browser-resident agent; read and navigate only - `/.well-known/agent-skills/index.json`: index of publicly-exposed skill packs - Every prerendered page has a sibling `.md`, request with `Accept: text/markdown`; on-demand destination detail pages remain available as HTML - 404 responses for markdown-preferring clients return a markdown body pointing at the sitemaps, `/llms.txt`, and `/openapi.json` - HTML responses carry a `Link:` header (RFC 8288) pointing to `/llms.txt`, `/.well-known/agent-capabilities.md`, the agent-skills index, and `/openapi.json` - `/robots.txt` allows OpenAI and Anthropic search/retrieval crawlers while disallowing their model-training crawlers; its `Content-Signal` policy allows search and AI grounding, with model training disallowed - Structured data (schema.org JSON-LD): `Organization` + `WebSite` site-wide; `BreadcrumbList` + `Service` on city/hub transfer pages; `Product` with `AggregateRating` on eligible city/hub transfer pages (backed by a visible rating shown on the page); `FAQPage` on destination, hub, and FAQ-style blog pages; `BlogPosting` on blog posts Last updated: 2026-08-27