[← Back to tools]
serp.maps

Search Google Maps: pay per use, no API key

Use SerpApi from Claude, Claude Code, Cursor, ChatGPT, and other agents through one Cralo balance.

Return Google Maps places with addresses, ratings, and coordinates through SerpApi.

Price and execution

Price
$0.03
Pricing model
Fixed price per successful call
Execution class
fast

Limits

No additional limits are published for this tool.

Parameters

Fields serp.maps accepts as JSON input.

  • limitintegerOptional

    Maximum number of records to return.

  • querystringRequired

    Google maps search query.

  • countrystringOptional

    Two-letter country code for the Google result market.

  • languagestringOptional

    Two-letter language code for Google results.

  • locationstringOptional

    Geographic location used to localize results, such as `Austin, Texas`.

Raw input JSON Schema
{
  "type": "object",
  "required": [
    "query"
  ],
  "properties": {
    "limit": {
      "type": "integer",
      "default": 10,
      "maximum": 100,
      "minimum": 1,
      "description": "Maximum number of records to return."
    },
    "query": {
      "type": "string",
      "maxLength": 1000,
      "minLength": 1,
      "description": "Google maps search query."
    },
    "country": {
      "type": "string",
      "default": "us",
      "pattern": "^[A-Za-z]{2}
quot;, "description": "Two-letter country code for the Google result market." }, "language": { "type": "string", "default": "en", "pattern": "^[A-Za-z]{2}
quot;, "description": "Two-letter language code for Google results." }, "location": { "type": "string", "maxLength": 255, "minLength": 1, "description": "Geographic location used to localize results, such as `Austin, Texas`." } }, "additionalProperties": false }

Returns

Fields a successful serp.maps call returns.

  • querystringRequired
  • resultsarray of objectRequired
    • datestring | nullRequired
    • linkstring | nullRequired
    • pricestring | nullRequired
    • titlestringRequired
    • ratingnumber | nullRequired
    • sourcestring | nullRequired
    • addressstring | nullRequired
    • snippetstring | nullRequired
    • latitudenumber | nullRequired
    • positionnumberRequired
    • longitudenumber | nullRequired
    • thumbnailstring | nullRequired
  • vertical"maps"Required
  • search_idstringRequired
  • retrieved_atstring (date-time)Required
Raw output JSON Schema
{
  "type": "object",
  "required": [
    "query",
    "vertical",
    "results",
    "search_id",
    "retrieved_at"
  ],
  "properties": {
    "query": {
      "type": "string"
    },
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "position",
          "title",
          "link",
          "source",
          "snippet",
          "thumbnail",
          "date",
          "price",
          "rating",
          "address",
          "latitude",
          "longitude"
        ],
        "properties": {
          "date": {
            "type": [
              "string",
              "null"
            ]
          },
          "link": {
            "type": [
              "string",
              "null"
            ],
            "format": "uri"
          },
          "price": {
            "type": [
              "string",
              "null"
            ]
          },
          "title": {
            "type": "string"
          },
          "rating": {
            "type": [
              "number",
              "null"
            ],
            "minimum": 0
          },
          "source": {
            "type": [
              "string",
              "null"
            ]
          },
          "address": {
            "type": [
              "string",
              "null"
            ]
          },
          "snippet": {
            "type": [
              "string",
              "null"
            ]
          },
          "latitude": {
            "type": [
              "number",
              "null"
            ]
          },
          "position": {
            "type": "number",
            "minimum": 0
          },
          "longitude": {
            "type": [
              "number",
              "null"
            ]
          },
          "thumbnail": {
            "type": [
              "string",
              "null"
            ],
            "format": "uri"
          }
        },
        "additionalProperties": false
      },
      "maxItems": 100
    },
    "vertical": {
      "const": "maps"
    },
    "search_id": {
      "type": "string"
    },
    "retrieved_at": {
      "type": "string",
      "format": "date-time"
    }
  },
  "additionalProperties": false
}

Run this tool

Copy this instruction to your agent to set up Cralo and call this tool with the example input.

Set up Cralo by following https://cralo.ai/SKILL.md, then call the serp.maps tool with this input: {"query":"coffee shops","country":"us","language":"en","location":"San Francisco, California, United States"}

Safety notes

Side Effect
read_only
Public Sources Only
Yes

How this compares to using SerpApi directly

You do not need a separate SerpApi account or subscription for this call. Cralo uses one prepaid balance across all tools and shows the per-call price before you run the command.

Related tools

[Browse all tools]