Skip to main content
Glama

Google Search

google_search
Read-only

Get Google search results, including the AI Overview and People also ask.

Input Schema

NameRequiredDescriptionDefault
qNoGoogle Search query, up to 2,048 characters. Required unless ludocid, kgmid, or page_token is supplied.
crNoOne or more countryXX restrictions joined with |.
glNoLowercase two-letter country localization code.
hlNoGoogle interface and result language code.en
lrNoOne or more lang_xx restrictions joined with |.
oqNoOriginal query associated with an autocomplete selection.
siNoOpaque cached Google search context.
ibpNoGoogle layout or expansion control.
latNoLatitude from -90 through 90. Requires lon and conflicts with location and uule.
lonNoLongitude from -180 through 180. Requires lat and conflicts with location and uule.
numNoBest-effort first-page result count, 1 to 10.
pwsNoGoogle personalization control; 0 asks for non-personalized results.
tbmNoGoogle vertical: lcl, vid, nws, shop, or pts. For image searches, use /api/google/images.
tbsNoGoogle native date or search filter string.
udsNoOpaque Google filter token.
as_qNoAdditional all-of search terms.
lsigNoOpaque Knowledge Graph or local-pack signature.
nfprNoGoogle auto-correction control.
safeNoGoogle adult-content filtering.
uuleNoPre-encoded Google location value. Conflicts with location and lat/lon.
as_dtNoIncludes or excludes as_sitesearch. Requires as_sitesearch.
as_eqNoExcluded phrase query.
as_lqNoRequire results that link to this URL.
as_oqNoAny-of search terms.
as_rqNoFind pages related to this URL.
gs_lpNoGoogle gs_lp value associated with an autocomplete selection.
kgmidNoGoogle Knowledge Graph machine ID, such as /m/0k8z.
startNoNon-negative Google result offset. Prefer page_token to repeating the same search with start=10, start=20, or another offset.
as_epqNoExact phrase query.
as_nhiNoInclusive range upper bound. Requires as_nlo.
as_nloNoInclusive range lower bound. Requires as_nhi.
as_qdrNoQuick range d, w, m, or y with an optional positive count.
deviceNoRequest device profile and radius bound.desktop
filterNoGoogle similar-result filtering control.
radiusNoDecimal search-bias radius in meters. Requires location or lat/lon. Desktop: 1–199; tablet/mobile: 1–1,000.
ludocidNoGoogle local CID used to search for one entity.
sclientNoGoogle client identifier such as gws-wiz-serp.
locationNoHuman-readable city-level location encoded to UULE by Litescrape. Conflicts with uule and lat/lon.
peek_pwsNoGoogle personalization peek flag, forwarded unchanged.
fast_modeNoReturn organic results only, skipping AI Overview and all other result groups. Keeps search metadata and parameters. Omits cross-module position_absolute.
page_tokenNoOpaque token from pagination.next_page_token. Send it alone to fetch the next page with the original search parameters. Prefer page_token to repeating the same search with start=10, start=20, or another offset. Send the token as soon as possible and no later than 5 minutes after receiving it. Available for ordinary Google Search, including fast mode; not available for tbm verticals. search_metadata.continuation is followed for a direct request. If Google omits a required link or the deadline expires, the request fails without billing.
color_schemeNoGoogle result color presentation.
as_sitesearchNoSite hostname to include or exclude.
google_domainNoResults use google.com. Use gl, hl, cr, lr or geography for localization.google.com
result_groupsNoReturn only these top-level result groups, e.g. ["organic_results", "knowledge_graph"]; omit for the complete response. search_metadata is always kept

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed154 schema fields changed
    • removedInput schema / $schema
      Removed value: -"http://json-schema.org/draft-07/schema#"
    • addedInput schema / properties / as_dt
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "i",
      +        "e"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Includes or excludes as_sitesearch.\n\nRequires as_sitesearch.",
      +  "title": "As Dt"
      +}
    • addedInput schema / properties / as_epq
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 2048,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Exact phrase query.",
      +  "title": "As Epq"
      +}
    • addedInput schema / properties / as_eq
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 2048,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Excluded phrase query.",
      +  "title": "As Eq"
      +}
    • addedInput schema / properties / as_lq
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 4096,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Require results that link to this URL.",
      +  "title": "As Lq"
      +}
    • addedInput schema / properties / as_nhi
      Added value: +{
      +  "anyOf": [
      +    {
      +      "minimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Inclusive range upper bound.\n\nRequires as_nlo.",
      +  "title": "As Nhi"
      +}
    • addedInput schema / properties / as_nlo
      Added value: +{
      +  "anyOf": [
      +    {
      +      "minimum": 0,
      +      "type": "integer"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Inclusive range lower bound.\n\nRequires as_nhi.",
      +  "title": "As Nlo"
      +}
    • addedInput schema / properties / as_oq
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 2048,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Any-of search terms.",
      +  "title": "As Oq"
      +}
    • addedInput schema / properties / as_q
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 2048,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Additional all-of search terms.",
      +  "title": "As Q"
      +}
    • addedInput schema / properties / as_qdr / anyOf
      Added value: +[
      +  {
      +    "pattern": "^[dwmy](?:[1-9][0-9]*)?$",
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / as_qdr / default
      Added value: +null
    • changedInput schema / properties / as_qdr / description
      Previous value: -"Date range: d, w, m or y with an optional count, e.g. d7 for the past week"New value: +"Quick range d, w, m, or y with an optional positive count."
    • addedInput schema / properties / as_qdr / title
      Added value: +"As Qdr"
    • removedInput schema / properties / as_qdr / type
      Removed value: -"string"
    • addedInput schema / properties / as_rq
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 4096,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Find pages related to this URL.",
      +  "title": "As Rq"
      +}
    • addedInput schema / properties / as_sitesearch / anyOf
      Added value: +[
      +  {
      +    "maxLength": 253,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / as_sitesearch / default
      Added value: +null
    • changedInput schema / properties / as_sitesearch / description
      Previous value: -"Restrict results to this hostname"New value: +"Site hostname to include or exclude."
    • removedInput schema / properties / as_sitesearch / maxLength
      Removed value: -253
    • addedInput schema / properties / as_sitesearch / title
      Added value: +"As Sitesearch"
    • removedInput schema / properties / as_sitesearch / type
      Removed value: -"string"
    • addedInput schema / properties / color_scheme
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "light",
      +        "dark"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Google result color presentation.",
      +  "title": "Color Scheme"
      +}
    • addedInput schema / properties / cr / anyOf
      Added value: +[
      +  {
      +    "pattern": "^country[A-Z]{2}(?:\\|country[A-Z]{2})*$",
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / cr / default
      Added value: +null
    • changedInput schema / properties / cr / description
      Previous value: -"Country restrict such as countryUS|countryCA"New value: +"One or more countryXX restrictions joined with |."
    • addedInput schema / properties / cr / title
      Added value: +"Cr"
    • removedInput schema / properties / cr / type
      Removed value: -"string"
    • addedInput schema / properties / device / default
      Added value: +"desktop"
    • changedInput schema / properties / device / description
      Previous value: -"Layout to request; default desktop"New value: +"Request device profile and radius bound."
    • addedInput schema / properties / device / title
      Added value: +"Device"
    • addedInput schema / properties / fast_mode / default
      Added value: +false
    • changedInput schema / properties / fast_mode / description
      Previous value: -"true returns only organic_results (faster and smaller); skips AI Overview, Knowledge Graph, ads and every other module"New value: +"Return organic results only, skipping AI Overview and all other result groups.\n\nKeeps search metadata and parameters. Omits cross-module position_absolute."
    • addedInput schema / properties / fast_mode / title
      Added value: +"Fast Mode"
    • addedInput schema / properties / filter / anyOf
      Added value: +[
      +  {
      +    "enum": [
      +      "0",
      +      "1"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / filter / default
      Added value: +null
    • changedInput schema / properties / filter / description
      Previous value: -"0 disables duplicate-content filtering"New value: +"Google similar-result filtering control."
    • removedInput schema / properties / filter / enum
      Removed value: -[
      -  "0",
      -  "1"
      -]
    • addedInput schema / properties / filter / title
      Added value: +"Filter"
    • removedInput schema / properties / filter / type
      Removed value: -"string"
    • addedInput schema / properties / gl / anyOf
      Added value: +[
      +  {
      +    "pattern": "^[a-z]{2}$",
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / gl / default
      Added value: +null
    • changedInput schema / properties / gl / description
      Previous value: -"Two-letter country for localization, e.g. \"us\""New value: +"Lowercase two-letter country localization code."
    • removedInput schema / properties / gl / maxLength
      Removed value: -2
    • removedInput schema / properties / gl / minLength
      Removed value: -2
    • addedInput schema / properties / gl / title
      Added value: +"Gl"
    • removedInput schema / properties / gl / type
      Removed value: -"string"
    • addedInput schema / properties / google_domain / default
      Added value: +"google.com"
    • changedInput schema / properties / google_domain / description
      Previous value: -"Google domain such as google.co.uk; default google.com"New value: +"Results use google.com. Use gl, hl, cr, lr or geography for localization."
    • addedInput schema / properties / google_domain / title
      Added value: +"Google Domain"
    • addedInput schema / properties / gs_lp
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 4096,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Google gs_lp value associated with an autocomplete selection.",
      +  "title": "Gs Lp"
      +}
    • addedInput schema / properties / hl / default
      Added value: +"en"
    • changedInput schema / properties / hl / description
      Previous value: -"Language code such as \"en\" or \"en-GB\"; default en"New value: +"Google interface and result language code."
    • removedInput schema / properties / hl / maxLength
      Removed value: -10
    • removedInput schema / properties / hl / minLength
      Removed value: -2
    • addedInput schema / properties / hl / pattern
      Added value: +"^[a-z]{2,3}(?:-[A-Za-z]{2,8})?$"
    • addedInput schema / properties / hl / title
      Added value: +"Hl"
    • addedInput schema / properties / ibp
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 4096,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Google layout or expansion control.",
      +  "title": "Ibp"
      +}
    • addedInput schema / properties / kgmid / anyOf
      Added value: +[
      +  {
      +    "maxLength": 512,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / kgmid / default
      Added value: +null
    • changedInput schema / properties / kgmid / description
      Previous value: -"Knowledge Graph machine ID such as /m/0k8z"New value: +"Google Knowledge Graph machine ID, such as /m/0k8z."
    • addedInput schema / properties / kgmid / title
      Added value: +"Kgmid"
    • removedInput schema / properties / kgmid / type
      Removed value: -"string"
    • addedInput schema / properties / lat / anyOf
      Added value: +[
      +  {
      +    "maximum": 90,
      +    "minimum": -90,
      +    "type": "number"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / lat / default
      Added value: +null
    • changedInput schema / properties / lat / description
      Previous value: -"Latitude; supply together with lon"New value: +"Latitude from -90 through 90.\n\nRequires lon and conflicts with location and uule."
    • removedInput schema / properties / lat / maximum
      Removed value: -90
    • removedInput schema / properties / lat / minimum
      Removed value: --90
    • addedInput schema / properties / lat / title
      Added value: +"Lat"
    • removedInput schema / properties / lat / type
      Removed value: -"number"
    • addedInput schema / properties / location / anyOf
      Added value: +[
      +  {
      +    "maxLength": 512,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / location / default
      Added value: +null
    • changedInput schema / properties / location / description
      Previous value: -"Named search origin such as \"Austin, Texas\"; conflicts with uule and lat/lon"New value: +"Human-readable city-level location encoded to UULE by Litescrape.\n\nConflicts with uule and lat/lon."
    • removedInput schema / properties / location / maxLength
      Removed value: -512
    • addedInput schema / properties / location / title
      Added value: +"Location"
    • removedInput schema / properties / location / type
      Removed value: -"string"
    • addedInput schema / properties / lon / anyOf
      Added value: +[
      +  {
      +    "maximum": 180,
      +    "minimum": -180,
      +    "type": "number"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / lon / default
      Added value: +null
    • changedInput schema / properties / lon / description
      Previous value: -"Longitude; supply together with lat"New value: +"Longitude from -180 through 180.\n\nRequires lat and conflicts with location and uule."
    • removedInput schema / properties / lon / maximum
      Removed value: -180
    • removedInput schema / properties / lon / minimum
      Removed value: --180
    • addedInput schema / properties / lon / title
      Added value: +"Lon"
    • removedInput schema / properties / lon / type
      Removed value: -"number"
    • addedInput schema / properties / lr / anyOf
      Added value: +[
      +  {
      +    "pattern": "^lang_[a-z]{2,3}(?:\\|lang_[a-z]{2,3})*$",
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / lr / default
      Added value: +null
    • changedInput schema / properties / lr / description
      Previous value: -"Language restrict such as lang_en|lang_fr"New value: +"One or more lang_xx restrictions joined with |."
    • addedInput schema / properties / lr / title
      Added value: +"Lr"
    • removedInput schema / properties / lr / type
      Removed value: -"string"
    • addedInput schema / properties / lsig
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 4096,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Opaque Knowledge Graph or local-pack signature.",
      +  "title": "Lsig"
      +}
    • addedInput schema / properties / ludocid / anyOf
      Added value: +[
      +  {
      +    "maxLength": 128,
      +    "pattern": "^\\d+$",
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / ludocid / default
      Added value: +null
    • changedInput schema / properties / ludocid / description
      Previous value: -"Google CID of a local entity, for a targeted lookup"New value: +"Google local CID used to search for one entity."
    • addedInput schema / properties / ludocid / title
      Added value: +"Ludocid"
    • removedInput schema / properties / ludocid / type
      Removed value: -"string"
    • addedInput schema / properties / nfpr / anyOf
      Added value: +[
      +  {
      +    "enum": [
      +      "0",
      +      "1"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / nfpr / default
      Added value: +null
    • changedInput schema / properties / nfpr / description
      Previous value: -"1 disables spelling auto-correction"New value: +"Google auto-correction control."
    • removedInput schema / properties / nfpr / enum
      Removed value: -[
      -  "0",
      -  "1"
      -]
    • addedInput schema / properties / nfpr / title
      Added value: +"Nfpr"
    • removedInput schema / properties / nfpr / type
      Removed value: -"string"
    • addedInput schema / properties / num / anyOf
      Added value: +[
      +  {
      +    "maximum": 10,
      +    "minimum": 1,
      +    "type": "integer"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / num / default
      Added value: +null
    • changedInput schema / properties / num / description
      Previous value: -"Requested result count, 1-10; Google may return fewer"New value: +"Best-effort first-page result count, 1 to 10."
    • removedInput schema / properties / num / maximum
      Removed value: -10
    • removedInput schema / properties / num / minimum
      Removed value: -1
    • addedInput schema / properties / num / title
      Added value: +"Num"
    • removedInput schema / properties / num / type
      Removed value: -"integer"
    • addedInput schema / properties / oq
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 2048,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Original query associated with an autocomplete selection.",
      +  "title": "Oq"
      +}
    • addedInput schema / properties / page_token
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 32768,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Opaque token from pagination.next_page_token. Send it alone to fetch the next page with the original search parameters.\n\nPrefer page_token to repeating the same search with start=10, start=20, or another offset. Send the token as soon as possible and no later than 5 minutes after receiving it. Available for ordinary Google Search, including fast mode; not available for tbm verticals. search_metadata.continuation is followed for a direct request. If Google omits a required link or the deadline expires, the request fails without billing.",
      +  "title": "Page Token"
      +}
    • addedInput schema / properties / peek_pws
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "0",
      +        "1"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Google personalization peek flag, forwarded unchanged.",
      +  "title": "Peek Pws"
      +}
    • addedInput schema / properties / pws
      Added value: +{
      +  "anyOf": [
      +    {
      +      "enum": [
      +        "0",
      +        "1"
      +      ],
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Google personalization control; 0 asks for non-personalized results.",
      +  "title": "Pws"
      +}
    • addedInput schema / properties / q / anyOf
      Added value: +[
      +  {
      +    "maxLength": 2048,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / q / default
      Added value: +null
    • changedInput schema / properties / q / description
      Previous value: -"Search query; required unless ludocid or kgmid is supplied"New value: +"Google Search query, up to 2,048 characters.\n\nRequired unless ludocid, kgmid, or page_token is supplied."
    • removedInput schema / properties / q / maxLength
      Removed value: -2048
    • removedInput schema / properties / q / minLength
      Removed value: -1
    • addedInput schema / properties / q / title
      Added value: +"Q"
    • removedInput schema / properties / q / type
      Removed value: -"string"
    • addedInput schema / properties / radius / anyOf
      Added value: +[
      +  {
      +    "maximum": 1000,
      +    "minimum": 1,
      +    "type": "number"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / radius / default
      Added value: +null
    • changedInput schema / properties / radius / description
      Previous value: -"Radius in meters around the location or coordinates"New value: +"Decimal search-bias radius in meters.\n\nRequires location or lat/lon. Desktop: 1–199; tablet/mobile: 1–1,000."
    • removedInput schema / properties / radius / exclusiveMinimum
      Removed value: -0
    • addedInput schema / properties / radius / title
      Added value: +"Radius"
    • removedInput schema / properties / radius / type
      Removed value: -"number"
    • addedInput schema / properties / safe / anyOf
      Added value: +[
      +  {
      +    "enum": [
      +      "active",
      +      "off"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / safe / default
      Added value: +null
    • changedInput schema / properties / safe / description
      Previous value: -"SafeSearch"New value: +"Google adult-content filtering."
    • removedInput schema / properties / safe / enum
      Removed value: -[
      -  "active",
      -  "off"
      -]
    • addedInput schema / properties / safe / title
      Added value: +"Safe"
    • removedInput schema / properties / safe / type
      Removed value: -"string"
    • addedInput schema / properties / sclient
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 64,
      +      "pattern": "^[A-Za-z0-9._-]+$",
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Google client identifier such as gws-wiz-serp.",
      +  "title": "Sclient"
      +}
    • addedInput schema / properties / si
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 4096,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Opaque cached Google search context.",
      +  "title": "Si"
      +}
    • addedInput schema / properties / start / default
      Added value: +0
    • changedInput schema / properties / start / description
      Previous value: -"Result offset for pagination"New value: +"Non-negative Google result offset.\n\nPrefer page_token to repeating the same search with start=10, start=20, or another offset."
    • addedInput schema / properties / start / title
      Added value: +"Start"
    • addedInput schema / properties / tbm / anyOf
      Added value: +[
      +  {
      +    "enum": [
      +      "lcl",
      +      "vid",
      +      "nws",
      +      "shop",
      +      "pts"
      +    ],
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / tbm / default
      Added value: +null
    • changedInput schema / properties / tbm / description
      Previous value: -"Vertical: lcl local, vid videos, nws news, shop shopping, pts patents"New value: +"Google vertical: lcl, vid, nws, shop, or pts. For image searches, use /api/google/images."
    • removedInput schema / properties / tbm / enum
      Removed value: -[
      -  "lcl",
      -  "vid",
      -  "nws",
      -  "shop",
      -  "pts"
      -]
    • addedInput schema / properties / tbm / title
      Added value: +"Tbm"
    • removedInput schema / properties / tbm / type
      Removed value: -"string"
    • addedInput schema / properties / tbs / anyOf
      Added value: +[
      +  {
      +    "maxLength": 4096,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / tbs / default
      Added value: +null
    • changedInput schema / properties / tbs / description
      Previous value: -"Google search-filter string, e.g. qdr:w for the past week"New value: +"Google native date or search filter string."
    • removedInput schema / properties / tbs / maxLength
      Removed value: -4096
    • addedInput schema / properties / tbs / title
      Added value: +"Tbs"
    • removedInput schema / properties / tbs / type
      Removed value: -"string"
    • addedInput schema / properties / uds
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 4096,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Opaque Google filter token.",
      +  "title": "Uds"
      +}
    • addedInput schema / properties / uule / anyOf
      Added value: +[
      +  {
      +    "maxLength": 2048,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / uule / default
      Added value: +null
    • changedInput schema / properties / uule / description
      Previous value: -"Pre-encoded Google location token; conflicts with location"New value: +"Pre-encoded Google location value.\n\nConflicts with location and lat/lon."
    • removedInput schema / properties / uule / maxLength
      Removed value: -2048
    • addedInput schema / properties / uule / title
      Added value: +"Uule"
    • removedInput schema / properties / uule / type
      Removed value: -"string"
    • addedInput schema / title
      Added value: +"GoogleSearch"
  2. Changed2 schema fields changed
    • changedInput schema / properties / num / description
      Previous value: -"Requested result count, 1-100; Google may return fewer"New value: +"Requested result count, 1-10; Google may return fewer"
    • changedInput schema / properties / num / maximum
      Previous value: -100New value: +10
  3. First observed

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true and idempotentHint=false, so the safety profile is covered and the description does not contradict it. The description adds the useful content note that results include AI Overview and People also ask, but says nothing about pagination token expiry, rate/billing behavior, or the effect of fast_mode, which are left entirely to 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.

Conciseness4/5

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

A single front-loaded sentence with zero wasted words, and the most notable output feature is placed early. It is arguably under-sized for a 45-parameter tool, but there is no padding or structural clutter.

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

Completeness3/5

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

For a very complex tool with 45 optional parameters and no output schema, the description is thin: it never mentions pagination, result_group selection, localization, or the fact that output shape varies by tbm vertical. The unusually rich schema compensates for most parameter gaps, but the result-shape story is only half told.

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% across all 45 parameters, so the schema fully documents the inputs and the baseline is 3. The description adds no parameter meaning of its own, not even pointing at the key levers (q, fast_mode, page_token, localization), so it neither compensates nor detracts.

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 description states a specific verb and resource ('Get Google search results') and adds that the response includes the AI Overview and People also ask panels, which is more than a restatement of the name. It does not distinguish itself from sibling search tools (bing_search, duckduckgo_search) or from google_maps, leaving the agent to infer the difference from the name alone.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no mention of alternatives among the sibling search tools, and no conditions under which this tool should be avoided. Useful routing hints exist in the schema (fast_mode, page_token over start offsets, tbm image searches going to a different endpoint), but none of that is surfaced in the description.

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.