serper_maps_census
EXHAUSTIVE census of a type of business over an area (Google Maps).
Use this — NOT serper_maps_sample — whenever you need a count or an
exhaustive list of a type of business over an area. A Maps sample
caps at ~20 results and biases toward its anchor point: it silently
undercounts. This tool fixes both server-side — it tiles the area
into a grid of geo anchors, paginates each one and deduplicates by place id
→ complete result.
Provide either center "lat,lng" (+ radius_km, grid), or ll_anchors.
Cost: ~grid² × max_pages Serper requests (throttled), and a Maps page is
billed 3 credits, not 1 — a default census (grid=3, max_pages=3)
therefore costs about 81 credits. That is the price of exhaustiveness; start
modest and tighten the grid if needed.
Returns {query, count, places[], anchors_used, pages_fetched, credits_used}.
count = deduplicated total — to be preferred over any count from a sample alone.
credits_used = what Serper ACTUALLY deducted across all the pages,
the exact cost figure of this call (pages_fetched counts requests,
not spend).
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"query": "<query>"
},
"name": "serper_maps_census"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| _org | No | Org (id) de CET APPEL. `oto_list_orgs()`. | |
| grid | No | Tiling density grid×grid; finer = more coverage and more calls (default 3 → 9 anchors). | |
| zoom | No | Maps zoom level per anchor (default 14). | |
| query | Yes | What is being enumerated (e.g. "self-service laundry"). | |
| _group | No | Équipe (id) de CET APPEL, sous son org parente. | |
| center | No | Area center "lat,lng" (e.g. "48.8566,2.3522"). Required unless ll_anchors. | |
| _run_id | No | OBLIGATOIRE à chaque appel dès `run_start` ou `data_claim_next` : sans lui, l'écriture sur une ligne réservée est refusée. Hérité seulement si le serveur tient un run actif — n'y compte pas. | |
| country | No | Country code (default "fr"). | fr |
| _project | No | Projet (id) de CET APPEL — jeton PRIMAIRE. `oto_project(op='list')`. | |
| language | No | Language code (default "fr"). | fr |
| _instance | No | Instance de connecteur PRÉCISE (un credential exact). `oto_instance(op='list')`. | |
| max_pages | No | Max pages paginated per anchor (default 3). | |
| radius_km | No | Half-width of the square area around the center (default 5). | |
| ll_anchors | No | Explicit "@lat,lng,zoomz" anchors, take precedence over center/radius/grid. |