charge-atlas-compare-networks-adb
ChatGPTCompare two or more EV charging networks side-by-side in a given country. Returns each network's station count (and an estimated total when the underlying summary was sampled), ranked by coverage, plus an overall winner by share. Useful for buy-decision questions like 'Which network has more stations in Spain — IONITY or Tesla Superchargers?'
charge-atlas-get-country-summary-adb
ChatGPTGet aggregate EV charging statistics for a country: total station count, breakdown by charger speed (DC fast / Level 2 / Level 1), and the top 20 network operators by station count.
charge-atlas-get-station-adb
ChatGPTGet full detail for a single charging station by Charge Atlas ID. Returns station name, full address, operator network, port count, supported connector types, charge speed levels, opening hours, access policy (public / restricted), and current operational status when available.
charge-atlas-journey-planner-adb
ChatGPTPlan an EV-friendly drive from origin to destination, with chargers along the way. Geocodes both endpoints, fetches a driving polyline, then surfaces compatible DC fast chargers within a corridor of the route. Returns the route polyline (for the map), drive distance + duration, and a deduplicated, filtered list of charging stops.
charge-atlas-list-connector-types-adb
ChatGPTList the EV connector / plug types that Charge Atlas can filter on, with their charge level (L1 / L2 / DC), current type (AC / DC), max power in kW, and regional usage. Use this to translate a user's car (e.g. 'Nissan Leaf') into the connector filter to pass into search calls.
charge-atlas-list-networks-adb
ChatGPTList EV charging network operators active in a country, with their station counts. Use the returned network names as comma-separated values for the 'networks' filter on the search capabilities.
charge-atlas-list-vehicles-adb
ChatGPTList the EV models that Charge Atlas can filter charging stations by. Each entry returns the model's slug (used as the 'vehicle' parameter on search capabilities), display name, primary market, and the AC + DC connector types the car supports — including via the manufacturer's official adapter (e.g. Tesla → CCS via NACS adapter). Pass 'vehicle' to fetch details for one model instead of the full catalog.
charge-atlas-route-corridor-adb
ChatGPTFind EV charging stations along a driving route corridor. Takes an ordered list of [lat, lon] waypoints and a corridor radius in miles, returns stations within that radius of the line. Supported for US/Canada routes only — for non-US routes, use the journey-planner capability. For road-trip planning, set min_charge_level='DC'.
charge-atlas-search-by-bbox-adb
ChatGPTFind public EV charging stations inside a geographic bounding box (map viewport). Pass the south-west corner as (min_lat, min_lon) and the north-east corner as (max_lat, max_lon). Use this for map-viewport queries — preferred over repeated nearby calls when panning/zooming.
charge-atlas-search-by-location-adb
ChatGPTFind public EV charging stations near a free-text location anywhere in the world. The location string is geocoded internally and then queried for chargers. Country bias is taken from `openai/userLocation.country` by default to disambiguate bare postal codes. Returns the same normalized station shape as the coordinate search.
charge-atlas-search-nearby-adb
ChatGPTFind public EV charging stations near a latitude/longitude coordinate. When the host provides `openai/userLocation`, the coordinate is optional and defaults to the user's approximate position. Filter by minimum charger speed (L1/L2/DC), network, connector, EV model, and live availability. Returns station name, address, network (with logo URL), charger speed, available connectors, port count, pricing, last-confirmed timestamp, and distance in both miles and kilometres.
code_execution
ChatGPTExecute Python code with access to 11 tools in bundle 'charge-atlas'. TOOL NAMES — DO NOT GUESS: Every tool has a hash suffix (e.g., list_records_5b7). Discover names first: tools = await list_tools() returns [{'function_name': '...', 'description': '...'}] Key is 'function_name' — NOT 'slug', 'name', or 'id'. Also: await get_tool_schema('tool-slug') for parameter details. CALLING TOOLS: Pre-bound to bundle 'charge-atlas' — no 'bundle' parameter needed. Responses are dicts. 'status'/'status_code' are stripped — do NOT access them. Errors raise exceptions. Use print(result.keys()) to inspect shape. .get() on a wrong key prints a WARNING with available keys. DYNAMIC DISPATCH: When the tool name is a string variable (e.g. iterating over list_tools()), use call_tool(name, **kwargs). The name MUST be the full hash-suffixed identifier in either function-name form (underscores) or slug form (hyphens): for t in await list_tools(): result = await call_tool(t['function_name']) MCP APP OUTPUT: Some reachable tools have MCP Apps. Calling an app-backed tool automatically renders its app. To render a curated result instead, publish it explicitly with: publish_ui_result(result, tool_name='function_name', args={...}) Use list_ui_tools() to inspect app-backed tools. Do not publish discovery, schema, or helper results. Available app tools: charge_atlas_compare_networks_adb -> ui://charge-atlas/app, charge_atlas_get_country_summary_adb -> ui://charge-atlas/app, charge_atlas_get_station_adb -> ui://charge-atlas/app, charge_atlas_journey_planner_adb -> ui://charge-atlas/app, charge_atlas_list_connector_types_adb -> ui://charge-atlas/app, charge_atlas_list_networks_adb -> ui://charge-atlas/app, charge_atlas_list_vehicles_adb -> ui://charge-atlas/app, charge_atlas_route_corridor_adb -> ui://charge-atlas/app (+3 more) Safe imports: asyncio, collections, datetime, functools, itertools, json, math, random, re, statistics, time, urllib.parse, uuid Only print() returns output. Use await directly (no asyncio.run). Variables do NOT persist between calls.
get_skill
ChatGPTGet the SKILL.md for this MCP server — domain knowledge covering data models, workflow patterns, and API gotchas that help you use these tools effectively. Save the returned content to your project as a SKILL.md file.
health_check
ChatGPTHealth check that validates the MCP connection is working.
sleep
ChatGPTPause execution for a specified number of seconds. Use this when you hit a rate limit (429) and the error includes retry_after_seconds — sleep for that duration, then retry the action. Maximum sleep: 120 seconds.