Serveur MCP

catalog

net.fsaircraft/catalog
Commerce et retail Gaming Public et accessible MCP 2025-11-25

Ce que fait ce MCP

Searches and compares prices, deals, availability, and historical pricing for Microsoft Flight Simulator add-ons.

compare_prices
Compare prices across stores
Every store offer for one add-on, in-stock offers with known net prices first, ordered by net EUR price. Includes the listed price, tax status, known net price, EUR conversion, stock, sale expiry and an outbound link.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slug'], 'properties': {'slug': {'type': 'string'}}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['as_of', 'slug', 'title', 'url', 'count', 'offers'], 'properties': {'url': {'type': ['string', 'null']}, 'slug': {'type': 'string'}, 'as_of': {'type': ['string', 'null']}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'title': {'type': ['string', 'null']}, 'offers': {'type': 'array', 'items': {'type': 'object', 'required': ['store', 'store_slug', 'price_cents', 'currency', 'price_eur_cents', 'net_price_cents', 'net_price_eur_cents', 'vat_percent', 'tax_status', 'in_stock', 'discount_pct', 'was_price_cents', 'sale_ends_at', 'price_low_30d_cents', 'last_seen_at', 'store_url', 'deep_link'], 'properties': {'store': {'type': 'string'}, 'currency': {'type': 'string'}, 'in_stock': {'type': 'boolean'}, 'deep_link': {'type': 'string'}, 'store_url': {'type': 'string'}, 'store_slug': {'type': 'string'}, 'tax_status': {'enum': ['included', 'excluded', 'unknown'], 'type': 'string'}, 'price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'vat_percent': {'type': ['number', 'null']}, 'discount_pct': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'last_seen_at': {'type': 'string'}, 'sale_ends_at': {'type': ['string', 'null']}, 'net_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'was_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'net_price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'VAT-excluded and EUR-converted: the only figure that compares across stores'}, 'price_low_30d_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}}, 'additionalProperties': False}}}, 'additionalProperties': False}
fetch
Fetch (OpenAI connector alias)
Retrieve one add-on as a document, by the `id` returned from `search` (the add-on slug). Returns the full description plus every current store price.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id'], 'properties': {'id': {'type': 'string'}}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['id', 'title', 'text', 'url', 'metadata'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'text': {'type': 'string'}, 'title': {'type': 'string'}, 'metadata': {'type': 'object', 'propertyNames': {'type': 'string'}, 'additionalProperties': {'type': 'string'}}}, 'additionalProperties': False}
find_aircraft_type
Find an aircraft type
Resolve a plain-language aircraft name ("737 MAX", "Cessna 172", "A320neo") to its ICAO Doc 8643 designator, with how many add-ons we carry for it. Feed the designator to list_addons_for_aircraft.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['q'], 'properties': {'q': {'type': 'string', 'maxLength': 60, 'minLength': 2, 'description': 'Designator, model, family or manufacturer'}, 'limit': {'type': 'integer', 'default': 10, 'maximum': 50, 'minimum': 1}}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['as_of', 'count', 'types'], 'properties': {'as_of': {'type': ['string', 'null']}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'types': {'type': 'array', 'items': {'type': 'object', 'required': ['icao_designator', 'manufacturer', 'model', 'family', 'category', 'addon_count', 'url'], 'properties': {'url': {'type': 'string'}, 'model': {'type': 'string'}, 'family': {'type': ['string', 'null']}, 'category': {'type': 'string'}, 'addon_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'manufacturer': {'type': 'string'}, 'icao_designator': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
get_addon
Get one add-on
Everything the catalog holds on a single add-on: description, developer, declared simulator compatibility, rating, every store offer with its VAT split and sale expiry, the lowest price ever recorded, and the real-world aircraft types and airports it implements.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': 'Add-on slug, as it appears in https://fsaircraft.net/addons/{slug}'}}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['as_of', 'found', 'addon'], 'properties': {'addon': {'anyOf': [{'type': 'object', 'required': ['slug', 'title', 'developer', 'category', 'sims', 'price_cents', 'currency', 'price_eur_cents', 'net_price_cents', 'net_price_eur_cents', 'tax_status', 'store', 'discount_pct', 'was_price_cents', 'sale_ends_at', 'offer_count', 'rating', 'url', 'description', 'summary', 'version', 'released_at', 'rating_count', 'first_seen_at', 'image_url', 'aircraft_types', 'airports', 'offers', 'price_low_all_time_cents', 'is_lowest_ever', 'also_listed_as'], 'properties': {'url': {'type': 'string'}, 'sims': {'type': 'array', 'items': {'type': 'string'}}, 'slug': {'type': 'string'}, 'store': {'type': ['string', 'null']}, 'title': {'type': 'string'}, 'offers': {'type': 'array', 'items': {'type': 'object', 'required': ['store', 'store_slug', 'price_cents', 'currency', 'price_eur_cents', 'net_price_cents', 'net_price_eur_cents', 'vat_percent', 'tax_status', 'in_stock', 'discount_pct', 'was_price_cents', 'sale_ends_at', 'price_low_30d_cents', 'last_seen_at', 'store_url', 'deep_link'], 'properties': {'store': {'type': 'string'}, 'currency': {'type': 'string'}, 'in_stock': {'type': 'boolean'}, 'deep_link': {'type': 'string'}, 'store_url': {'type': 'string'}, 'store_slug': {'type': 'string'}, 'tax_status': {'enum': ['included', 'excluded', 'unknown'], 'type': 'string'}, 'price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'vat_percent': {'type': ['number', 'null']}, 'discount_pct': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'last_seen_at': {'type': 'string'}, 'sale_ends_at': {'type': ['string', 'null']}, 'net_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'was_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'net_price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'VAT-excluded and EUR-converted: the only figure that compares across stores'}, 'price_low_30d_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}}, 'additionalProperties': False}}, 'rating': {'type': ['number', 'null']}, 'summary': {'type': ['string', 'null']}, 'version': {'type': ['string', 'null']}, 'airports': {'type': 'array', 'items': {'type': 'object', 'required': ['icao', 'name', 'country'], 'properties': {'icao': {'type': 'string'}, 'name': {'type': 'string'}, 'country': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'category': {'type': ['string', 'null']}, 'currency': {'type': ['string', 'null']}, 'developer': {'type': ['string', 'null']}, 'image_url': {'type': ['string', 'null']}, 'tax_status': {'enum': ['included', 'excluded', 'unknown'], 'type': 'string'}, 'description': {'type': ['string', 'null']}, 'offer_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Cheapest live offer, minor units of `currency`'}, 'released_at': {'type': ['string', 'null']}, 'discount_pct': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'rating_count': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'sale_ends_at': {'type': ['string', 'null']}, 'first_seen_at': {'type': 'string'}, 'aircraft_types': {'type': 'array', 'items': {'type': 'object', 'required': ['icao_designator', 'manufacturer', 'model'], 'properties': {'model': {'type': 'string'}, 'manufacturer': {'type': 'string'}, 'icao_designator': {'type': 'string'}}, 'additionalProperties': False}}, 'also_listed_as': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Other slugs merged into this add-on by cross-store dedupe'}, 'is_lowest_ever': {'type': 'boolean'}, 'net_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'VAT-excluded, where the store VAT rate is known'}, 'price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Same price converted to EUR at ECB rates'}, 'was_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'net_price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'price_low_all_time_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}}, 'additionalProperties': False}, {'type': 'null'}]}, 'as_of': {'type': ['string', 'null']}, 'found': {'type': 'boolean'}}, 'additionalProperties': False}
list_addons_for_aircraft
Add-ons for an aircraft type
Every add-on implementing one real-world aircraft type, across all studios, cheapest first. The type link is our own classification (from the title and the store metadata), not the store's.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['icao_designator'], 'properties': {'sim': {'enum': ['msfs2020', 'msfs2024'], 'type': 'string'}, 'limit': {'type': 'integer', 'default': 25, 'maximum': 50, 'minimum': 1}, 'icao_designator': {'type': 'string', 'maxLength': 4, 'minLength': 2, 'description': "ICAO Doc 8643 designator, e.g. 'B738', 'A20N', 'C172'"}}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['as_of', 'icao_designator', 'type', 'count', 'results'], 'properties': {'type': {'anyOf': [{'type': 'object', 'required': ['icao_designator', 'manufacturer', 'model', 'family', 'category', 'addon_count', 'url'], 'properties': {'url': {'type': 'string'}, 'model': {'type': 'string'}, 'family': {'type': ['string', 'null']}, 'category': {'type': 'string'}, 'addon_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'manufacturer': {'type': 'string'}, 'icao_designator': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'as_of': {'type': ['string', 'null']}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'results': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'title', 'developer', 'category', 'sims', 'price_cents', 'currency', 'price_eur_cents', 'net_price_cents', 'net_price_eur_cents', 'tax_status', 'store', 'discount_pct', 'was_price_cents', 'sale_ends_at', 'offer_count', 'rating', 'url'], 'properties': {'url': {'type': 'string'}, 'sims': {'type': 'array', 'items': {'type': 'string'}}, 'slug': {'type': 'string'}, 'store': {'type': ['string', 'null']}, 'title': {'type': 'string'}, 'rating': {'type': ['number', 'null']}, 'category': {'type': ['string', 'null']}, 'currency': {'type': ['string', 'null']}, 'developer': {'type': ['string', 'null']}, 'tax_status': {'enum': ['included', 'excluded', 'unknown'], 'type': 'string'}, 'offer_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Cheapest live offer, minor units of `currency`'}, 'discount_pct': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'sale_ends_at': {'type': ['string', 'null']}, 'net_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'VAT-excluded, where the store VAT rate is known'}, 'price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Same price converted to EUR at ECB rates'}, 'was_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'net_price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}}, 'additionalProperties': False}}, 'icao_designator': {'type': 'string'}}, 'additionalProperties': False}
list_deals
Current deals
Add-ons discounted right now, deepest discount first. A discount here means the current price is below the highest price we have ever recorded for that same offer at that same store — never a store-printed list price, so permanent markdowns do not appear.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'sim': {'enum': ['msfs2020', 'msfs2024'], 'type': 'string'}, 'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1}, 'category': {'type': 'string'}, 'ending_within_days': {'type': 'integer', 'maximum': 60, 'minimum': 1, 'description': 'Only sales with a published end date inside N days'}}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['as_of', 'count', 'results'], 'properties': {'as_of': {'type': ['string', 'null']}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'results': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'title', 'developer', 'category', 'sims', 'price_cents', 'currency', 'price_eur_cents', 'net_price_cents', 'net_price_eur_cents', 'tax_status', 'store', 'discount_pct', 'was_price_cents', 'sale_ends_at', 'offer_count', 'rating', 'url'], 'properties': {'url': {'type': 'string'}, 'sims': {'type': 'array', 'items': {'type': 'string'}}, 'slug': {'type': 'string'}, 'store': {'type': ['string', 'null']}, 'title': {'type': 'string'}, 'rating': {'type': ['number', 'null']}, 'category': {'type': ['string', 'null']}, 'currency': {'type': ['string', 'null']}, 'developer': {'type': ['string', 'null']}, 'tax_status': {'enum': ['included', 'excluded', 'unknown'], 'type': 'string'}, 'offer_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Cheapest live offer, minor units of `currency`'}, 'discount_pct': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'sale_ends_at': {'type': ['string', 'null']}, 'net_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'VAT-excluded, where the store VAT rate is known'}, 'price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Same price converted to EUR at ECB rates'}, 'was_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'net_price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}}, 'additionalProperties': False}}}, 'additionalProperties': False}
list_developers
List developers
Add-on studios in the catalog, busiest first, optionally filtered by name.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'q': {'type': 'string', 'maxLength': 80, 'description': 'Substring of the developer name'}, 'limit': {'type': 'integer', 'default': 25, 'maximum': 50, 'minimum': 1}}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['as_of', 'count', 'developers'], 'properties': {'as_of': {'type': ['string', 'null']}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'developers': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'website', 'product_count', 'url'], 'properties': {'url': {'type': 'string'}, 'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'website': {'type': ['string', 'null']}, 'product_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}}}, 'additionalProperties': False}
list_sceneries_for_airport
Scenery for an airport
Every add-on scenery we carry for one airport, by ICAO (or IATA) code, cheapest first.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['icao'], 'properties': {'sim': {'enum': ['msfs2020', 'msfs2024'], 'type': 'string'}, 'icao': {'type': 'string', 'maxLength': 4, 'minLength': 3, 'description': "ICAO code, e.g. 'EGLL', 'KJFK'. IATA also accepted."}, 'limit': {'type': 'integer', 'default': 25, 'maximum': 50, 'minimum': 1}}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['as_of', 'icao', 'airport', 'count', 'results'], 'properties': {'icao': {'type': 'string'}, 'as_of': {'type': ['string', 'null']}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'airport': {'anyOf': [{'type': 'object', 'required': ['icao', 'iata', 'name', 'city', 'country', 'url'], 'properties': {'url': {'type': 'string'}, 'city': {'type': ['string', 'null']}, 'iata': {'type': ['string', 'null']}, 'icao': {'type': 'string'}, 'name': {'type': 'string'}, 'country': {'type': ['string', 'null']}}, 'additionalProperties': False}, {'type': 'null'}]}, 'results': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'title', 'developer', 'category', 'sims', 'price_cents', 'currency', 'price_eur_cents', 'net_price_cents', 'net_price_eur_cents', 'tax_status', 'store', 'discount_pct', 'was_price_cents', 'sale_ends_at', 'offer_count', 'rating', 'url'], 'properties': {'url': {'type': 'string'}, 'sims': {'type': 'array', 'items': {'type': 'string'}}, 'slug': {'type': 'string'}, 'store': {'type': ['string', 'null']}, 'title': {'type': 'string'}, 'rating': {'type': ['number', 'null']}, 'category': {'type': ['string', 'null']}, 'currency': {'type': ['string', 'null']}, 'developer': {'type': ['string', 'null']}, 'tax_status': {'enum': ['included', 'excluded', 'unknown'], 'type': 'string'}, 'offer_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Cheapest live offer, minor units of `currency`'}, 'discount_pct': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'sale_ends_at': {'type': ['string', 'null']}, 'net_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'VAT-excluded, where the store VAT rate is known'}, 'price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Same price converted to EUR at ECB rates'}, 'was_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'net_price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}}, 'additionalProperties': False}}}, 'additionalProperties': False}
list_stores
List tracked stores
Every storefront in the catalog, with how many add-ons we track there, how many are discounted right now, and whether its prices include VAT. Use it to answer "which stores do you actually cover" and to get the `store` slug vocabulary for search_addons.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['as_of', 'count', 'stores'], 'properties': {'as_of': {'type': ['string', 'null']}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'stores': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'name', 'base_url', 'product_count', 'offer_count', 'on_sale_count', 'prices_include_vat'], 'properties': {'name': {'type': 'string'}, 'slug': {'type': 'string'}, 'base_url': {'type': 'string'}, 'offer_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'on_sale_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'product_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'prices_include_vat': {'type': ['boolean', 'null']}}, 'additionalProperties': False}}}, 'additionalProperties': False}
price_history
Price history
Daily lowest known VAT-excluded price in EUR, using current exchange rates, plus min/max/current and whether it is at its lowest ever. Answers "has this ever been cheaper than X?".
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['slug'], 'properties': {'days': {'type': 'integer', 'default': 180, 'maximum': 365, 'minimum': 1}, 'slug': {'type': 'string'}}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['as_of', 'slug', 'days', 'price_basis', 'points', 'min_eur_cents', 'max_eur_cents', 'current_eur_cents', 'is_lowest_ever', 'url'], 'properties': {'url': {'type': ['string', 'null']}, 'days': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'slug': {'type': 'string'}, 'as_of': {'type': ['string', 'null']}, 'points': {'type': 'array', 'items': {'type': 'object', 'required': ['date', 'price_cents', 'currency', 'price_eur_cents'], 'properties': {'date': {'type': 'string'}, 'currency': {'type': 'string'}, 'price_cents': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}}, 'additionalProperties': False}}, 'price_basis': {'type': 'string', 'const': 'net'}, 'max_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'min_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'is_lowest_ever': {'type': 'boolean'}, 'current_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}}, 'additionalProperties': False}
search
Search (OpenAI connector alias)
Search the fsaircraft.net MSFS add-on catalog and return documents in the shape ChatGPT deep-research and company-knowledge connectors expect. `id` is the add-on slug; pass it to `fetch`. Prefer search_addons when filters or prices matter.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'query': {'type': 'string', 'maxLength': 200}}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['results'], 'properties': {'results': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'text', 'url'], 'properties': {'id': {'type': 'string'}, 'url': {'type': 'string'}, 'text': {'type': 'string'}, 'title': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
search_addons
Search MSFS add-ons
Search the fsaircraft.net catalog of payware Microsoft Flight Simulator add-ons (aircraft, scenery, liveries, utilities) across every tracked store. Returns the cheapest live offer for each add-on with its discount and MSFS 2020/2024 compatibility as declared by the selling store.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'q': {'type': 'string', 'maxLength': 120, 'description': 'Free text: title, developer, ICAO code or aircraft type'}, 'sim': {'enum': ['msfs2020', 'msfs2024'], 'type': 'string', 'description': 'Only add-ons declared compatible with this simulator'}, 'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1}, 'store': {'type': 'string', 'description': "Store slug, e.g. 'simmarket' — see list_stores"}, 'on_sale': {'type': 'boolean', 'description': 'Only add-ons currently below their recorded high'}, 'category': {'type': 'string', 'description': "Category slug, e.g. 'aircraft', 'scenery', 'livery', 'utility'"}, 'max_price_eur': {'type': 'number', 'maximum': 10000, 'description': 'Inclusive ceiling on the known VAT-excluded price, in euros', 'exclusiveMinimum': 0}}}
Schéma de sortie
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['as_of', 'count', 'results'], 'properties': {'as_of': {'type': ['string', 'null']}, 'count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'results': {'type': 'array', 'items': {'type': 'object', 'required': ['slug', 'title', 'developer', 'category', 'sims', 'price_cents', 'currency', 'price_eur_cents', 'net_price_cents', 'net_price_eur_cents', 'tax_status', 'store', 'discount_pct', 'was_price_cents', 'sale_ends_at', 'offer_count', 'rating', 'url'], 'properties': {'url': {'type': 'string'}, 'sims': {'type': 'array', 'items': {'type': 'string'}}, 'slug': {'type': 'string'}, 'store': {'type': ['string', 'null']}, 'title': {'type': 'string'}, 'rating': {'type': ['number', 'null']}, 'category': {'type': ['string', 'null']}, 'currency': {'type': ['string', 'null']}, 'developer': {'type': ['string', 'null']}, 'tax_status': {'enum': ['included', 'excluded', 'unknown'], 'type': 'string'}, 'offer_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Cheapest live offer, minor units of `currency`'}, 'discount_pct': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'sale_ends_at': {'type': ['string', 'null']}, 'net_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'VAT-excluded, where the store VAT rate is known'}, 'price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}], 'description': 'Same price converted to EUR at ECB rates'}, 'was_price_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'net_price_eur_cents': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Modifié
list_sceneries_for_airport
25 September 2026 02:49
Modifié
list_addons_for_aircraft
25 September 2026 02:49
Modifié
price_history
25 September 2026 02:49
Modifié
compare_prices
25 September 2026 02:49
Modifié
list_deals
25 September 2026 02:49
Modifié
get_addon
25 September 2026 02:49
Modifié
search_addons
25 September 2026 02:49
Ajouté
fetch
23 September 2026 02:40
Ajouté
search
23 September 2026 02:40
Ajouté
list_sceneries_for_airport
23 September 2026 02:40
Ajouté
list_addons_for_aircraft
23 September 2026 02:40
Ajouté
find_aircraft_type
23 September 2026 02:40
Ajouté
list_developers
23 September 2026 02:40
Ajouté
list_stores
23 September 2026 02:40
Ajouté
price_history
23 September 2026 02:40
Ajouté
compare_prices
23 September 2026 02:40
Ajouté
list_deals
23 September 2026 02:40
Ajouté
get_addon
23 September 2026 02:40
Ajouté
search_addons
23 September 2026 02:40