airport-transfers
What this MCP does
Provides pricing, route information, and provisional booking requests for airport transfers between Novi Sad and Belgrade Airport.
Tools
Input schema
{'type': 'object', 'required': ['routeSlug', 'direction', 'pickupDate', 'pickupTime', 'passengerName', 'passengerEmail', 'passengerPhone', 'passengers'], 'properties': {'locale': {'enum': ['en', 'sr', 'ru'], 'type': 'string', 'description': 'Language for the confirmation email. Default en.'}, 'luggage': {'type': 'integer', 'minimum': 0, 'description': 'Number of large bags (optional).'}, 'vehicle': {'type': 'string', 'description': "Optional vehicle tier name (e.g. 'Group XL'). Defaults to the cheapest vehicle that fits the group."}, 'direction': {'enum': ['to_airport', 'from_airport'], 'type': 'string', 'description': 'to_airport = going to the airport; from_airport = pickup at the airport.'}, 'routeSlug': {'type': 'string', 'description': 'Route slug from list_routes.'}, 'passengers': {'type': 'integer', 'minimum': 1, 'description': 'Number of passengers.'}, 'pickupDate': {'type': 'string', 'description': 'Pickup date, YYYY-MM-DD, Belgrade local time.'}, 'pickupTime': {'type': 'string', 'description': 'Pickup time, HH:MM (24h), Belgrade local time.'}, 'flightNumber': {'type': 'string', 'description': 'Flight number (recommended for airport pickups).'}, 'passengerName': {'type': 'string', 'description': 'Full name of the passenger.'}, 'pickupAddress': {'type': 'string', 'description': 'Pickup or drop-off address. REQUIRED when the ride departs to the airport (direction to_airport) or runs city-to-city — the driver has nowhere to collect the passenger otherwise, and the booking is refused. Optional for an airport arrival, where the driver waits in arrivals.'}, 'passengerEmail': {'type': 'string', 'description': 'Passenger email — the confirmation link is sent here.'}, 'passengerPhone': {'type': 'string', 'description': 'Passenger phone in international format.'}, 'specialRequests': {'type': 'string', 'description': 'Notes, e.g. child seat needed (optional).'}}, 'additionalProperties': False}
Output schema
{'oneOf': [{'type': 'object', 'required': ['ok', 'status', 'booked', 'confirmationEmailSent', 'message'], 'properties': {'ok': {'const': True}, 'route': {'type': 'string'}, 'booked': {'const': False}, 'pickup': {'type': 'string'}, 'status': {'const': 'pending_confirmation'}, 'message': {'type': 'string'}, 'vehicle': {'type': 'string'}, 'priceEur': {'type': 'number'}, 'expiresAt': {'type': 'string', 'format': 'date-time'}, 'requestId': {'type': 'string'}, 'confirmationEmailSent': {'type': 'boolean'}}}, {'type': 'object', 'required': ['ok', 'error'], 'properties': {'ok': {'const': False}, 'error': {'type': 'string'}}}]}
Input schema
{'type': 'object', 'required': ['routeSlug', 'passengers'], 'properties': {'luggage': {'type': 'integer', 'minimum': 0, 'description': 'Number of large bags (optional).'}, 'routeSlug': {'type': 'string', 'description': 'Route slug from list_routes.'}, 'passengers': {'type': 'integer', 'minimum': 1, 'description': 'Number of passengers.'}}, 'additionalProperties': False}
Output schema
{'oneOf': [{'type': 'object', 'required': ['fits', 'route', 'recommended'], 'properties': {'fits': {'const': True}, 'note': {'type': 'string'}, 'route': {'type': 'string'}, 'luggage': {'type': ['integer', 'null']}, 'passengers': {'type': 'integer'}, 'recommended': {'type': 'object', 'required': ['vehicle', 'priceEur'], 'properties': {'vehicle': {'type': 'string'}, 'priceEur': {'type': 'number'}, 'priceRsd': {'type': ['number', 'null']}, 'maxLuggage': {'type': 'integer'}, 'maxPassengers': {'type': 'integer'}}}, 'allFittingOptions': {'type': 'array', 'items': {'type': 'object'}}}}, {'type': 'object', 'required': ['fits', 'message'], 'properties': {'fits': {'const': False}, 'message': {'type': 'string'}}}, {'type': 'object', 'required': ['error'], 'properties': {'error': {'type': 'string'}}}]}
Input schema
{'type': 'object', 'required': ['requestId'], 'properties': {'requestId': {'type': 'string', 'description': 'The requestId returned by create_booking_request.'}}, 'additionalProperties': False}
Output schema
{'oneOf': [{'type': 'object', 'required': ['ok', 'status', 'booked', 'message'], 'properties': {'ok': {'const': True}, 'booked': {'type': 'boolean'}, 'status': {'enum': ['pending', 'confirmed', 'expired']}, 'message': {'type': 'string'}, 'bookingNumber': {'type': ['string', 'null']}}}, {'type': 'object', 'required': ['ok', 'error'], 'properties': {'ok': {'const': False}, 'error': {'type': 'string'}}}]}
Input schema
{'type': 'object', 'properties': {'routeSlug': {'type': 'string', 'description': "Optional route slug from list_routes (e.g. 'novi-sad-belgrade-airport'). Omit to get pricing for every route."}}, 'additionalProperties': False}
Output schema
{'oneOf': [{'type': 'object', 'required': ['currency', 'routes'], 'properties': {'routes': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'pricing'], 'properties': {'slug': {'type': 'string'}, 'route': {'type': 'string'}, 'pricing': {'type': 'array', 'items': {'type': 'object', 'required': ['vehicle', 'priceEur'], 'properties': {'vehicle': {'type': 'string'}, 'priceEur': {'type': 'number'}, 'priceRsd': {'type': ['number', 'null']}, 'maxLuggage': {'type': ['integer', 'null']}, 'maxPassengers': {'type': ['integer', 'null']}}}}}}}, 'currency': {'type': 'string'}}}, {'type': 'object', 'required': ['error'], 'properties': {'error': {'type': 'string'}}}]}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['howToBook'], 'properties': {'url': {'type': 'string'}, 'meta': {'type': 'object'}, 'name': {'type': 'string'}, 'email': {'type': 'string'}, 'howToBook': {'type': 'string'}, 'languages': {'type': 'array', 'items': {'type': 'string'}}, 'telephone': {'type': 'string'}, 'paymentMethods': {'type': 'array', 'items': {'type': 'string'}}, 'bookingUrlTemplate': {'type': 'string'}}}
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Output schema
{'type': 'object', 'required': ['routes', 'count'], 'properties': {'count': {'type': 'integer'}, 'routes': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'origin', 'destination'], 'properties': {'slug': {'type': 'string'}, 'origin': {'type': 'string'}, 'directions': {'type': 'array', 'items': {'type': 'string'}}, 'distanceKm': {'type': 'number'}, 'destination': {'type': 'string'}, 'fromPriceEur': {'type': 'number'}, 'durationMinutes': {'type': 'number'}}}}}}
Recent tool changes
Similar MCP servers
Award Travel Finder
Searches award flights and hotels, tracks bookings and loyalty balances, evaluates points and credit cards, and monitors travel r…
Good Turn Studio (all tools)
Offers consumer utilities for insurance claim appeals, subscription cancellation, flight fare research, financial recovery resour…
AI 代理人任務中樞
Aggregates Taiwan-focused tools for AI service comparisons, cryptocurrency data, game information, health guidance, and other con…
Gover MCP
Searches and manages corporate travel requests, flights, hotels, rental vehicles, passengers, carts, approvals, reservations, and…
DC Member API
Provides access to Dynamite Circle membership data, community profiles, chapters, events, trips, calendars, alerts, follows, agen…
Nomad Stays
Searches and books remote-work accommodations while supporting host listing management, rooms, packages, availability, and hospit…
lilo Vacation Rentals
Supports vacation-rental discovery, availability and direct booking, property operations, short-term-rental compliance, guest and…
mcp-server
Provides immigration, citizenship and residency programme research alongside tax, wealth structuring, banking, visa, treaty and c…