Lviv Public Transport
이 MCP로 할 수 있는 일
Provides Lviv public-transit stop searches, routes, schedules, live arrivals, vehicle positions, and nearby-vehicle information.
도구
입력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['from_stop_id', 'to_stop_id'], 'properties': {'to_stop_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Stop ID where the trip ends.', 'exclusiveMinimum': 0}, 'from_stop_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Stop ID where the trip starts.', 'exclusiveMinimum': 0}}}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['view', 'data', 'ui_blocks'], 'properties': {'data': {'type': 'object', 'required': ['from', 'to', 'options', 'updated_at'], 'properties': {'to': {'type': 'object', 'required': ['id', 'name', 'stop_ids'], 'properties': {'id': {'type': 'string'}, 'name': {'type': ['string', 'null']}, 'stop_ids': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'from': {'type': 'object', 'required': ['id', 'name', 'stop_ids'], 'properties': {'id': {'type': 'string'}, 'name': {'type': ['string', 'null']}, 'stop_ids': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'options': {'type': 'array', 'items': {'type': 'object', 'required': ['route', 'vehicle_type', 'direction', 'destination', 'board_stop', 'alight_stop', 'stops_count', 'walk_to_board_meters', 'walk_from_alight_meters'], 'properties': {'route': {'type': 'string'}, 'direction': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'board_stop': {'type': 'object', 'required': ['id', 'name', 'lat', 'lng'], 'properties': {'id': {'type': 'string'}, 'lat': {'type': ['number', 'null']}, 'lng': {'type': ['number', 'null']}, 'name': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'alight_stop': {'type': 'object', 'required': ['id', 'name', 'lat', 'lng'], 'properties': {'id': {'type': 'string'}, 'lat': {'type': ['number', 'null']}, 'lng': {'type': ['number', 'null']}, 'name': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'destination': {'type': ['string', 'null']}, 'stops_count': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'vehicle_type': {'type': 'string'}, 'walk_to_board_meters': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'walk_from_alight_meters': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}}, 'additionalProperties': False}}, 'updated_at': {'type': 'string'}}, 'additionalProperties': False}, 'view': {'type': 'string', 'const': 'transit_realtime'}, 'ui_blocks': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'data'], 'properties': {'data': {'type': 'object', 'required': ['center', 'zoom', 'layers'], 'properties': {'zoom': {'type': 'number'}, 'center': {'type': 'array', 'items': [{'type': ['number', 'null']}, {'type': ['number', 'null']}], 'maxItems': 2, 'minItems': 2, 'additionalItems': False}, 'layers': {'type': 'object', 'properties': {'stops': {'type': 'string'}, 'vehicles': {'type': 'string'}, 'polylines': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'type': {'type': 'string', 'const': 'map'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['latitude', 'longitude'], 'properties': {'limit': {'type': 'integer', 'maximum': 50, 'minimum': 1, 'description': 'Maximum vehicles to return, nearest first (1â\x80\x9350, default 15). `total` reports how many were in range.'}, 'route': {'type': 'string', 'minLength': 1, 'description': 'Only vehicles on this route, by short name (e.g. "Т30", "Ð\x901"). Omit for all routes.'}, 'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90, 'description': 'Decimal latitude of the centre point, WGS84 (e.g. 49.842 for central Lviv).'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180, 'description': 'Decimal longitude of the centre point, WGS84 (e.g. 24.031 for central Lviv).'}, 'radius_meters': {'type': 'integer', 'maximum': 1000, 'minimum': 100, 'description': 'Search radius in metres (100â\x80\x931000, default 500).'}}}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['view', 'data', 'ui_blocks'], 'properties': {'data': {'type': 'object', 'required': ['center_lat', 'center_lng', 'radius_meters', 'total', 'vehicles', 'updated_at'], 'properties': {'total': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, 'vehicles': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'route', 'vehicle_type', 'direction', 'destination', 'lat', 'lng', 'bearing', 'lowfloor', 'distance_meters'], 'properties': {'id': {'type': ['string', 'null']}, 'lat': {'type': ['number', 'null']}, 'lng': {'type': ['number', 'null']}, 'route': {'type': ['string', 'null']}, 'bearing': {'type': ['number', 'null']}, 'lowfloor': {'type': ['boolean', 'null']}, 'direction': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'destination': {'type': ['string', 'null']}, 'vehicle_type': {'type': ['string', 'null']}, 'distance_meters': {'type': ['number', 'null']}}, 'additionalProperties': False}}, 'center_lat': {'type': ['number', 'null']}, 'center_lng': {'type': ['number', 'null']}, 'updated_at': {'type': 'string'}, 'radius_meters': {'type': 'number'}}, 'additionalProperties': False}, 'view': {'type': 'string', 'const': 'transit_realtime'}, 'ui_blocks': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'data'], 'properties': {'data': {'type': 'object', 'required': ['center', 'zoom', 'layers'], 'properties': {'zoom': {'type': 'number'}, 'center': {'type': 'array', 'items': [{'type': ['number', 'null']}, {'type': ['number', 'null']}], 'maxItems': 2, 'minItems': 2, 'additionalItems': False}, 'layers': {'type': 'object', 'properties': {'stops': {'type': 'string'}, 'vehicles': {'type': 'string'}, 'polylines': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'type': {'type': 'string', 'const': 'map'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['route_name'], 'properties': {'route_name': {'type': 'string', 'minLength': 1, 'description': 'Route short name (e.g. "T30", "32A") or numeric external ID.'}}}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['view', 'data', 'ui_blocks'], 'properties': {'data': {'type': 'object', 'required': ['route_name', 'destinations', 'vehicles', 'updated_at'], 'properties': {'vehicles': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'direction', 'destination', 'next_stop', 'lat', 'lng', 'bearing', 'lowfloor'], 'properties': {'id': {'type': 'string'}, 'lat': {'type': ['number', 'null']}, 'lng': {'type': ['number', 'null']}, 'bearing': {'type': ['number', 'null']}, 'lowfloor': {'type': ['boolean', 'null']}, 'direction': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'next_stop': {'anyOf': [{'type': 'object', 'required': ['id', 'name', 'arrival'], 'properties': {'id': {'type': 'string'}, 'name': {'type': ['string', 'null']}, 'arrival': {'type': 'string'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'destination': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'route_name': {'type': 'string'}, 'updated_at': {'type': 'string'}, 'destinations': {'type': 'array', 'items': {'type': ['string', 'null']}}}, 'additionalProperties': False}, 'view': {'type': 'string', 'const': 'transit_realtime'}, 'ui_blocks': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'data'], 'properties': {'data': {'type': 'object', 'required': ['center', 'zoom', 'layers'], 'properties': {'zoom': {'type': 'number'}, 'center': {'type': 'array', 'items': [{'type': ['number', 'null']}, {'type': ['number', 'null']}], 'maxItems': 2, 'minItems': 2, 'additionalItems': False}, 'layers': {'type': 'object', 'properties': {'stops': {'type': 'string'}, 'vehicles': {'type': 'string'}, 'polylines': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'type': {'type': 'string', 'const': 'map'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['route_name'], 'properties': {'route_name': {'type': 'string', 'minLength': 1, 'description': 'Route short name (e.g. "T30", "32A") or numeric external ID.'}, 'include_shapes': {'type': 'boolean', 'description': 'Include route polylines ([lat, lng] points per direction) for map drawing. Default false.'}}}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['view', 'data', 'ui_blocks'], 'properties': {'data': {'type': 'object', 'required': ['route', 'stops', 'updated_at'], 'properties': {'route': {'type': 'object', 'required': ['name', 'long_name', 'color', 'type'], 'properties': {'name': {'type': ['string', 'null']}, 'type': {'type': ['string', 'null']}, 'color': {'type': ['string', 'null']}, 'long_name': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'stops': {'type': 'array', 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'lat', 'lng', 'departures'], 'properties': {'id': {'type': 'string'}, 'lat': {'type': ['number', 'null']}, 'lng': {'type': ['number', 'null']}, 'name': {'type': ['string', 'null']}, 'schedule': {'type': 'object', 'required': ['workday', 'weekend'], 'properties': {'weekend': {'type': 'array', 'items': {'type': 'string'}}, 'workday': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}, 'departures': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}}, 'shapes': {'type': 'array', 'items': {'type': 'array', 'items': {'type': 'array', 'items': {'type': 'number'}}}}, 'updated_at': {'type': 'string'}}, 'additionalProperties': False}, 'view': {'type': 'string', 'const': 'transit_realtime'}, 'ui_blocks': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'data'], 'properties': {'data': {'type': 'object', 'required': ['center', 'zoom', 'layers'], 'properties': {'zoom': {'type': 'number'}, 'center': {'type': 'array', 'items': [{'type': ['number', 'null']}, {'type': ['number', 'null']}], 'maxItems': 2, 'minItems': 2, 'additionalItems': False}, 'layers': {'type': 'object', 'properties': {'stops': {'type': 'string'}, 'vehicles': {'type': 'string'}, 'polylines': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'type': {'type': 'string', 'const': 'map'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['stop_id'], 'properties': {'stop_id': {'type': 'integer', 'maximum': 9007199254740991, 'description': 'Municipal stop code shown on stop signage (e.g. 707). Accepts a positive integer or an equivalent digit-only string.', 'exclusiveMinimum': 0}}}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['view', 'data', 'ui_blocks'], 'properties': {'data': {'type': 'object', 'required': ['stop', 'arrivals', 'updated_at'], 'properties': {'stop': {'type': 'object', 'required': ['id', 'name', 'lat', 'lng'], 'properties': {'id': {'type': 'string'}, 'lat': {'type': ['number', 'null']}, 'lng': {'type': ['number', 'null']}, 'name': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'arrivals': {'type': 'array', 'items': {'type': 'object', 'required': ['route', 'direction', 'vehicle_type', 'arrival_minutes', 'vehicle_id', 'lat', 'lng', 'bearing'], 'properties': {'lat': {'type': ['number', 'null']}, 'lng': {'type': ['number', 'null']}, 'route': {'type': ['string', 'null']}, 'bearing': {'type': ['number', 'null']}, 'direction': {'type': ['string', 'null']}, 'vehicle_id': {'type': ['string', 'null']}, 'vehicle_type': {'type': ['string', 'null']}, 'arrival_minutes': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}}, 'additionalProperties': False}}, 'updated_at': {'type': 'string'}}, 'additionalProperties': False}, 'view': {'type': 'string', 'const': 'transit_realtime'}, 'ui_blocks': {'type': 'array', 'items': {'oneOf': [{'type': 'object', 'required': ['type', 'data'], 'properties': {'data': {'type': 'object', 'required': ['center', 'zoom', 'layers'], 'properties': {'zoom': {'type': 'number'}, 'center': {'type': 'array', 'items': [{'type': ['number', 'null']}, {'type': ['number', 'null']}], 'maxItems': 2, 'minItems': 2, 'additionalItems': False}, 'layers': {'type': 'object', 'properties': {'stops': {'type': 'string'}, 'vehicles': {'type': 'string'}, 'polylines': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'type': {'type': 'string', 'const': 'map'}}, 'additionalProperties': False}, {'type': 'object', 'required': ['type', 'data'], 'properties': {'data': {'type': 'object', 'required': ['source'], 'properties': {'source': {'type': 'string'}}, 'additionalProperties': False}, 'type': {'type': 'string', 'const': 'arrival_list'}}, 'additionalProperties': False}]}}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['latitude', 'longitude'], 'properties': {'latitude': {'type': 'number', 'maximum': 90, 'minimum': -90, 'description': 'Decimal latitude of the search centre, WGS84 (e.g. 49.842 for central Lviv).'}, 'longitude': {'type': 'number', 'maximum': 180, 'minimum': -180, 'description': 'Decimal longitude of the search centre, WGS84 (e.g. 24.031 for central Lviv).'}, 'radius_meters': {'type': 'integer', 'maximum': 3000, 'minimum': 50, 'description': 'Search radius in metres (50â\x80\x933000, default 1000). Use ~300 for dense urban intersections, up to 3000 for suburban or rural areas.'}}}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['view', 'data', 'ui_blocks'], 'properties': {'data': {'type': 'object', 'required': ['center_lat', 'center_lng', 'radius_meters', 'stops', 'updated_at'], 'properties': {'stops': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'lat', 'lng', 'routes', 'distance_meters'], 'properties': {'id': {'type': 'string'}, 'lat': {'type': ['number', 'null']}, 'lng': {'type': ['number', 'null']}, 'name': {'type': ['string', 'null']}, 'routes': {'type': 'array', 'items': {'type': 'string'}}, 'distance_meters': {'type': ['number', 'null']}}, 'additionalProperties': False}}, 'center_lat': {'type': ['number', 'null']}, 'center_lng': {'type': ['number', 'null']}, 'updated_at': {'type': 'string'}, 'radius_meters': {'type': 'number'}}, 'additionalProperties': False}, 'view': {'type': 'string', 'const': 'transit_realtime'}, 'ui_blocks': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'data'], 'properties': {'data': {'type': 'object', 'required': ['center', 'zoom', 'layers'], 'properties': {'zoom': {'type': 'number'}, 'center': {'type': 'array', 'items': [{'type': ['number', 'null']}, {'type': ['number', 'null']}], 'maxItems': 2, 'minItems': 2, 'additionalItems': False}, 'layers': {'type': 'object', 'properties': {'stops': {'type': 'string'}, 'vehicles': {'type': 'string'}, 'polylines': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'type': {'type': 'string', 'const': 'map'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['vehicle_id'], 'properties': {'vehicle_id': {'type': 'string', 'minLength': 1, 'description': 'Vehicle ID as returned by get_route_realtime, get_nearby_vehicles, or get_stop_realtime.'}}}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['view', 'data', 'ui_blocks'], 'properties': {'data': {'type': 'object', 'required': ['vehicle_id', 'route', 'license_plate', 'lat', 'lng', 'bearing', 'direction', 'destination', 'upcoming_stops', 'updated_at'], 'properties': {'lat': {'type': ['number', 'null']}, 'lng': {'type': ['number', 'null']}, 'route': {'type': ['string', 'null']}, 'bearing': {'type': ['number', 'null']}, 'direction': {'anyOf': [{'type': 'integer', 'maximum': 9007199254740991, 'minimum': -9007199254740991}, {'type': 'null'}]}, 'updated_at': {'type': 'string'}, 'vehicle_id': {'type': 'string'}, 'destination': {'type': ['string', 'null']}, 'license_plate': {'type': ['string', 'null']}, 'upcoming_stops': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'arrival', 'departure'], 'properties': {'id': {'type': 'string'}, 'name': {'type': ['string', 'null']}, 'arrival': {'type': ['string', 'null']}, 'departure': {'type': ['string', 'null']}}, 'additionalProperties': False}}}, 'additionalProperties': False}, 'view': {'type': 'string', 'const': 'transit_realtime'}, 'ui_blocks': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'data'], 'properties': {'data': {'type': 'object', 'required': ['center', 'zoom', 'layers'], 'properties': {'zoom': {'type': 'number'}, 'center': {'type': 'array', 'items': [{'type': ['number', 'null']}, {'type': ['number', 'null']}], 'maxItems': 2, 'minItems': 2, 'additionalItems': False}, 'layers': {'type': 'object', 'properties': {'stops': {'type': 'string'}, 'vehicles': {'type': 'string'}, 'polylines': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'type': {'type': 'string', 'const': 'map'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
입력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['query'], 'properties': {'limit': {'type': 'integer', 'maximum': 25, 'minimum': 1, 'description': 'Maximum stops to return (1â\x80\x9325, default 10).'}, 'query': {'type': 'string', 'minLength': 2, 'description': 'Stop name or part of it, e.g. "Ð\xa0инок", "opera", "СÑ\x82Ñ\x80ийÑ\x81Ñ\x8cка".'}}}
출력 스키마
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['view', 'data', 'ui_blocks'], 'properties': {'data': {'type': 'object', 'required': ['query', 'stops', 'updated_at'], 'properties': {'query': {'type': 'string'}, 'stops': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'name', 'lat', 'lng', 'routes', 'eng_name'], 'properties': {'id': {'type': 'string'}, 'lat': {'type': ['number', 'null']}, 'lng': {'type': ['number', 'null']}, 'name': {'type': ['string', 'null']}, 'routes': {'type': 'array', 'items': {'type': 'string'}}, 'eng_name': {'type': ['string', 'null']}}, 'additionalProperties': False}}, 'updated_at': {'type': 'string'}}, 'additionalProperties': False}, 'view': {'type': 'string', 'const': 'transit_realtime'}, 'ui_blocks': {'type': 'array', 'items': {'type': 'object', 'required': ['type', 'data'], 'properties': {'data': {'type': 'object', 'required': ['center', 'zoom', 'layers'], 'properties': {'zoom': {'type': 'number'}, 'center': {'type': 'array', 'items': [{'type': ['number', 'null']}, {'type': ['number', 'null']}], 'maxItems': 2, 'minItems': 2, 'additionalItems': False}, 'layers': {'type': 'object', 'properties': {'stops': {'type': 'string'}, 'vehicles': {'type': 'string'}, 'polylines': {'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'type': {'type': 'string', 'const': 'map'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
최근 도구 변경
유사한 MCP 서버
SupplyGraph.AI Data
Provides China-focused location, surrounding-area, company, industry-chain, property, population, retail, and regional business i…
Microburbs Australian Property Data
Provides Australian property, suburb, valuation, sales, rental, zoning, school, risk, geospatial, and census statistics.
gisgp
Provides GIS geocoding, routing, spatial transformations, ArcGIS layer inspection and export, and location due diligence for haza…
ikeytz Einsatzgebiet-Karten
Provides public map and service-area data, geographic search, proximity calculations, area boundaries, business contact details, …
Namaste America
Helps users find Indian-American restaurants, temples, events, businesses, professionals, services, movies, offers, and community…
MolTravel
Searches and provides details for flights, hotels, rental cars, ferries, airports, travel experiences, destinations, country info…
EasyTerritory MCP
Builds, balances, analyzes, and edits sales or service territories, with geocoding, routing, scheduling, map visualization, and G…
MapMap
Provides mapping tools for routing, truck and ADR routing, geocoding, distance matrices, and isochrones.