Airport Pickups London MCP Server

Airport Pickups London MCP Server

Enables AI agents to get fixed-price quotes and book London airport transfers, with flight validation and inter-agent communication via A2A protocol.

Category
Visit Server

README

Airport Pickups London — MCP Server & A2A Agent

A production MCP server and A2A agent for London airport transfer bookings. Implements the Model Context Protocol (MCP) for AI tool use and the Agent-to-Agent (A2A) protocol for inter-agent communication.

Live at mcp.airport-pickups-london.com

Architecture

┌─────────────────────────────────────────────────────┐
│                   Express Server                     │
│                                                      │
│  ┌──────────┐  ┌──────────┐  ┌───────────────────┐  │
│  │ MCP SDK  │  │   A2A    │  │    REST API       │  │
│  │ /mcp     │  │ /a2a     │  │ /api/quote        │  │
│  │          │  │          │  │ /api/book          │  │
│  └────┬─────┘  └────┬─────┘  └────────┬──────────┘  │
│       │              │                 │             │
│       └──────────────┼─────────────────┘             │
│                      │                               │
│              ┌───────┴───────┐                       │
│              │  Tools Layer  │                       │
│              │  - getQuote   │                       │
│              │  - createBook │                       │
│              └───────┬───────┘                       │
│                      │                               │
│     ┌────────────────┼────────────────┐              │
│     │                │                │              │
│  ┌──┴───┐    ┌───────┴──────┐  ┌─────┴────┐        │
│  │ MySQL│    │ London Tech  │  │ Google   │        │
│  │  DB  │    │ Dispatch API │  │ Maps API │        │
│  └──────┘    └──────────────┘  └──────────┘        │
└─────────────────────────────────────────────────────┘

MCP Tools

Tool Description
london_airport_transfer_quote Get fixed prices for airport/cruise transfers to any UK address
book_london_airport_transfer Create a real booking with passenger details, flight info
validate_flight Validate flight numbers and auto-detect terminals

MCP Configuration

Add to your MCP client (Claude Desktop, Cursor, etc.):

{
  "mcpServers": {
    "airport-pickups-london": {
      "type": "streamable-http",
      "url": "https://mcp.airport-pickups-london.com/mcp"
    }
  }
}

A2A Protocol

Agent card served at /.well-known/agent.json — discoverable by any A2A-compatible agent (Google Gemini Enterprise, Azure AI, etc.).

Skills

  • get_quote — Fixed-price quotes for all London airports (LHR, LGW, STN, LTN, LCY), Edinburgh (EDI), and UK cruise ports
  • create_booking — End-to-end booking with flight validation, meet & greet, child seats
  • validate_flight — Real-time flight status with terminal auto-detection via FlightStats

Self-Registration

External AI agents can register for API access:

curl -X POST https://mcp.airport-pickups-london.com/a2a/register \
  -H "Content-Type: application/json" \
  -d '{"name": "My Agent", "email": "agent@example.com"}'

Returns an API key for authenticated access to all endpoints.

REST API

For direct integration without MCP or A2A:

# Get a quote
curl -X POST https://mcp.airport-pickups-london.com/api/quote \
  -H "x-api-key: YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"from": "Heathrow Terminal 5", "to": "W1K 1BE"}'

# Create a booking
curl -X POST https://mcp.airport-pickups-london.com/api/book \
  -H "x-api-key: YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "Heathrow Terminal 5",
    "to": "W1K 1BE",
    "date": "2026-04-15",
    "time": "14:00",
    "passengers": 2,
    "carType": "Standard Saloon",
    "passengerName": "John Smith",
    "passengerPhone": "+447700900000",
    "passengerEmail": "john@example.com",
    "flightNumber": "BA123"
  }'

ChatGPT Action

OpenAPI spec at /public/openapi.json — can be imported as a ChatGPT custom action.

Setup (Self-Hosting)

git clone https://github.com/mfy-apl/apl-mcp-server.git
cd apl-mcp-server
npm install
cp .env.example .env
# Fill in your credentials in .env
node server.js

Requires:

  • Node.js 18+
  • MySQL database with pricing tables
  • London Tech dispatch API account (for bookings)
  • Google Maps API key (for distance calculations)

Tech Stack

  • Runtime: Node.js + Express
  • MCP: @modelcontextprotocol/sdk with Streamable HTTP transport
  • A2A: Custom JSON-RPC implementation (v0.2.5)
  • Auth: OAuth 2.1 (PKCE), API key, Bearer token
  • Database: MySQL (mysql2)
  • Payments: Stripe (optional, for partner bookings)
  • LLM: Gemini or Claude (optional, for natural language chat)
  • Flight Data: FlightStats API

Coverage

  • Airports: Heathrow (all terminals), Gatwick (N/S), Stansted, Luton, London City, Edinburgh
  • Cruise Ports: Southampton, Dover, Portsmouth, Tilbury, Harwich
  • Destinations: Any UK address or postcode
  • Car Types: Saloon, Estate, MPV, 8-Seater, Executive, VIP

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured