Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Pumperly

OCI · DRUMSERGIO/PUMPERLY-MCP · 2 COMPONENTS

Cheapest fuel and EV charging near a place or along a drive, in about 40 countries

+3 this week 43 Trust /100

Last scanned (1 hour ago)

Scores higher than 60% of OCI servers

Category Maps and Location

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security0
  • No malware scan is available for this kind of package: the supply-chain vendors we use do not cover it. This is a permanent gap in our coverage, not a finding about the package.Unverified
  • Known CVEs could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read.Unverified
  • Install-script risk not yet assessed.Unverified
  • Dependency health could not be checked: this artifact ships no SBOM or dependency manifest, so there is no dependency list to read.Unverified
Provenance & Transparency35
Schema Quality & AI Usability77
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 2169 tokens (~216/item across 10 items; 6 tools + 4 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management30
  • Stability observed for 9 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 6 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass

Unverified: 1 category

A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 4 Nov 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

  • 2 Nov 26 +1
    • Provenance: unverified → fail ▼ security
  • 1 Nov 26 0
    • Provenance: fail → unverified ▼ security
  • 31 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.

  • 29 Oct 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

  • 28 Oct 26 0
    • Tool safety: pass → unverified ▼ security
    • Stability: 0.00 → unverified ▼ security
    • Tool coverage: 100 → unverified ▼ functional
    • Schema quality: 100 → unverified ▼ functional
    • Capabilities: pass → unverified ▼ functional
    • Package version: v0.2.0 → v0.2.1 functional
  • 27 Oct 26 +32
    • Provenance: unverified → fail ▼ security
    • Injection markers: unverified → pass ▲ security
    • First check of Judged manipulation: pass security
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • Stability: unverified → 0.00 ▲ functional
    • Schema quality: unverified → 100 ▲ functional
    • MCP protocol: unverified → pass ▲ functional
    • Tool coverage: unverified → 100 ▲ functional
    • First check of Tool coverage: 100 functional
    • First check of Destructive annotations: pass functional
    • First check of Schema quality: excellent functional
    • First check of Schema quality: fail functional
    • First check of Tool coverage: 100 functional
    • First check of Schema quality: fail functional
    • Package version: v0.1.2 → v0.2.0 functional
  • 26 Oct 26 0
    • Provenance: fail → unverified ▼ security
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Analysed oci/drumsergio/pumperly-mcp@v0.2.1

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem oci
Reason No attestation published

Background: How many MCP packages publish verified provenance →

MCP tools · 6 exposed · ~1,781 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
calculate_route ~293

Calculate a driving route and return its distance (km), driving time (minutes) and bounding box, with up to 2 alternatives when there are no waypoints. Ends can be place names, "lat,lon" text or coordinates. To find fuel along the way, call cheapest_fuel_on_route instead: it routes and searches in one call. Set include_geometry only to pass the line to find_route_stations; it can be up to 2000 points.

NameTypeReqDescription
dest_latnumber–End latitude, decimal degrees.
dest_lonnumber–End longitude, decimal degrees.
destinationstring–End as a place name ("Valencia") or "lat,lon" text. Or give dest_lat and dest_lon.
include_geometryboolean–Include each route's GeoJSON LineString ([lon, lat] points). Default false.
originstring–Start as a place name ("Madrid") or "lat,lon" text ("40.4168,-3.7038"). Or give origin_lat and origin_lon.
origin_latnumber–Start latitude, decimal degrees.
origin_lonnumber–Start longitude, decimal degrees.
waypointsarray–Optional stops in order, as [lon, lat] pairs (longitude first), at most 5. Example: [[-1.13, 40.34]].
NameTypeReqDescription
destinationobjectyes–
originobjectyes–
routesarrayyes–

No examples provided.

cheapest_fuel_on_route ~399

Plan a drive and find where to fill up: routes from origin to destination, then lists the stations within corridor_km of the route, cheapest first, with each one's km from the start. Ends can be place names ("Madrid", "Valencia"), "lat,lon" text or coordinates. Prices are per litre (per kg for CNG, LNG and H2, per kWh for EV) in local currency; cross-border trips mix currencies, see pumperly://exchange-rates. Uses two of the API's 30 route searches per minute.

NameTypeReqDescription
corridor_kmnumber–How far off the route a station may be, in km, 0.5 to 50. Default 2 (a short detour).
dest_latnumber–End latitude, decimal degrees.
dest_lonnumber–End longitude, decimal degrees.
destinationstring–End as a place name ("Valencia") or "lat,lon" text. Or give dest_lat and dest_lon.
fuelstringyesFuel code. Common ones: B7 = diesel, E5 = petrol 95, E10 = petrol 95 E10, E5_98 = petrol 98, LPG = autogas, EV = charging. The pumperly://fuel-types resource lists all 16 with labels and price units.
limitinteger–How many stations to return, 1 to 50. Default 10.
originstring–Start as a place name ("Madrid") or "lat,lon" text ("40.4168,-3.7038"). Or give origin_lat and origin_lon.
origin_latnumber–Start latitude, decimal degrees.
origin_lonnumber–Start longitude, decimal degrees.
sort_bystring–price (cheapest first, default) or route (in driving order).
NameTypeReqDescription
destinationobjectyes–
distance_kmnumberyes–
duration_minnumberyes–
originobjectyes–
stationsobjectyes–

No examples provided.

find_nearest_stations ~359

Find the fuel stations or EV chargers closest to a point, with current prices. Give the point as lat and lon, or as a place name in near (geocoded for you). sort_by=distance (default) returns the nearest; sort_by=price returns the cheapest among the 50 nearest within the radius. Prices are per litre (per kg for CNG, LNG and H2, per kWh for EV) in the station's local currency. Covers about 40 countries, mostly in Europe; pumperly://stats lists them.

NameTypeReqDescription
fuelstringyesFuel code. Common ones: B7 = diesel, E5 = petrol 95, E10 = petrol 95 E10, E5_98 = petrol 98, LPG = autogas, EV = charging. The pumperly://fuel-types resource lists all 16 with labels and price units.
latnumber–Latitude of the search point in decimal degrees, e.g. 40.4168. Give with lon, or use near instead.
limitinteger–How many stations to return, 1 to 50. Default 5.
lonnumber–Longitude of the search point in decimal degrees, e.g. -3.7038. Give with lat, or use near instead.
nearstring–Place name or address to search around, e.g. "Atocha, Madrid". Used when lat and lon are not given.
radius_kmnumber–Search radius in km, 0.5 to 100. Default 10.
sort_bystring–distance (nearest first, default) or price (cheapest first).
NameTypeReqDescription
centernull|object––
foundintegeryes–
fuelstringyes–
pricesnull|arrayyes–
returnedintegeryes–
sort_bystringyes–
stationsnull|arrayyes–
unitstringyesWhat prices are per: L, kg or kWh

No examples provided.

find_route_stations ~296

List the fuel stations or EV chargers within corridor_km of a route line you already have, cheapest first by default, with each station's km along the route. Most callers want cheapest_fuel_on_route, which takes place names and does the routing too. Prices are per litre (per kg for CNG, LNG and H2, per kWh for EV) in local currency. The API allows 30 route searches per minute.

NameTypeReqDescription
corridor_kmnumber–How far from the route a station may be, in km, 0.5 to 50. Default 5.
fuelstringyesFuel code. Common ones: B7 = diesel, E5 = petrol 95, E10 = petrol 95 E10, E5_98 = petrol 98, LPG = autogas, EV = charging. The pumperly://fuel-types resource lists all 16 with labels and price units.
geometryobjectyesGeoJSON LineString of the route: {"type":"LineString","coordinates":[[lon,lat],...]}, longitude first, 2 to 2000 points. calculate_route returns one with include_geometry=true.
limitinteger–How many stations to return, 1 to 50. Default 10.
sort_bystring–price (cheapest first, default) or route (in driving order from the start).
NameTypeReqDescription
centernull|object––
foundintegeryes–
fuelstringyes–
pricesnull|arrayyes–
returnedintegeryes–
sort_bystringyes–
stationsnull|arrayyes–
unitstringyesWhat prices are per: L, kg or kWh

No examples provided.

geocode ~150

Turn a place name or address into coordinates (lat, lon), best match first. The station and route tools already accept place names, so call this only to pick between ambiguous places or to get coordinates for a bbox. Give lat and lon to prefer results near a point.

NameTypeReqDescription
latnumber–Optional latitude to prefer nearby results. Give with lon.
limitinteger–How many matches to return, 1 to 10. Default 5.
lonnumber–Optional longitude to prefer nearby results. Give with lat.
querystringyesCity, address or point of interest, e.g. "Puerta del Sol, Madrid". At most 200 characters.
NameTypeReqDescription
querystringyes–
resultsnull|arrayyes–

No examples provided.

get_stations_in_area ~284

List the fuel stations or EV chargers inside a bounding box with current prices, cheapest first by default, plus the min, median and max price per currency. Use it for "cheapest diesel in this town". For a point and radius use find_nearest_stations; along a trip use cheapest_fuel_on_route. Prices are per litre (per kg for CNG, LNG and H2, per kWh for EV) in local currency. Keep the box city-sized: a whole-country box can exceed the 8 MB answer cap.

NameTypeReqDescription
bboxstringyesBounding box as "minLon,minLat,maxLon,maxLat" in decimal degrees, longitude first. Example for central Madrid: "-3.75,40.38,-3.65,40.45".
fuelstringyesFuel code. Common ones: B7 = diesel, E5 = petrol 95, E10 = petrol 95 E10, E5_98 = petrol 98, LPG = autogas, EV = charging. The pumperly://fuel-types resource lists all 16 with labels and price units.
limitinteger–How many stations to return, 1 to 100. Default 20.
sort_bystring–price (cheapest first, default) or distance (from the centre of the box).
NameTypeReqDescription
centernull|object––
foundintegeryes–
fuelstringyes–
pricesnull|arrayyes–
returnedintegeryes–
sort_bystringyes–
stationsnull|arrayyes–
unitstringyesWhat prices are per: L, kg or kWh

No examples provided.

Install

How do I install the Pumperly MCP server?

Pumperly runs locally as a container image, launched with docker run --rm -i -e PUMPERLY_URL drumsergio/pumperly-mcp:v0.2.1. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.

oci · drumsergio/pumperly-mcp

# add to Claude Code
claude mcp add geiserx-pumperly-mcp -- docker run --rm -i -e PUMPERLY_URL drumsergio/pumperly-mcp:v0.2.1

This image reads PUMPERLY_URL. Set it in your client's env block for this server; docker run -e passes it through to the container.

Common questions

What is the Pumperly MCP server?

Pumperly is an MCP server listed in the public MCP registry as io.github.GeiserX/pumperly-mcp. Cheapest fuel and EV charging near a place or along a drive, in about 40 countries. This page covers its container image (drumsergio/pumperly-mcp).

Is the Pumperly MCP server safe to use?

Pumperly scores 43 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Pumperly MCP server expose?

Pumperly exposes 6 tools: calculate_route, cheapest_fuel_on_route, find_nearest_stations, find_route_stations, geocode, get_stations_in_area. Their descriptions and schemas cost roughly 1,781 tokens of context every time the server is loaded.

Is the Pumperly MCP server still maintained?

Pumperly is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.