portugal-fuel-ev-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORTUGAL_FUEL_EV_CACHE_DIR | No | The cache lives in your user cache folder (via platformdirs). Set PORTUGAL_FUEL_EV_CACHE_DIR to use another folder. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| fuel_pricesA | Cheapest fuel stations in Portugal for one fuel type, cheapest first (official DGEG prices). Use for "where is diesel/petrol/LPG cheapest in Lisboa / near me / in Braga?". Give an area as a district, a municipality, or a point (lat + lon, with radius_km); with no area it searches all of Portugal. Names are case- and accent-insensitive ("evora" works). Args: fuel_type: A DGEG fuel name or id, e.g. "Gasóleo simples" (regular diesel, 2101), "Gasolina simples 95" (regular 95 petrol, 3201), "Gasolina 98", "GPL Auto" (LPG), or plain words: "diesel", "petrol", "95", "98", "lpg", "cng". See fuel_types() for the full list. district: Portuguese district, e.g. "Lisboa", "Porto", "Faro". municipality: Municipality (concelho), e.g. "Sintra", "Vila Nova de Gaia". Overrides district. lat, lon: A point (WGS84). Results get distance_km and are limited to radius_km. radius_km: Search radius around lat/lon (default 10). brand: Only this brand (substring match), e.g. "Galp", "Prio", "Intermarché". limit: How many stations to return (default 10, max 50). Each station: price_eur (per litre, or per kg/m3 for gas), brand, name, address, municipality, distance_km (with lat/lon), coordinates and last_update (the station's last price update). Also returns how many stations matched and the min/median/max price. Always mention the source (DGEG) and the last_update when quoting prices. |
| fuel_station_detailA | Full details of one fuel station: every fuel it sells with price and last update, opening hours, services (car wash, shop, tyre air...) and payment methods. Use after fuel_prices, with a station |
| fuel_typesA | List DGEG fuel types (id, name, unit) and the districts accepted by fuel_prices. Only needed when unsure which fuel name to pass; fuel_prices also understands "diesel", "petrol", "95", "98", "lpg". |
| ev_chargersA | Public EV charging sites near a point in Portugal (MOBI.E network), nearest first, with live status and the price the network publishes for each charging point. Use for "where can I charge near X?", "fast chargers near me", "is there a free CCS charger nearby?". Needs coordinates; if the user gives a place name, use known coordinates for it. Covers mainland Portugal, Azores and Madeira. Args: lat, lon: Point to search around (WGS84). radius_km: Search radius (default 5, max 100). min_power_kw: Only points that can deliver at least this power, e.g. 50 for fast DC. connector: "CCS" (CCS2), "Type 2", "CHAdeMO", "CEE", or "DC" / "AC". available_only: Only points whose live status is "available" right now. limit: Max sites to return (default 10, max 50). Each site: operator, address, distance_km, opening hours and its matching points, each
with status (available, in use, out of order...), max power, connectors and price
(per_kwh / per_minute / per_session in EUR, from the feed). IMPORTANT: these are the
charging operator's published fees and may not be the whole bill: see |
| ev_charger_detailA | Everything about one MOBI.E charging site: all its points with live status, power, connectors and price, plus operator contact, opening hours and accepted authentication (app, RFID card, credit card...). Use after ev_chargers. Accepts a site_id (e.g. "EZC-AMD-00051"), a point_id (e.g. "AMD-00051-1") or an EVSE id (e.g. "PTEZCEAMD00051*1"). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
The set cleanly splits into two domains: fuel stations (fuel_prices, fuel_station_detail, fuel_types) and EV charging (ev_chargers, ev_charger_detail). Search tools and detail tools are explicitly paired, and fuel_types is clearly a lookup helper. No two tools appear to do the same thing.
All names use snake_case and follow a domain_action or domain_resource pattern. Minor inconsistency exists between plural list tools (fuel_prices, ev_chargers) and singular detail tools (fuel_station_detail, ev_charger_detail), and fuel_types is a helper rather than an action. Still predictable and readable.
Five tools is well-scoped for a specialized Portugal fuel/EV charging server. Each tool has a clear role: two search tools, two detail tools, and one reference/lookup tool. Nothing feels redundant or missing from the count perspective.
The surface covers the core lifecycle: find fuel stations, inspect a station, list fuel types, find EV chargers, and inspect a charging site. A minor gap is that EV charger search requires coordinates and lacks the district/municipality convenience offered by fuel_prices. Overall complete enough for the stated purpose.