What this MCP does
Provides data and guidance for the Jetopolis airline strategy game, including worlds, standings, aircraft, historical airlines and aircraft prices.
Tools
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'lang': {'type': 'string', 'maxLength': 10, 'description': 'Language for the human-readable labels next to keys, one of the 25 game locales (en, ru, de, fr, es, ja, zh-CN and others); unknown values fall back to English'}, 'year': {'type': 'integer', 'maximum': 2030, 'minimum': 1950, 'description': 'Only aircraft already in service in this year; also fills availabilityInYear'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 150, 'minimum': 1}, 'query': {'type': 'string', 'maxLength': 40, 'minLength': 1, 'description': 'Substring of the model name or id, case-insensitive (A320, 747, dc-3)'}, 'category': {'enum': ['PISTON', 'TURBOPROP', 'NARROWBODY', 'WIDEBODY', 'JUMBO', 'SST', 'REGIONAL_JET'], 'type': 'string'}, 'manufacturer': {'type': 'string', 'maxLength': 40, 'minLength': 1, 'description': 'Substring, case-insensitive'}}}
Output schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['total', 'aircraft'], 'properties': {'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'aircraft': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'manufacturer', 'model', 'category', 'categoryName', 'family', 'eisYear', 'eisPlanned', 'eopYear', 'seats', 'rangeKm', 'cruiseKmh', 'runwayRequiredM', 'listPriceUsdMlnAtEis', 'priceEstimated', 'availabilityInYear'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'model': {'type': 'string'}, 'seats': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'family': {'type': 'string'}, 'eisYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'eopYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'rangeKm': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'category': {'enum': ['PISTON', 'TURBOPROP', 'NARROWBODY', 'WIDEBODY', 'JUMBO', 'SST', 'REGIONAL_JET'], 'type': 'string'}, 'cruiseKmh': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'eisPlanned': {'type': 'boolean'}, 'categoryName': {'type': 'string'}, 'manufacturer': {'type': 'string'}, 'priceEstimated': {'type': 'boolean'}, 'runwayRequiredM': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'availabilityInYear': {'anyOf': [{'enum': ['new', 'used-only'], 'type': 'string'}, {'type': 'null'}]}, 'listPriceUsdMlnAtEis': {'type': 'number'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['model', 'year'], 'properties': {'year': {'type': 'integer', 'maximum': 2030, 'minimum': 1950, 'description': 'Game year to price the aircraft in'}, 'model': {'type': 'string', 'maxLength': 40, 'minLength': 1, 'description': 'Aircraft id from aircraft_catalog (a320-200) or part of its name (A320, 747-400)'}}}
Output schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['year', 'match', 'candidates', 'note'], 'properties': {'note': {'type': 'string'}, 'year': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'match': {'anyOf': [{'type': 'object', 'required': ['id', 'name', 'eisYear', 'eopYear', 'eisPlanned', 'listPriceUsdMlnAtEis', 'priceUsdMlnNominal', 'priceUsdMln2024', 'priceEstimated', 'availability'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'eisYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'eopYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'eisPlanned': {'type': 'boolean'}, 'availability': {'enum': ['not-yet', 'new', 'used-only'], 'type': 'string'}, 'priceEstimated': {'type': 'boolean'}, 'priceUsdMln2024': {'type': 'number'}, 'priceUsdMlnNominal': {'type': ['number', 'null']}, 'listPriceUsdMlnAtEis': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'candidates': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'eisYear', 'eopYear'], 'properties': {'id': {'type': 'string'}, 'name': {'type': 'string'}, 'eisYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'eopYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['worldId'], 'properties': {'lang': {'type': 'string', 'maxLength': 10, 'description': 'Language for the human-readable labels next to keys, one of the 25 game locales (en, ru, de, fr, es, ja, zh-CN and others); unknown values fall back to English'}, 'worldId': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'World id from list_worlds'}}}
Output schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['id', 'name', 'type', 'typeName', 'region', 'startYear', 'endYear', 'tickMinutes', 'gameDate', 'year', 'era', 'eraName', 'status', 'players', 'maxPlayers', 'active24h', 'url', 'finishedAt'], 'properties': {'id': {'type': 'string'}, 'era': {'type': 'string'}, 'url': {'type': 'string'}, 'name': {'type': 'string'}, 'type': {'enum': ['BLITZ', 'STANDARD', 'ENDLESS', 'PRIVATE'], 'type': 'string'}, 'year': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'region': {'enum': ['wnam', 'enam', 'weur', 'eeur', 'apac-ne', 'apac-se', 'oc'], 'type': 'string'}, 'status': {'type': 'string'}, 'endYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'eraName': {'type': 'string'}, 'players': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'gameDate': {'type': 'string'}, 'typeName': {'type': 'string'}, 'active24h': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'startYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'finishedAt': {'type': ['string', 'null']}, 'maxPlayers': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'tickMinutes': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['year'], 'properties': {'kind': {'enum': ['flag', 'major', 'regional', 'lowcost', 'charter'], 'type': 'string', 'description': 'flag carrier, major, regional, low-cost or charter'}, 'year': {'type': 'integer', 'maximum': 2030, 'minimum': 1950, 'description': 'Calendar year, 1950-2030'}, 'limit': {'type': 'integer', 'default': 50, 'maximum': 100, 'minimum': 1, 'description': 'At most this many airlines'}, 'region': {'enum': ['wnam', 'enam', 'weur', 'eeur', 'apac-ne', 'apac-se', 'oc'], 'type': 'string', 'description': 'Game region of the airline base'}, 'country': {'type': 'string', 'pattern': '^[A-Za-z]{2}$', 'description': 'Home country of the airline, ISO 3166-1 alpha-2 (GB, US, FR)'}}}
Output schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['year', 'total', 'airlines'], 'properties': {'year': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'airlines': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'code', 'country', 'region', 'kind', 'since', 'until', 'servedCountries', 'confidence', 'networkKnown'], 'properties': {'id': {'type': 'string'}, 'code': {'type': ['string', 'null']}, 'kind': {'enum': ['flag', 'major', 'regional', 'lowcost', 'charter'], 'type': 'string'}, 'name': {'type': 'string'}, 'since': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'until': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'region': {'enum': ['wnam', 'enam', 'weur', 'eeur', 'apac-ne', 'apac-se', 'oc'], 'type': 'string'}, 'country': {'type': 'string'}, 'confidence': {'anyOf': [{'enum': ['high', 'medium', 'low'], 'type': 'string'}, {'type': 'null'}]}, 'networkKnown': {'type': 'boolean'}, 'servedCountries': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'lang': {'enum': ['en', 'ru'], 'type': 'string', 'default': 'en'}}}
Output schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['lang', 'title', 'pitch', 'steps', 'links', 'facts'], 'properties': {'lang': {'enum': ['en', 'ru'], 'type': 'string'}, 'facts': {'type': 'object', 'required': ['worldPace', 'guest'], 'properties': {'guest': {'type': 'string'}, 'worldPace': {'type': 'string'}}, 'additionalProperties': False}, 'links': {'type': 'object', 'required': ['play', 'lobby', 'guides'], 'properties': {'play': {'type': 'string'}, 'lobby': {'type': 'string'}, 'guides': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'url'], 'properties': {'url': {'type': 'string'}, 'title': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}, 'pitch': {'type': 'string'}, 'steps': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'properties': {'lang': {'type': 'string', 'maxLength': 10, 'description': 'Language for the human-readable labels next to keys, one of the 25 game locales (en, ru, de, fr, es, ja, zh-CN and others); unknown values fall back to English'}, 'type': {'enum': ['BLITZ', 'STANDARD', 'ENDLESS', 'PRIVATE'], 'type': 'string', 'description': 'STANDARD: 1 game day = 20 min, BLITZ: 5 min'}, 'region': {'enum': ['wnam', 'enam', 'weur', 'eeur', 'apac-ne', 'apac-se', 'oc'], 'type': 'string', 'description': 'Server region of the world'}, 'status': {'enum': ['RUNNING', 'FINALE', 'FINISHED'], 'type': 'string'}}}
Output schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['asOf', 'worlds'], 'properties': {'asOf': {'type': 'string'}, 'worlds': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'type', 'typeName', 'region', 'startYear', 'endYear', 'tickMinutes', 'gameDate', 'year', 'era', 'eraName', 'status', 'players', 'maxPlayers', 'active24h', 'url'], 'properties': {'id': {'type': 'string'}, 'era': {'type': 'string'}, 'url': {'type': 'string'}, 'name': {'type': 'string'}, 'type': {'enum': ['BLITZ', 'STANDARD', 'ENDLESS', 'PRIVATE'], 'type': 'string'}, 'year': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'region': {'enum': ['wnam', 'enam', 'weur', 'eeur', 'apac-ne', 'apac-se', 'oc'], 'type': 'string'}, 'status': {'type': 'string'}, 'endYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'eraName': {'type': 'string'}, 'players': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'gameDate': {'type': 'string'}, 'typeName': {'type': 'string'}, 'active24h': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'startYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'maxPlayers': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'tickMinutes': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Input schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['worldId'], 'properties': {'lang': {'type': 'string', 'maxLength': 10, 'description': 'Language for the human-readable labels next to keys, one of the 25 game locales (en, ru, de, fr, es, ja, zh-CN and others); unknown values fall back to English'}, 'limit': {'type': 'integer', 'default': 20, 'maximum': 50, 'minimum': 1}, 'worldId': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'World id from list_worlds'}}}
Output schema
{'type': 'object', '$schema': 'https://json-schema.org/draft/2020-12/schema', 'required': ['world', 'gameDate', 'asOf', 'standings'], 'properties': {'asOf': {'type': 'string'}, 'world': {'type': 'object', 'required': ['id', 'name', 'type', 'typeName', 'region', 'startYear', 'endYear', 'tickMinutes', 'gameDate', 'year', 'era', 'eraName', 'status', 'players', 'maxPlayers', 'active24h', 'url', 'finishedAt'], 'properties': {'id': {'type': 'string'}, 'era': {'type': 'string'}, 'url': {'type': 'string'}, 'name': {'type': 'string'}, 'type': {'enum': ['BLITZ', 'STANDARD', 'ENDLESS', 'PRIVATE'], 'type': 'string'}, 'year': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'region': {'enum': ['wnam', 'enam', 'weur', 'eeur', 'apac-ne', 'apac-se', 'oc'], 'type': 'string'}, 'status': {'type': 'string'}, 'endYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'eraName': {'type': 'string'}, 'players': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'gameDate': {'type': 'string'}, 'typeName': {'type': 'string'}, 'active24h': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'startYear': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'finishedAt': {'type': ['string', 'null']}, 'maxPlayers': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'tickMinutes': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}, 'gameDate': {'type': 'string'}, 'standings': {'type': 'array', 'items': {'type': 'object', 'required': ['rank', 'name', 'code', 'hqIata', 'hqName', 'rating', 'fleet', 'routes', 'foundedOn', 'status', 'cardUrl'], 'properties': {'code': {'type': 'string'}, 'name': {'type': 'string'}, 'rank': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'fleet': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'hqIata': {'type': 'string'}, 'hqName': {'type': 'string'}, 'rating': {'type': 'number'}, 'routes': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'status': {'type': 'string'}, 'cardUrl': {'type': 'string'}, 'foundedOn': {'type': 'string'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Recent tool changes
Similar MCP servers
GripForge
Generates, rigs, animates, analyzes, and packages game characters, weapons, armor, effects, environments, and engine-ready assets.
apex-x1
Provides X1 and Arc token screening, liquidity and exit-risk checks, wallet and bridge data, non-custodial token operations, comm…
spriteship
Generates and manages 2D game characters, assets, animations, tilesets, UI packs, maps, and engine-ready exports for multiple gam…
Moddable Games Tools
Provides chess analysis and puzzles, board and hex-map generation, dice and probability utilities, card decks, scoring, and other…
NOT FOR HUMANS
Provides NFT ownership and marketplace status, wallet-based agent identity and claims, public agent learning records, and multipl…
argo-mcp
Manages tabletop RPG campaigns, sessions, guilds, player relationships, forums and structured campaign lore.
Clash Royale
Provides Clash Royale player, clan, war, card, ranking, and location data, along with broader structured research and data-routin…
Steam
Provides Steam data for apps, games, profiles, friends, ownership, achievements, player statistics, news, concurrent players, and…