voidjet empty legs
Search current empty-leg private jet offers by route and date. No provider names; free.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"empty-legs": {
"url": "https://api.voidjet.io/agent/mcp"
}
}
}Puntos de conexión remotos
https://api.voidjet.io/agent/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (3)
🟢search_empty_legs(origin, destination, date_from, date_to, passengers, ...)
Find current empty-leg flights. Give at least origin or destination (city name or IATA/ICAO code). Returns up to 20 offers with route, date, aircraft, seats, indicative price and a voidjet link plus a pre-filled inquiry link for the user. Provider names are not included. With no match, charter_alternative may offer a regular charter via partner Villiers: NOT an empty leg and a paid partner offer, tell the user both.
Esquema de entrada
{
"type": "object",
"properties": {
"origin": {
"anyOf": [
{
"maxLength": 64,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Departure city or IATA/ICAO code, e.g. Nice or NCE.",
"title": "Origin"
},
"destination": {
"anyOf": [
{
"maxLength": 64,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Arrival city or IATA/ICAO code.",
"title": "Destination"
},
"date_from": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Earliest departure date (YYYY-MM-DD), default today.",
"title": "Date From"
},
"date_to": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Latest departure date, at most 120 days after date_from.",
"title": "Date To"
},
"passengers": {
"anyOf": [
{
"maximum": 19,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Passengers"
},
"max_price_eur": {
"anyOf": [
{
"exclusiveMinimum": 0,
"maximum": 1000000,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "Maximum price in EUR for the whole aircraft.",
"title": "Max Price Eur"
},
"sort": {
"default": "date",
"enum": [
"date",
"price"
],
"title": "Sort",
"type": "string"
},
"limit": {
"default": 10,
"maximum": 20,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"offset": {
"default": 0,
"maximum": 40,
"minimum": 0,
"title": "Offset",
"type": "integer"
},
"locale": {
"default": "en",
"enum": [
"en",
"de"
],
"title": "Locale",
"type": "string"
}
},
"title": "search_empty_legsArguments"
}Esquema de salida
{
"type": "object",
"properties": {
"total": {
"description": "Number of matching offers in total.",
"title": "Total",
"type": "integer"
},
"limit": {
"title": "Limit",
"type": "integer"
},
"offset": {
"title": "Offset",
"type": "integer"
},
"results": {
"items": {
"$ref": "#/$defs/AgentFlight"
},
"title": "Results",
"type": "array"
},
"resolved_from": {
"anyOf": [
{
"$ref": "#/$defs/ResolvedPlace"
},
{
"type": "null"
}
],
"default": null
},
"resolved_to": {
"anyOf": [
{
"$ref": "#/$defs/ResolvedPlace"
},
{
"type": "null"
}
],
"default": null
},
"data_as_of": {
"format": "date",
"title": "Data As Of",
"type": "string"
},
"notes": {
"default": [],
"items": {
"type": "string"
},
"title": "Notes",
"type": "array"
},
"charter_alternative": {
"anyOf": [
{
"$ref": "#/$defs/CharterAlternative"
},
{
"type": "null"
}
],
"default": null,
"description": "Only when no empty leg matches: a regular charter via a partner. NOT an empty leg; tell the user so."
}
},
"required": [
"total",
"limit",
"offset",
"results",
"data_as_of"
],
"$defs": {
"AgentFlight": {
"properties": {
"ref": {
"description": "Opaque permanent key of this offer. Use exactly as given.",
"title": "Ref",
"type": "string"
},
"url": {
"description": "Offer page on voidjet.io for the user.",
"title": "Url",
"type": "string"
},
"inquiry_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Offer page with the inquiry form opened and pre-filled. The user enters name and email and sends it. Null for partner offers.",
"title": "Inquiry Url"
},
"available": {
"description": "False if the offer is no longer listed today.",
"title": "Available",
"type": "boolean"
},
"origin": {
"$ref": "#/$defs/Place"
},
"destination": {
"$ref": "#/$defs/Place"
},
"departure_date": {
"description": "Earliest departure date (local).",
"format": "date",
"title": "Departure Date",
"type": "string"
},
"departure_date_latest": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Latest departure date if the provider offers a date window.",
"title": "Departure Date Latest"
},
"departure_time_local": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "HH:MM local time, if known.",
"title": "Departure Time Local"
},
"aircraft_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Aircraft Type"
},
"aircraft_class": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "One of: vlj, light, midsize, super_midsize, heavy, ultra, turboprop, airliner_vip.",
"title": "Aircraft Class"
},
"seats": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Passenger seats of the aircraft.",
"title": "Seats"
},
"price": {
"anyOf": [
{
"$ref": "#/$defs/Price"
},
{
"type": "null"
}
],
"default": null
},
"price_estimate": {
"anyOf": [
{
"$ref": "#/$defs/PriceEstimate"
},
{
"type": "null"
}
],
"default": null
},
"price_note": {
"title": "Price Note",
"type": "string"
},
"confirmed": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Whether the provider has confirmed the flight will operate. Null when unknown.",
"title": "Confirmed"
},
"probability": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Provider-stated probability (0-100) that the flight operates. Null when unknown.",
"title": "Probability"
},
"inquiry_possible": {
"description": "False for partner offers, which are requested on the partner site via the url.",
"title": "Inquiry Possible",
"type": "boolean"
},
"booking_via": {
"enum": [
"inquiry",
"partner_link"
],
"title": "Booking Via",
"type": "string"
}
},
"required": [
"ref",
"url",
"available",
"origin",
"destination",
"departure_date",
"price_note",
"inquiry_possible",
"booking_via"
],
"title": "AgentFlight",
"type": "object"
},
"CharterAlternative": {
"description": "Charter-Rueckfall bei null Treffern (09.10.2026, Robin): kein Leerflug,\nsondern ein Charter ueber den Partner, der fuer die Region zustaendig ist\n(rueckfall.py, heute Villiers fuer Nordamerika). Der Assistent muss das\nsagen - deshalb steht es dreifach da: `kind`, `is_empty_leg` und `notice`.",
"properties": {
"kind": {
"const": "charter",
"default": "charter",
"title": "Kind",
"type": "string"
},
"is_empty_leg": {
"const": false,
"default": false,
"title": "Is Empty Leg",
"type": "boolean"
},
"partner_offer": {
"const": true,
"default": true,
"title": "Partner Offer",
"type": "boolean"
},
"disclosure": {
"default": "Partner offer by Villiers; voidjet receives a commission if a booking results. Keep this marking when showing the offer.",
"title": "Disclosure",
"type": "string"
},
"partner": {
"title": "Partner",
"type": "string"
},
"notice": {
"default": "NOT AN EMPTY LEG. voidjet found no empty leg for this search. This is a regular private charter of the whole aircraft by voidjet partner Villiers, priced as a full charter and usually far above empty-leg prices. Say clearly to the user that this is not an empty leg before showing it. The ranges are indicative estimates from Villiers, not offers; for confirmed prices the user opens url and requests a quote on villiers.ai.",
"title": "Notice",
"type": "string"
},
"origin_code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Origin Code"
},
"destination_code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Destination Code"
},
"estimates": {
"default": [],
"description": "One-way charter price ranges by aircraft category; may be empty.",
"items": {
"$ref": "#/$defs/CharterEstimate"
},
"title": "Estimates",
"type": "array"
},
"url": {
"description": "Partner page with the trip pre-filled; the user requests confirmed prices there.",
"title": "Url",
"type": "string"
}
},
"required": [
"partner",
"url"
],
"title": "CharterAlternative",
"type": "object"
},
"CharterEstimate": {
"properties": {
"aircraft_category": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Aircraft Category"
},
"price_low": {
"title": "Price Low",
"type": "number"
},
"price_high": {
"title": "Price High",
"type": "number"
},
"currency": {
"title": "Currency",
"type": "string"
}
},
"required": [
"price_low",
"price_high",
"currency"
],
"title": "CharterEstimate",
"type": "object"
},
"Place": {
"properties": {
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "City name in English.",
"title": "City"
},
"country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "ISO 3166-1 alpha-2 country code.",
"title": "Country"
},
"airport_code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "IATA (or ICAO) code. Null when the source only named the city, so the exact airport is not known.",
"title": "Airport Code"
}
},
"title": "Place",
"type": "object"
},
"Price": {
"properties": {
"amount": {
"title": "Amount",
"type": "number"
},
"currency": {
"title": "Currency",
"type": "string"
},
"amount_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "Converted at ECB daily rates.",
"title": "Amount Eur"
},
"per_seat_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "amount_eur divided by seats.",
"title": "Per Seat Eur"
}
},
"required": [
"amount",
"currency"
],
"title": "Price",
"type": "object"
},
"PriceEstimate": {
"properties": {
"kind": {
"description": "offer_estimate: estimate for this offer; route_range: typical range on this route, not specific to this offer.",
"enum": [
"offer_estimate",
"route_range"
],
"title": "Kind",
"type": "string"
},
"amount": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Amount"
},
"low": {
"title": "Low",
"type": "number"
},
"high": {
"title": "High",
"type": "number"
},
"currency": {
"title": "Currency",
"type": "string"
}
},
"required": [
"kind",
"low",
"high",
"currency"
],
"title": "PriceEstimate",
"type": "object"
},
"ResolvedPlace": {
"properties": {
"query": {
"title": "Query",
"type": "string"
},
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "City"
},
"codes": {
"items": {
"type": "string"
},
"title": "Codes",
"type": "array"
}
},
"required": [
"query",
"codes"
],
"title": "ResolvedPlace",
"type": "object"
}
},
"title": "SearchResult"
}🟢get_empty_leg(ref, locale)
Current details of one offer by the ref returned by search_empty_legs. available=false means the offer is no longer listed.
Esquema de entrada
{
"type": "object",
"properties": {
"ref": {
"description": "ref exactly as returned by search_empty_legs.",
"maxLength": 64,
"title": "Ref",
"type": "string"
},
"locale": {
"default": "en",
"enum": [
"en",
"de"
],
"title": "Locale",
"type": "string"
}
},
"required": [
"ref"
],
"title": "get_empty_legArguments"
}Esquema de salida
{
"type": "object",
"properties": {
"flight": {
"$ref": "#/$defs/AgentFlight"
},
"data_as_of": {
"format": "date",
"title": "Data As Of",
"type": "string"
},
"notes": {
"default": [],
"items": {
"type": "string"
},
"title": "Notes",
"type": "array"
}
},
"required": [
"flight",
"data_as_of"
],
"$defs": {
"AgentFlight": {
"properties": {
"ref": {
"description": "Opaque permanent key of this offer. Use exactly as given.",
"title": "Ref",
"type": "string"
},
"url": {
"description": "Offer page on voidjet.io for the user.",
"title": "Url",
"type": "string"
},
"inquiry_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Offer page with the inquiry form opened and pre-filled. The user enters name and email and sends it. Null for partner offers.",
"title": "Inquiry Url"
},
"available": {
"description": "False if the offer is no longer listed today.",
"title": "Available",
"type": "boolean"
},
"origin": {
"$ref": "#/$defs/Place"
},
"destination": {
"$ref": "#/$defs/Place"
},
"departure_date": {
"description": "Earliest departure date (local).",
"format": "date",
"title": "Departure Date",
"type": "string"
},
"departure_date_latest": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Latest departure date if the provider offers a date window.",
"title": "Departure Date Latest"
},
"departure_time_local": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "HH:MM local time, if known.",
"title": "Departure Time Local"
},
"aircraft_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Aircraft Type"
},
"aircraft_class": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "One of: vlj, light, midsize, super_midsize, heavy, ultra, turboprop, airliner_vip.",
"title": "Aircraft Class"
},
"seats": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Passenger seats of the aircraft.",
"title": "Seats"
},
"price": {
"anyOf": [
{
"$ref": "#/$defs/Price"
},
{
"type": "null"
}
],
"default": null
},
"price_estimate": {
"anyOf": [
{
"$ref": "#/$defs/PriceEstimate"
},
{
"type": "null"
}
],
"default": null
},
"price_note": {
"title": "Price Note",
"type": "string"
},
"confirmed": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"description": "Whether the provider has confirmed the flight will operate. Null when unknown.",
"title": "Confirmed"
},
"probability": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Provider-stated probability (0-100) that the flight operates. Null when unknown.",
"title": "Probability"
},
"inquiry_possible": {
"description": "False for partner offers, which are requested on the partner site via the url.",
"title": "Inquiry Possible",
"type": "boolean"
},
"booking_via": {
"enum": [
"inquiry",
"partner_link"
],
"title": "Booking Via",
"type": "string"
}
},
"required": [
"ref",
"url",
"available",
"origin",
"destination",
"departure_date",
"price_note",
"inquiry_possible",
"booking_via"
],
"title": "AgentFlight",
"type": "object"
},
"Place": {
"properties": {
"city": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "City name in English.",
"title": "City"
},
"country": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "ISO 3166-1 alpha-2 country code.",
"title": "Country"
},
"airport_code": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "IATA (or ICAO) code. Null when the source only named the city, so the exact airport is not known.",
"title": "Airport Code"
}
},
"title": "Place",
"type": "object"
},
"Price": {
"properties": {
"amount": {
"title": "Amount",
"type": "number"
},
"currency": {
"title": "Currency",
"type": "string"
},
"amount_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "Converted at ECB daily rates.",
"title": "Amount Eur"
},
"per_seat_eur": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"description": "amount_eur divided by seats.",
"title": "Per Seat Eur"
}
},
"required": [
"amount",
"currency"
],
"title": "Price",
"type": "object"
},
"PriceEstimate": {
"properties": {
"kind": {
"description": "offer_estimate: estimate for this offer; route_range: typical range on this route, not specific to this offer.",
"enum": [
"offer_estimate",
"route_range"
],
"title": "Kind",
"type": "string"
},
"amount": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Amount"
},
"low": {
"title": "Low",
"type": "number"
},
"high": {
"title": "High",
"type": "number"
},
"currency": {
"title": "Currency",
"type": "string"
}
},
"required": [
"kind",
"low",
"high",
"currency"
],
"title": "PriceEstimate",
"type": "object"
}
},
"title": "FlightResult"
}⚪report_unmet_need(categories, origin, destination, date_from, date_to, ...)
Call only when the user has a legitimate need voidjet cannot serve, e.g. no offer on the route, a return flight, pets, instant booking. Choose 1-5 categories; optional route, dates, passengers, budget. Never include personal data. Helps voidjet decide what to add.
Esquema de entrada
{
"type": "object",
"properties": {
"categories": {
"items": {
"enum": [
"route_not_covered",
"date_not_covered",
"too_few_seats",
"price_above_budget",
"return_flight",
"multi_leg",
"one_way_charter_wanted",
"flexible_search_wanted",
"aircraft_type_or_class",
"cabin_amenities",
"helicopter_or_other_aircraft",
"pets",
"special_luggage",
"medical_or_accessibility",
"cargo",
"instant_booking_or_payment",
"binding_price_or_availability",
"notification_on_new_offers",
"contact_by_phone",
"provider_details",
"other_information",
"language_or_currency",
"other"
],
"type": "string"
},
"maxItems": 5,
"minItems": 1,
"title": "Categories",
"type": "array"
},
"origin": {
"anyOf": [
{
"maxLength": 64,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Origin"
},
"destination": {
"anyOf": [
{
"maxLength": 64,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Destination"
},
"date_from": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Date From"
},
"date_to": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Date To"
},
"passengers": {
"anyOf": [
{
"maximum": 500,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"title": "Passengers"
},
"max_budget_eur": {
"anyOf": [
{
"exclusiveMinimum": 0,
"maximum": 10000000,
"type": "number"
},
{
"type": "null"
}
],
"default": null,
"title": "Max Budget Eur"
},
"aircraft_class": {
"anyOf": [
{
"enum": [
"vlj",
"light",
"midsize",
"super_midsize",
"heavy",
"ultra",
"turboprop",
"airliner_vip"
],
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Aircraft Class"
}
},
"required": [
"categories"
],
"title": "report_unmet_needArguments"
}Esquema de salida
{
"type": "object",
"properties": {
"recorded": {
"title": "Recorded",
"type": "boolean"
},
"message": {
"title": "Message",
"type": "string"
}
},
"required": [
"recorded",
"message"
],
"title": "FeedbackResult"
}Comunidad
Evidencia