Skip to main content
Glama

rowfeed/google-serp-api

rowfeed--google-serp-api
Destructive

This tool calls the Actor "rowfeed/google-serp-api" and retrieves its output results. Actor description: Google search results for any query, country, language and device: organic results, ads, featured snippet, People Also Ask, AI overview when Google shows one, and local pack, plus your domain's rank. Licensed data, no blocked runs. $3 per 1,000 searches.

Input Schema

NameRequiredDescriptionDefault
deviceNoResults as seen on a desktop or a mobile phone. Example values: "desktop"desktop
queriesNoWhat to search Google for, up to 1,000 per run. Google operators (site:, "exact", -exclude) work. Example values: ["web scraping api"]
languageNoSearch language: English, German, French, Spanish ... Leave empty for the location's default. Example values: "English"English
locationNoCountry, region or city as Google names it: "United States", "United Kingdom", "Germany", "London,England,United Kingdom", "New York,New York,United States". Example values: "United States"United States
waitSecsNoMax seconds (0–45, default 30) to cap the wait for the Actor run to reach terminal state. For long-running Actors the response returns at the cap with the current run status; follow `nextStep` to poll via get-actor-run. Set to 0 to fire-and-forget.
targetDomainNoe.g. example.com. Every row then gets target_position and target_url: where this domain ranks (subdomains count). Schedule the Actor daily for a rank tracker.
resultsPerQueryNo10 = first page. Up to 100. Each 10 results count as one search page in the price. Example values: 10

Output Schema

NameRequiredDescriptionDefault
tipNoAdvisory guidance RAG Web Browser wrote to its key-value store under the reserved "TIP" key
runIdYesActor run ID
statsNoRun statistics
statusYesRun status: READY | RUNNING | TIMING-OUT | TIMED-OUT | ABORTING | ABORTED | SUCCEEDED | FAILED
actorIdYesStable Apify Actor ID from the run record
summaryYesPast-tense summary of the run state
exitCodeNoActor process exit code; populated for terminal states (especially FAILED)
nextStepYesOne primary follow-up action with identifiers interpolated
storagesYesDataset and key-value store metadata, keyed by alias. "default" is always the primary entry.
actorNameNo"username/actor-name"
startedAtNoISO timestamp when the run started
finishedAtNoISO timestamp when the run finished (terminal states only)
statusMessageNoPass-through from Apify run.statusMessage
apifyConsoleUrlNoPersonalized Apify Console link to the run; present only for Console sessions

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema
      Added value: +{
      +  "description": "JSON Schema for rows in the dataset at `storages.datasets.default.id` — describes row shape only; the rows themselves are NOT returned inline in this response. Inferred from this Actor's historical successful runs. To fetch actual rows, call `get-dataset-items` with the dataset id and a `fields` projection drawn from this schema.",
      +  "properties": {
      +    "ai_overview": {
      +      "type": "null"
      +    },
      +    "checked_at": {
      +      "type": "string"
      +    },
      +    "device": {
      +      "type": "string"
      +    },
      +    "featured_snippet": {
      +      "type": "null"
      +    },
      +    "from_snapshot": {
      +      "type": "boolean"
      +    },
      +    "google_url": {
      +      "type": "string"
      +    },
      +    "language": {
      +      "type": "string"
      +    },
      +    "local_pack": {
      +      "items": {},
      +      "type": "array"
      +    },
      +    "location": {
      +      "type": "string"
      +    },
      +    "organic_count": {
      +      "type": "number"
      +    },
      +    "organic_results": {
      +      "items": {
      +        "properties": {
      +          "breadcrumb": {
      +            "type": "string"
      +          },
      +          "description": {
      +            "type": "string"
      +          },
      +          "domain": {
      +            "type": "string"
      +          },
      +          "is_featured_snippet": {
      +            "type": "boolean"
      +          },
      +          "position": {
      +            "type": "number"
      +          },
      +          "rank_absolute": {
      +            "type": "number"
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "paid_results": {
      +      "items": {},
      +      "type": "array"
      +    },
      +    "people_also_ask": {
      +      "items": {},
      +      "type": "array"
      +    },
      +    "query": {
      +      "type": "string"
      +    },
      +    "related_searches": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "serp_features": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "total_results": {
      +      "type": "number"
      +    }
      +  },
      +  "type": "object"
      +}
  2. Changed4 schema fields changed
    • addedInput schema / properties / language / prefill
      Added value: +"English"
    • addedInput schema / properties / location / prefill
      Added value: +"United States"
    • addedInput schema / properties / queries / prefill
      Added value: +[
      +  "web scraping api"
      +]
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema
      Removed value: -{
      -  "description": "JSON Schema for rows in the dataset at `storages.datasets.default.id` — describes row shape only; the rows themselves are NOT returned inline in this response. Inferred from this Actor's historical successful runs. To fetch actual rows, call `get-dataset-items` with the dataset id and a `fields` projection drawn from this schema.",
      -  "properties": {
      -    "ai_overview": {
      -      "type": [
      -        "null",
      -        "string"
      -      ]
      -    },
      -    "checked_at": {
      -      "type": "string"
      -    },
      -    "device": {
      -      "type": "string"
      -    },
      -    "featured_snippet": {
      -      "type": "null"
      -    },
      -    "from_snapshot": {
      -      "type": "boolean"
      -    },
      -    "google_url": {
      -      "type": "string"
      -    },
      -    "language": {
      -      "type": "string"
      -    },
      -    "local_pack": {
      -      "items": {},
      -      "type": "array"
      -    },
      -    "location": {
      -      "type": "string"
      -    },
      -    "organic_count": {
      -      "type": "number"
      -    },
      -    "organic_results": {
      -      "items": {
      -        "properties": {
      -          "breadcrumb": {
      -            "type": "string"
      -          },
      -          "description": {
      -            "type": "string"
      -          },
      -          "domain": {
      -            "type": "string"
      -          },
      -          "is_featured_snippet": {
      -            "type": "boolean"
      -          },
      -          "position": {
      -            "type": "number"
      -          },
      -          "rank_absolute": {
      -            "type": "number"
      -          },
      -          "title": {
      -            "type": "string"
      -          },
      -          "url": {
      -            "type": [
      -              "string",
      -              "null"
      -            ]
      -          }
      -        },
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "paid_results": {
      -      "items": {},
      -      "type": "array"
      -    },
      -    "people_also_ask": {
      -      "items": {},
      -      "type": "array"
      -    },
      -    "query": {
      -      "type": "string"
      -    },
      -    "related_searches": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "serp_features": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "total_results": {
      -      "type": "number"
      -    }
      -  },
      -  "type": "object"
      -}
  3. Changed8 schema fields changed
    • addedInput schema / description
      Added value: +"Live lookups need a paid Apify plan (any plan). The pre-filled example works on the free plan."
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / ai_overview / type
      Previous value: -"null"New value: +[
      +  "null",
      +  "string"
      +]
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / error
      Removed value: -{
      -  "type": "string"
      -}
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / errorMessage
      Removed value: -{
      -  "type": "string"
      -}
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / from_snapshot
      Added value: +{
      +  "type": "boolean"
      +}
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / local_pack / items / properties
      Removed value: -{
      -  "domain": {
      -    "type": "string"
      -  },
      -  "rating": {
      -    "type": "number"
      -  },
      -  "title": {
      -    "type": "string"
      -  },
      -  "url": {
      -    "type": "string"
      -  }
      -}
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / local_pack / items / type
      Removed value: -"object"
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / url / type
      Previous value: -"null"New value: +[
      +  "string",
      +  "null"
      +]
  4. Changed1 schema field changed
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema
      Added value: +{
      +  "description": "JSON Schema for rows in the dataset at `storages.datasets.default.id` — describes row shape only; the rows themselves are NOT returned inline in this response. Inferred from this Actor's historical successful runs. To fetch actual rows, call `get-dataset-items` with the dataset id and a `fields` projection drawn from this schema.",
      +  "properties": {
      +    "ai_overview": {
      +      "type": "null"
      +    },
      +    "checked_at": {
      +      "type": "string"
      +    },
      +    "device": {
      +      "type": "string"
      +    },
      +    "error": {
      +      "type": "string"
      +    },
      +    "errorMessage": {
      +      "type": "string"
      +    },
      +    "featured_snippet": {
      +      "type": "null"
      +    },
      +    "google_url": {
      +      "type": "string"
      +    },
      +    "language": {
      +      "type": "string"
      +    },
      +    "local_pack": {
      +      "items": {
      +        "properties": {
      +          "domain": {
      +            "type": "string"
      +          },
      +          "rating": {
      +            "type": "number"
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "location": {
      +      "type": "string"
      +    },
      +    "organic_count": {
      +      "type": "number"
      +    },
      +    "organic_results": {
      +      "items": {
      +        "properties": {
      +          "breadcrumb": {
      +            "type": "string"
      +          },
      +          "description": {
      +            "type": "string"
      +          },
      +          "domain": {
      +            "type": "string"
      +          },
      +          "is_featured_snippet": {
      +            "type": "boolean"
      +          },
      +          "position": {
      +            "type": "number"
      +          },
      +          "rank_absolute": {
      +            "type": "number"
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "type": "null"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "paid_results": {
      +      "items": {},
      +      "type": "array"
      +    },
      +    "people_also_ask": {
      +      "items": {},
      +      "type": "array"
      +    },
      +    "query": {
      +      "type": "string"
      +    },
      +    "related_searches": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "serp_features": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "total_results": {
      +      "type": "number"
      +    }
      +  },
      +  "type": "object"
      +}
  5. Changed1 schema field changed
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema
      Removed value: -{
      -  "description": "JSON Schema for rows in the dataset at `storages.datasets.default.id` — describes row shape only; the rows themselves are NOT returned inline in this response. Inferred from this Actor's historical successful runs. To fetch actual rows, call `get-dataset-items` with the dataset id and a `fields` projection drawn from this schema.",
      -  "properties": {
      -    "ai_overview": {
      -      "type": "string"
      -    },
      -    "checked_at": {
      -      "type": "string"
      -    },
      -    "device": {
      -      "type": "string"
      -    },
      -    "featured_snippet": {
      -      "type": "null"
      -    },
      -    "google_url": {
      -      "type": "string"
      -    },
      -    "language": {
      -      "type": "string"
      -    },
      -    "local_pack": {
      -      "items": {},
      -      "type": "array"
      -    },
      -    "location": {
      -      "type": "string"
      -    },
      -    "organic_count": {
      -      "type": "number"
      -    },
      -    "organic_results": {
      -      "items": {
      -        "properties": {
      -          "breadcrumb": {
      -            "type": "string"
      -          },
      -          "description": {
      -            "type": [
      -              "null",
      -              "string"
      -            ]
      -          },
      -          "domain": {
      -            "type": "string"
      -          },
      -          "is_featured_snippet": {
      -            "type": "boolean"
      -          },
      -          "position": {
      -            "type": "number"
      -          },
      -          "rank_absolute": {
      -            "type": "number"
      -          },
      -          "title": {
      -            "type": "string"
      -          },
      -          "url": {
      -            "type": "string"
      -          }
      -        },
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "paid_results": {
      -      "items": {
      -        "properties": {
      -          "description": {
      -            "type": "string"
      -          },
      -          "domain": {
      -            "type": "string"
      -          },
      -          "title": {
      -            "type": "string"
      -          },
      -          "url": {
      -            "type": "string"
      -          }
      -        },
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "people_also_ask": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "query": {
      -      "type": "string"
      -    },
      -    "related_searches": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "serp_features": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "target_domain": {
      -      "type": "string"
      -    },
      -    "target_position": {
      -      "type": [
      -        "null",
      -        "number"
      -      ]
      -    },
      -    "target_url": {
      -      "type": [
      -        "null",
      -        "string"
      -      ]
      -    },
      -    "total_results": {
      -      "type": "number"
      -    }
      -  },
      -  "type": "object"
      -}
  6. Changed9 schema fields changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / ai_overview / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +"string"
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / from_snapshot
      Removed value: -{
      -  "type": "boolean"
      -}
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / local_pack / items / properties
      Removed value: -{
      -  "domain": {
      -    "type": "string"
      -  },
      -  "rating": {
      -    "type": "number"
      -  },
      -  "title": {
      -    "type": "string"
      -  },
      -  "url": {
      -    "type": "string"
      -  }
      -}
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / local_pack / items / type
      Removed value: -"object"
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / paid_results / items / properties
      Added value: +{
      +  "description": {
      +    "type": "string"
      +  },
      +  "domain": {
      +    "type": "string"
      +  },
      +  "title": {
      +    "type": "string"
      +  },
      +  "url": {
      +    "type": "string"
      +  }
      +}
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / paid_results / items / type
      Added value: +"object"
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / target_position / type
      Previous value: -"null"New value: +[
      +  "null",
      +  "number"
      +]
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / target_url / type
      Previous value: -"null"New value: +[
      +  "null",
      +  "string"
      +]
  7. Changed1 schema field changed
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema
      Added value: +{
      +  "description": "JSON Schema for rows in the dataset at `storages.datasets.default.id` — describes row shape only; the rows themselves are NOT returned inline in this response. Inferred from this Actor's historical successful runs. To fetch actual rows, call `get-dataset-items` with the dataset id and a `fields` projection drawn from this schema.",
      +  "properties": {
      +    "ai_overview": {
      +      "type": [
      +        "null",
      +        "string"
      +      ]
      +    },
      +    "checked_at": {
      +      "type": "string"
      +    },
      +    "device": {
      +      "type": "string"
      +    },
      +    "featured_snippet": {
      +      "type": "null"
      +    },
      +    "from_snapshot": {
      +      "type": "boolean"
      +    },
      +    "google_url": {
      +      "type": "string"
      +    },
      +    "language": {
      +      "type": "string"
      +    },
      +    "local_pack": {
      +      "items": {
      +        "properties": {
      +          "domain": {
      +            "type": "string"
      +          },
      +          "rating": {
      +            "type": "number"
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "location": {
      +      "type": "string"
      +    },
      +    "organic_count": {
      +      "type": "number"
      +    },
      +    "organic_results": {
      +      "items": {
      +        "properties": {
      +          "breadcrumb": {
      +            "type": "string"
      +          },
      +          "description": {
      +            "type": [
      +              "string",
      +              "null"
      +            ]
      +          },
      +          "domain": {
      +            "type": "string"
      +          },
      +          "is_featured_snippet": {
      +            "type": "boolean"
      +          },
      +          "position": {
      +            "type": "number"
      +          },
      +          "rank_absolute": {
      +            "type": "number"
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "paid_results": {
      +      "items": {},
      +      "type": "array"
      +    },
      +    "people_also_ask": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "query": {
      +      "type": "string"
      +    },
      +    "related_searches": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "serp_features": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "target_domain": {
      +      "type": "string"
      +    },
      +    "target_position": {
      +      "type": "null"
      +    },
      +    "target_url": {
      +      "type": "null"
      +    },
      +    "total_results": {
      +      "type": "number"
      +    }
      +  },
      +  "type": "object"
      +}
  8. Changed1 schema field changed
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema
      Removed value: -{
      -  "description": "JSON Schema for rows in the dataset at `storages.datasets.default.id` — describes row shape only; the rows themselves are NOT returned inline in this response. Inferred from this Actor's historical successful runs. To fetch actual rows, call `get-dataset-items` with the dataset id and a `fields` projection drawn from this schema.",
      -  "properties": {
      -    "ai_overview": {
      -      "type": "null"
      -    },
      -    "checked_at": {
      -      "type": "string"
      -    },
      -    "device": {
      -      "type": "string"
      -    },
      -    "featured_snippet": {
      -      "type": "null"
      -    },
      -    "from_snapshot": {
      -      "type": "boolean"
      -    },
      -    "google_url": {
      -      "type": "string"
      -    },
      -    "language": {
      -      "type": "string"
      -    },
      -    "local_pack": {
      -      "items": {},
      -      "type": "array"
      -    },
      -    "location": {
      -      "type": "string"
      -    },
      -    "organic_count": {
      -      "type": "number"
      -    },
      -    "organic_results": {
      -      "items": {
      -        "properties": {
      -          "breadcrumb": {
      -            "type": "string"
      -          },
      -          "description": {
      -            "type": "string"
      -          },
      -          "domain": {
      -            "type": "string"
      -          },
      -          "is_featured_snippet": {
      -            "type": "boolean"
      -          },
      -          "position": {
      -            "type": "number"
      -          },
      -          "rank_absolute": {
      -            "type": "number"
      -          },
      -          "title": {
      -            "type": "string"
      -          },
      -          "url": {
      -            "type": "string"
      -          }
      -        },
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "paid_results": {
      -      "items": {},
      -      "type": "array"
      -    },
      -    "people_also_ask": {
      -      "items": {},
      -      "type": "array"
      -    },
      -    "query": {
      -      "type": "string"
      -    },
      -    "related_searches": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "serp_features": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "total_results": {
      -      "type": "number"
      -    }
      -  },
      -  "type": "object"
      -}
  9. Changed1 schema field changed
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema
      Added value: +{
      +  "description": "JSON Schema for rows in the dataset at `storages.datasets.default.id` — describes row shape only; the rows themselves are NOT returned inline in this response. Inferred from this Actor's historical successful runs. To fetch actual rows, call `get-dataset-items` with the dataset id and a `fields` projection drawn from this schema.",
      +  "properties": {
      +    "ai_overview": {
      +      "type": "null"
      +    },
      +    "checked_at": {
      +      "type": "string"
      +    },
      +    "device": {
      +      "type": "string"
      +    },
      +    "featured_snippet": {
      +      "type": "null"
      +    },
      +    "from_snapshot": {
      +      "type": "boolean"
      +    },
      +    "google_url": {
      +      "type": "string"
      +    },
      +    "language": {
      +      "type": "string"
      +    },
      +    "local_pack": {
      +      "items": {},
      +      "type": "array"
      +    },
      +    "location": {
      +      "type": "string"
      +    },
      +    "organic_count": {
      +      "type": "number"
      +    },
      +    "organic_results": {
      +      "items": {
      +        "properties": {
      +          "breadcrumb": {
      +            "type": "string"
      +          },
      +          "description": {
      +            "type": "string"
      +          },
      +          "domain": {
      +            "type": "string"
      +          },
      +          "is_featured_snippet": {
      +            "type": "boolean"
      +          },
      +          "position": {
      +            "type": "number"
      +          },
      +          "rank_absolute": {
      +            "type": "number"
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "paid_results": {
      +      "items": {},
      +      "type": "array"
      +    },
      +    "people_also_ask": {
      +      "items": {},
      +      "type": "array"
      +    },
      +    "query": {
      +      "type": "string"
      +    },
      +    "related_searches": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "serp_features": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "total_results": {
      +      "type": "number"
      +    }
      +  },
      +  "type": "object"
      +}
  10. Changed1 schema field changed
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema
      Removed value: -{
      -  "description": "JSON Schema for rows in the dataset at `storages.datasets.default.id` — describes row shape only; the rows themselves are NOT returned inline in this response. Inferred from this Actor's historical successful runs. To fetch actual rows, call `get-dataset-items` with the dataset id and a `fields` projection drawn from this schema.",
      -  "properties": {
      -    "ai_overview": {
      -      "type": [
      -        "null",
      -        "string"
      -      ]
      -    },
      -    "checked_at": {
      -      "type": "string"
      -    },
      -    "device": {
      -      "type": "string"
      -    },
      -    "featured_snippet": {
      -      "type": "null"
      -    },
      -    "from_snapshot": {
      -      "type": "boolean"
      -    },
      -    "google_url": {
      -      "type": "string"
      -    },
      -    "language": {
      -      "type": "string"
      -    },
      -    "local_pack": {
      -      "items": {
      -        "properties": {
      -          "domain": {
      -            "type": "string"
      -          },
      -          "rating": {
      -            "type": "number"
      -          },
      -          "title": {
      -            "type": "string"
      -          },
      -          "url": {
      -            "type": "string"
      -          }
      -        },
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "location": {
      -      "type": "string"
      -    },
      -    "organic_count": {
      -      "type": "number"
      -    },
      -    "organic_results": {
      -      "items": {
      -        "properties": {
      -          "breadcrumb": {
      -            "type": "string"
      -          },
      -          "description": {
      -            "type": [
      -              "null",
      -              "string"
      -            ]
      -          },
      -          "domain": {
      -            "type": "string"
      -          },
      -          "is_featured_snippet": {
      -            "type": "boolean"
      -          },
      -          "position": {
      -            "type": "number"
      -          },
      -          "rank_absolute": {
      -            "type": "number"
      -          },
      -          "title": {
      -            "type": "string"
      -          },
      -          "url": {
      -            "type": "string"
      -          }
      -        },
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "paid_results": {
      -      "items": {
      -        "properties": {
      -          "description": {
      -            "type": "string"
      -          },
      -          "domain": {
      -            "type": "string"
      -          },
      -          "title": {
      -            "type": "string"
      -          },
      -          "url": {
      -            "type": "string"
      -          }
      -        },
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "people_also_ask": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "query": {
      -      "type": "string"
      -    },
      -    "related_searches": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "serp_features": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "target_domain": {
      -      "type": "string"
      -    },
      -    "target_position": {
      -      "type": "null"
      -    },
      -    "target_url": {
      -      "type": "null"
      -    },
      -    "total_results": {
      -      "type": "number"
      -    }
      -  },
      -  "type": "object"
      -}
  11. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  12. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  13. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  14. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  15. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  16. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  17. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  18. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  19. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  20. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  21. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  22. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  23. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  24. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  25. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  26. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  27. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  28. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  29. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  30. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  31. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  32. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  33. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  34. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  35. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "string",
      -  "null"
      -]New value: +[
      +  "null",
      +  "string"
      +]
  36. Changed1 schema field changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -[
      -  "null",
      -  "string"
      -]New value: +[
      +  "string",
      +  "null"
      +]
  37. Changed1 schema field changed
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / from_snapshot
      Added value: +{
      +  "type": "boolean"
      +}
  38. Changed1 schema field changed
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema
      Added value: +{
      +  "description": "JSON Schema for rows in the dataset at `storages.datasets.default.id` — describes row shape only; the rows themselves are NOT returned inline in this response. Inferred from this Actor's historical successful runs. To fetch actual rows, call `get-dataset-items` with the dataset id and a `fields` projection drawn from this schema.",
      +  "properties": {
      +    "ai_overview": {
      +      "type": [
      +        "null",
      +        "string"
      +      ]
      +    },
      +    "checked_at": {
      +      "type": "string"
      +    },
      +    "device": {
      +      "type": "string"
      +    },
      +    "featured_snippet": {
      +      "type": "null"
      +    },
      +    "google_url": {
      +      "type": "string"
      +    },
      +    "language": {
      +      "type": "string"
      +    },
      +    "local_pack": {
      +      "items": {
      +        "properties": {
      +          "domain": {
      +            "type": "string"
      +          },
      +          "rating": {
      +            "type": "number"
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "location": {
      +      "type": "string"
      +    },
      +    "organic_count": {
      +      "type": "number"
      +    },
      +    "organic_results": {
      +      "items": {
      +        "properties": {
      +          "breadcrumb": {
      +            "type": "string"
      +          },
      +          "description": {
      +            "type": [
      +              "null",
      +              "string"
      +            ]
      +          },
      +          "domain": {
      +            "type": "string"
      +          },
      +          "is_featured_snippet": {
      +            "type": "boolean"
      +          },
      +          "position": {
      +            "type": "number"
      +          },
      +          "rank_absolute": {
      +            "type": "number"
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "paid_results": {
      +      "items": {
      +        "properties": {
      +          "description": {
      +            "type": "string"
      +          },
      +          "domain": {
      +            "type": "string"
      +          },
      +          "title": {
      +            "type": "string"
      +          },
      +          "url": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "people_also_ask": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "query": {
      +      "type": "string"
      +    },
      +    "related_searches": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "serp_features": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "target_domain": {
      +      "type": "string"
      +    },
      +    "target_position": {
      +      "type": "null"
      +    },
      +    "target_url": {
      +      "type": "null"
      +    },
      +    "total_results": {
      +      "type": "number"
      +    }
      +  },
      +  "type": "object"
      +}
  39. Changed1 schema field changed
    • removedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema
      Removed value: -{
      -  "description": "JSON Schema for rows in the dataset at `storages.datasets.default.id` — describes row shape only; the rows themselves are NOT returned inline in this response. Inferred from this Actor's historical successful runs. To fetch actual rows, call `get-dataset-items` with the dataset id and a `fields` projection drawn from this schema.",
      -  "properties": {
      -    "ai_overview": {
      -      "type": [
      -        "null",
      -        "string"
      -      ]
      -    },
      -    "checked_at": {
      -      "type": "string"
      -    },
      -    "device": {
      -      "type": "string"
      -    },
      -    "featured_snippet": {
      -      "type": "null"
      -    },
      -    "from_snapshot": {
      -      "type": "boolean"
      -    },
      -    "google_url": {
      -      "type": "string"
      -    },
      -    "language": {
      -      "type": "string"
      -    },
      -    "local_pack": {
      -      "items": {},
      -      "type": "array"
      -    },
      -    "location": {
      -      "type": "string"
      -    },
      -    "organic_count": {
      -      "type": "number"
      -    },
      -    "organic_results": {
      -      "items": {
      -        "properties": {
      -          "breadcrumb": {
      -            "type": "string"
      -          },
      -          "description": {
      -            "type": [
      -              "string",
      -              "null"
      -            ]
      -          },
      -          "domain": {
      -            "type": "string"
      -          },
      -          "is_featured_snippet": {
      -            "type": "boolean"
      -          },
      -          "position": {
      -            "type": "number"
      -          },
      -          "rank_absolute": {
      -            "type": "number"
      -          },
      -          "title": {
      -            "type": "string"
      -          },
      -          "url": {
      -            "type": "string"
      -          }
      -        },
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "paid_results": {
      -      "items": {},
      -      "type": "array"
      -    },
      -    "people_also_ask": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "query": {
      -      "type": "string"
      -    },
      -    "related_searches": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "serp_features": {
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "target_domain": {
      -      "type": "string"
      -    },
      -    "target_position": {
      -      "type": [
      -        "null",
      -        "number"
      -      ]
      -    },
      -    "target_url": {
      -      "type": [
      -        "null",
      -        "string"
      -      ]
      -    },
      -    "total_results": {
      -      "type": "number"
      -    }
      -  },
      -  "type": "object"
      -}
  40. Changed6 schema fields changed
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / ai_overview / type
      Previous value: -"null"New value: +[
      +  "null",
      +  "string"
      +]
    • changedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / organic_results / items / properties / description / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / people_also_ask / items / type
      Added value: +"string"
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / target_domain
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / target_position
      Added value: +{
      +  "type": [
      +    "null",
      +    "number"
      +  ]
      +}
    • addedOutput schema / properties / storages / properties / datasets / properties / default / properties / itemsSchema / properties / target_url
      Added value: +{
      +  "type": [
      +    "null",
      +    "string"
      +  ]
      +}
  41. First observed

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the annotations, the description discloses two behaviors an agent cannot infer from structured fields: licensed data means 'no blocked runs' (reliability expectation) and pricing of $3 per 1,000 searches (cost consequence of batch size). The annotations already declare openWorldHint and destructiveHint, so the remaining burden is lighter. It does not mention run-time/polling behavior, but waitSecs and nextStep are already documented in the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The second sentence (the actor description) is dense and useful, but the opening sentence is boilerplate that restates the tool name and mechanism without adding information. The useful content is placed second rather than front-loaded, and pricing is buried at the end.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 7 optional parameters, full schema coverage, an output schema, and annotations supplied, the description only needs to convey what data comes back, its reliability, and its cost — all of which it does. Minor omissions such as per-run limits and polling behavior are already covered by schema fields, so the definition is close to complete for this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so every parameter (device, queries, language, location, waitSecs, targetDomain, resultsPerQuery) is already explained in the schema, including operator support and pricing implications of resultsPerQuery. The description adds no parameter-level meaning of its own, so the baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The actor description names the concrete resource and its contents: organic results, ads, featured snippet, People Also Ask, AI overview, local pack, and target-domain rank. That is far more specific than the wrapper sentence 'calls the Actor ... and retrieves its output results'. It does not differentiate from adjacent siblings such as rowfeed--google-ai-overview-tracker or rowfeed--google-images-api, so it stops short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied: the scope line ('any query, country, language and device') tells an agent what situations fit, and the price note hints at cost-sensitive use. There is no explicit when-to-use, when-not-to-use, or pointer to a sibling for a narrower need (e.g. AI-overview-only or image-only tracking), which is a notable gap given ~40 sibling scrapers.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.