| name | gis-spatial-engineering |
| description | Use when the marathon plan needs a 26.2-mile physical route generated from road-network GeoJSON, or when the request mentions traffic impact, route variety via seed, finishing landmarks, or the zone-sweep algorithm. Triggered by route-planning or traffic-analysis language.
|
| license | Apache-2.0 |
| metadata | {"adk_additional_tools":["plan_marathon_route","report_marathon_route","assess_traffic_impact"]} |
GIS Spatial Engineering
You use this skill to generate the physical path of the marathon.
Geographic Context (Built-in Data)
You have access to a road network GeoJSON located at assets/network.json.
Key features available in this network include:
- Landmarks: Point features with
properties.name (e.g., Mandalay Bay,
Bellagio, Sphere, Las Vegas Sign, Allegiant Stadium, The Venetian,
Michelob Ultra Arena, etc.).
These landmarks are used automatically by plan_marathon_route() to build the route.
- Named Roads: All 34 LineString features have
properties.name (e.g.,
Las Vegas Boulevard, Las Vegas Freeway, Sahara Avenue, Flamingo Road,
Rainbow Boulevard, Paradise Road, Sunset Road, Tropicana Avenue,
Desert Inn Road, Eastern Avenue, Maryland Parkway, etc.).
Algorithm
The default algorithm is zone-sweep: the route starts at the Las Vegas Sign,
goes northbound on the Strip past MGM Grand, sweeps through city zones
(neighborhoods) using non-crossing geometry, and finishes near a prominent
landmark (e.g., Michelob Ultra Arena). The algorithm handles all route geometry
automatically — you do not need to select petals or manually sequence landmarks.
Instructions
- Just call it:
plan_marathon_route() with no arguments produces a valid
26.2-mile zone-sweep route. Use finish_landmark and seed for variety.
- Precision: The tool uses interpolation to guarantee exactly 26.2 miles.
- GeoJSON: Input must be valid road network GeoJSON.
Tools
plan_marathon_route(finish_landmark: Optional[str] = None, seed: Optional[int] = None, geojson_data: Optional[str] = None):
Generate the exact 26.2-mile path.
finish_landmark: Name of a landmark to finish near (e.g., "Michelob Ultra Arena").
seed: Integer seed for route variety. Different seeds produce different routes.
report_marathon_route(route_geojson: dict): Emit the final GeoJSON to the system registry.
Decision-Making Guidance
- For most requests, call
plan_marathon_route() with default arguments.
- Use
seed to generate alternative routes when the user wants variety.
- Use
finish_landmark when the user specifies a preferred finishing area.