Skip to main content
Glama
HasData

Google Search MCP Server

Google Search MCP Server (SERP)

호스팅형 Model Context Protocol (MCP) 서버로, Claude, Cursor, Windsurf 및 다른 모든 MCP 클라이언트에 8개의 읽기 전용 Google Search 도구를 제공합니다. 라이브 SERP를 AI Overview 및 People Also Ask와 함께 가져오고, Google AI Mode 리를 실행하며, 뉴스, 핑, 제품 상세, 숏비디오 결과를 모두 구저화된 JSON으로 읽을 수 있습니다. Google Cloud 프로젝트나 검색 엔진 설정이 필요 없습니다.

https://mcp.hasdata.com/api/mcp?apis=google_serp

Glama score tool contract MCP Tools npm PyPI License

"SERP"와 "Google Search"는 여기서 동일한 제품입니다. 이 서버는 Google 검색 결과 페이지를 파싱하여 반환합니다.

목차

Related MCP server: DuckDuckGo MCP Server

필요한 것

커스텀 헤더와 함께 streamable HTTP를 지원하는 MCP 클라이언트가 필요합니다. 대시보드에서 HasData API 키를 만들 수 있으며, 카드 없이 무료로 생성 가능하고, 평가판은 도구에 따라 약 100~200회의 호출을 포함합니다. 그 외에는 필요하지 않습니다. 이 서버는 원격 서버이므로 URL과 헤더 하나가 가장 간단한 방법이며, Google Cloud 프로젝트나 Programmable Search Engine을 설정할 필요가 없습니다. stdio 전용 클라이언트는 @hasdata/google-search-mcp (npm) 또는 hasdata-google-search-mcp (PyPI) 런처를 대신 사용할 수 있습니다.

빠른 시작

URL

https://mcp.hasdata.com/api/mcp?apis=google_serp

전송 방식

HTTP, streamable

인증 헤더

x-api-key: HASDATA_API_KEY

서버 URL은 모든 클라이언트에서 동일합니다. Claude Code와 Claude Desktop에서 직접 실행해 보았습니다. 나머지 블록은 각 클라이언트가 원격 서버에 대해 문서화한 형식을 따릅니다.

OAuth를 지원하는 클라이언트는 동일한 URL을 커넥터로 추가하고 구성 파일에 키를 넣지 않고 로그인할 수 있습니다.

claude mcp add --transport http google-search "https://mcp.hasdata.com/api/mcp?apis=google_serp" \
  --header "x-api-key: HASDATA_API_KEY"

Claude Desktop은 구성 파일에서 로컬(stdio) 서버만 로드하므로, stdio 런처를 통해 원격 서버에 연결합니다. @hasdata/google-search-mcp 패키지가 바로 그 런처이며, 환경 변수에서 키를 읽습니다.

claude_desktop_config.json:

{
  "mcpServers": {
    "google-search": {
      "command": "npx",
      "args": ["-y", "@hasdata/google-search-mcp"],
      "env": { "HASDATA_API_KEY": "YOUR_KEY" }
    }
  }
}

Node 대신 Python을 사용하시나요? 런처를 PyPI 패키지로 바꾸면 됩니다. uvx가 수동 설치 없이 실행합니다:

{
  "mcpServers": {
    "google-search": {
      "command": "uvx",
      "args": ["hasdata-google-search-mcp"],
      "env": { "HASDATA_API_KEY": "YOUR_KEY" }
    }
  }
}

OAuth를 지원하는 클라이언트라면 URL을 커스텀 커넥터로 추가하고 런처를 건너뛸 수도 있습니다.

{
  "mcpServers": {
    "google-search": {
      "url": "https://mcp.hasdata.com/api/mcp?apis=google_serp",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}
{
  "mcpServers": {
    "google-search": {
      "serverUrl": "https://mcp.hasdata.com/api/mcp?apis=google_serp",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}
{
  "mcpServers": {
    "google-search": {
      "url": "https://mcp.hasdata.com/api/mcp?apis=google_serp",
      "type": "streamableHttp",
      "headers": { "x-api-key": "HASDATA_API_KEY" },
      "disabled": false
    }
  }
}
{
  "servers": {
    "google-search": {
      "type": "http",
      "url": "https://mcp.hasdata.com/api/mcp?apis=google_serp",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}
{
  "mcpServers": {
    "google-search": {
      "httpUrl": "https://mcp.hasdata.com/api/mcp?apis=google_serp",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}

예시 프롬프트

Google에서 best running shoes를 검색하고 자연 검색 상위 10개와 AI Overview를 알려주세요.

한 번의 호출, 10크레딧입니다. SERP 응답에는 자연 검색 결과와 함께 AI Overview가 인라인으로 포함됩니다.

같은 쿼리에 대해 각 People Also Ask 질문을 가져와 출처와 함께 AI Overview 답변을 추출하세요.

질문당 한 번의 호출, 각 5크레딧입니다. 각 relatedQuestions 항목에는 aiOverview.pageToken이 들어 있으며, AI Overview 도구가 그 토큰을 답변 블록과 참조 목록으로 변환합니다.

Google AI Mode에 what is the Model Context Protocol을 질문하고 인용과 함께 답변을 주세요.

한 번의 호출, 10크레딧입니다. AI Mode는 생성된 답변을 참조 목록과 함께 텍스트 블록으로 반환합니다.

Google Shopping에서 nike air max를 검색한 다음, 상위 결과의 전체 제품 카드를 가져오세요: 판매하는 모든 스토어, 가격 범위, 리뷰 분석을 포함합니다.

두 번의 호출입니다. Shopping은 10크레딧이며 제품별 토큰을 반환하고, 몰입형 제품 도구는 5크레딧으로 그 토큰을 스토어, 변형, 리뷰로 확장합니다.

artificial intelligence에 대한 최신 Google News를 가져오고, 별도로 cooking pasta에 대한 숏비디오 결과를 가져오세요.

두 번의 호출, 각각 10크레딧입니다.

이 워크플로는 두 가지 체인에 의존합니다. SERP 응답은 aiOverview를 인라인으로, 그리고 모든 People Also Ask 질문에 pageToken을 함께 반환하므로, Google의 생성형 답변을 추출하는 것은 검색과 함께 무료이거나 질문당 5크레딧의 후속 호출 한 번이면 됩니다. 쇼핑 결과도 마찬가지로 제품별 토큰을 반환하므로, 목록에서 전체 멀티스토어 카드로 넘어가는 것은 단 한 번의 호출입니다.

도구

8개의 도구이며 모두 읽기 전용입니다. 아래 샘플은 실제 호출에서 축약한 것으로, 결과는 Google의 변경에 따라 달라지므로 형태를 보여주는 것으로 이해하세요. 각 도구 이름은 엔드포인트 참조 문서로 연결됩니다.

샘플은 전체 응답이 아니라 페이로드입니다. tools/call 결과에는 텍스트 블록 하나가 포함되며, 그 텍스트 자체가 url, status, text, json을 담은 JSON이고, 스크래핑된 데이터는 json 아래에 있습니다. 원시 JSON-RPC 응답에서 경로는 result.content[0].text를 파싱한 다음 .json입니다. 채팅 클라이언트는 이를 자동으로 풀어주지만, 엔드포인트에 직접 연결하는 코드는 그렇지 않습니다.

Google SERP

hasdata_google_serp_serp_getSearchResults

쿼리에 대한 전체 결과 페이지입니다.

파라미터

유형

필수

설명

q

string

예

사용자가 입력하는 그대로의 검색어

gl / hl

string

두 글자 국가 및 언어 코드

location / uule

string

검색의 지리적 위치, 이름 또는 uule 문자열로 지정

num

number

페이지당 대략적인 결과 수. Google은 이제 페이지당 약 10개로 제한하며 그 이상은 무시하므로, num이 10을 초과하면 더 가져오지 않습니다

start

number

페이지 나누기를 위한 결과 오프셋

tbm / tbs

string

검색 유형 및 고급 필터, 원시 Google 파라미터

deviceType

string

desktop, mobile 또는 tablet

searchInformation, organicResults, aiOverview, relatedQuestions, relatedSearches, perspectives, immersiveProducts, pagination을 반환하며, Google이 쿼리에 대해 표시하는 블록들이 함께 포함됩니다. 자연 검색 항목에는 position, title, link, displayedLink, source, snippet, snippetHighlitedWords, date, images가 포함됩니다.

AI Overview는 두 가지 방식으로 제공됩니다. 보통 aiOverview는 인라인이며, textBlocks와 references를 바로 읽을 수 있습니다. 때로는 Google이 이를 토큰 뒤에 숨기는데, 그 경우 aiOverview는 블록 대신 pageToken과 hasdataLink를 담습니다. 모든 relatedQuestions 항목도 두 번째 경우에 해당합니다. 항목에는 question과 동일한 pageToken 및 hasdataLink를 가진 aiOverview가 들어 있으며, 아래의 AI Overview 도구가 이를 확장합니다. 따라서 People Also Ask 답변은 토큰을 하나씩 가져와 읽는 AI Overview입니다. 최상위 aiOverview는 대부분의 쿼리에서 인라인이고 일부에서는 토큰이므로, 두 가지 방식 모두로 읽어야 합니다.

{
  "organicResults": [
    {
      "position": 1,
      "title": "The 15 Best Running Shoes of 2026",
      "link": "https://www.runnersworld.com/gear/a19663621/best-running-shoes/",
      "source": "Runner's World",
      "snippet": "The Brooks Ghost is our No. 1 shoe when we recommend new trainers…"
    }
  ],
  "aiOverview": {
    "textBlocks": [ { "type": "paragraph", "snippet": "The best running shoes depend on your goal…" } ],
    "references": [ { "index": 0, "title": "7 Best Running Shoes in 2026 - RunRepeat", "link": "https://runrepeat.com/guides/best-running-shoes" } ]
  },
  "relatedQuestions": [
    { "question": "What are the top 5 best running shoes?", "aiOverview": { "pageToken": "eyJpZCI6…", "hasdataLink": "https://api.hasdata.com/scrape/google/ai-overview?pageToken=eyJpZCI6…" } }
  ],
  "pagination": { "next": "…" }
}

Google AI Overview

hasdata_google_serp_ai_overview_getAiOverviewResponse

AI Overview 토큰을 해당 답변으로 확장합니다.

파라미터

유형

필수

설명

pageToken

string

예

SERP 응답의 aiOverview.pageToken으로, relatedQuestions의 것도 포함합니다. 이 토큰 객체에는 hasdataLink도 포함되어 있는데, 이 도구 없이도 같은 답변을 가져올 수 있는 준비된 REST URL입니다.

textBlocks와 references가 포함된 aiOverview를 반환합니다. 이는 SERP가 블록 대신 토큰을 주었을 때 AI Overview를 읽는 방법이며, 각 People Also Ask 질문을 인용이 포함된 답변으로 바꾸는 방법입니다.

토큰의 유효 기간은 약 4분입니다. 만료된 토큰은 빈 응답을 반환하지 않고 도구 오류로 실패하며, HasData API error: 400 Bad Request 텍스트와 함께 isError: true가 반환됩니다. 잘못된 키를 처리하는 방식과 동일하게 처리한 다음, 새 토큰을 얻기 위해 SERP를 다시 실행하세요.

{
  "aiOverview": {
    "textBlocks": [ { "type": "paragraph", "snippet": "The top five running shoes feature versatile options for daily training and racing…" } ],
    "references": [ { "index": 0, "title": "…", "link": "https://…" } ]
  }
}

Google AI Mode

hasdata_google_serp_ai_mode_getAiModeResponse

쿼리에 대한 Google의 AI Mode 답변, 대화형 검색 결과입니다.

파라미터

유형

필수

설명

q

string

예

AI Mode에 물어볼 질문

gl / hl

string

국가 및 언어 코드

location / uule

string

지리적 위치

continuable

boolean

후속 호출에서 답변을 이어갈 수 있게 하려면 true로 설정

subsequentRequestToken

string

대화를 계속하기 위한 이전 AI Mode 응답의 토큰

textBlocks와 references, 즉 생성된 답변과 인용한 출처를 반환합니다.

Google SERP Light

hasdata_google_serp_serp_light_getSearchResults

페이지의 핵심만 반환하는 더 저렴한 검색입니다.

매개변수

유형

필수

설명

q

string

yes

검색어

gl / hl

string

국가 및 언어 코드

location / uule

string

지리적 위치

num / start

number

페이지 크기 및 오프셋

organicResults, aiOverview, relatedSearches, filters, appliedLocation, searchInformation, pagination을 반환합니다. 추가 블록 없이 유기적 결과와 AI Overview만 필요할 때 적합하며, 전체 SERP의 절반 크레딧이 듭니다.

Google News

hasdata_google_serp_news_getGoogleNews

쿼리 또는 뉴스 섹션에 대한 Google News 결과입니다.

매개변수

유형

필수

설명

q

string

쿼리. 섹션을 읽으려면 생략하세요

gl / hl

string

국가 및 언어 코드

topicToken / sectionToken / storyToken / publicationToken

string

이전 응답의 토큰을 사용하여 주제, 섹션, 스토리 또는 발행물로 드릴다운합니다

newsResults, menuLinks, relatedTopics, relatedPublications을 반환합니다. 각 뉴스 항목에는 position, title, link, name과 icon이 있는 source, thumbnail, date가 포함됩니다.

Google Shopping

hasdata_google_serp_shopping_getSearchResults

쿼리에 대한 쇼핑 결과입니다.

매개변수

유형

필수

설명

q

string

yes

제품 쿼리

gl / hl

string

국가 및 언어 코드

location / uule

string

지리적 위치

start

number

페이지 매김을 위한 결과 오프셋

tbs

string

고급 핑 필터, 원시 Google 매개변수

shoppingResults, filters, refineSearchFilters, searchInformation, pagination을 반환합니다. 각 결과에는 position, title, productId, price, extractedPrice, rating, reviews, source, category, thumbnail, immersiveProductPageToken이 포함됩니다.

immersiveProductPageToken은 아래의 인머시브 제품 도구에 대한 입력입니다. 임시 토큰이므로 제품 데이터를 원한다면 토큰이 유효한 동안 확장하세요. 이전 토큰이 실패하면 쇼핑 호출을 다시 실행하여 새 토큰을 얻으세요.

{
  "shoppingResults": [
    {
      "position": 1,
      "title": "Men's Nike Alphafly 3",
      "productId": "13366226642799457284",
      "price": "$285.00",
      "extractedPrice": 285,
      "rating": 4.5,
      "reviews": 120,
      "source": "Nike",
      "immersiveProductPageToken": "eyJyZHMiOiJQQ18…"
    }
  ]
}

인머시브 제품

hasdata_google_serp_immersive_product_getImmersive_e29f691177

쇼핑 결과 뒤에 있는 전체 제품 카드입니다.

매개변수

유형

필수

설명

pageToken

string

yes

쇼핑 결과 또는 SERP immersiveProducts 항목의 immersiveProductPageToken

moreStores

boolean

더 많은 스토어 요청

nextPageToken

string

이전 응답의 storesNextPageToken을 사용하여 스토어 목록을 페이지 단위로 넘김

productResults 객체를 반환하며, title, brand, rating, reviews, priceRange, 각 판매자의 가격과 링크가 있는 stores 배열, 그리고 variants, reviewsImages, userReviews, topInsights, aboutTheProduct, discussionsAndForums가 포함됩니다. 이 한 번의 호출로 단일 리스팅을 전체 크로스-스토어 그림으로 바꿉니다.

{
  "productResults": {
    "title": "Men's Nike Alphafly 3",
    "brand": "Nike",
    "rating": 4.4,
    "reviews": 1077,
    "priceRange": "$221-$295",
    "stores": [ { "name": "eBay", "link": "https://www.ebay.com/itm/…", "price": "$221" } ],
    "storesNextPageToken": "Mw=="
  }
}

storesNextPageToken을 nextPageToken 매개변수로 다시 넣어 스토어를 페이지 단위로 넘길 수 있습니다.

Google short videos

hasdata_google_serp_short_videos_getShortVideosSearchResults

Google이 쿼리에 대해 보여주는 짧은 동영상 결과입니다.

매개변수

유형

필수

설명

q

string

yes

쿼리

gl / hl / cr

string

국가, 언어 및 콘텐츠 지역 코드

lr

array

하나 이상의 언어 제한

page

number

결과 페이지

deviceType

string

desktop, mobile 또는 tablet

shortVideos를 반환하며, 각 항목에는 position, title, link, source, sourceLogo, profileName, duration, clip, thumbnail이 포함됩니다.

오류 및 실패 경로

클라이언트는 도구 호출에서 HTTP 오류 코드를 거의 보지 못합니다. MCP 계층은 200으로 응답하고 실패를 결과 내부에 넣으며, isError를 true로 설정하고 이유를 텍스트로 포함합니다. 에이전트는 상태 줄을 기대할 만한 곳에서 메시지를 읽습니다.

잘못된 키는 연결 실패가 아니라 도구 출력으로 드러납니다. 도구 목록화는 비어 있지 않은 키를 모두 허용하며, 클라이언트는 핸드셰이크를 완료하고 초록색을 표시합니다. 그 후 첫 번째 도구 호출이 isError: true와 HasData API error: 401 Unauthorized 텍스트로 돌아옵니다. 흐름 초기에는 문제를 보고하는 것이 없으므로 이 문자열을 주시하세요.

실제 HTTP 오류는 키 누락 하나뿐입니다. 인증은 모든 도구보다 먼저 실행되며, 연결 자체가 401로 실패합니다.

스키마를 깨는 인수는 검색이 되기 전에 거부됩니다. q가 없는 검색은 필드 이름과 함께 isError: true 및 MCP error -32602: Input validation error 텍스트로 돌아옵니다. 아무것도 가져오지 않으며 요금도 부과되지 않습니다.

만료된 AI Overview 토큰은 오류로 실패합니다. SERP 응답 토큰은 약 4분간 유효합니다. 이전에 저장한 토큰을 확장하면 isError: true 및 HasData API error: 400 Bad Request 텍스트로 돌아오며, 이는 잘못된 키와 같은 형태입니다. 이를 포착하여 SERP를 다시 실행해 새 토큰을 얻으세요.

Google이 표시하지 않은 블록은 비어 있지 않고 부재합니다. AI Overview, 쇼핑 패널 또는 People Also Ask가 없는 쿼리는 해당 키를 빈 값으로 포함하지 않고 아예 없는 응답을 반환합니다. 값을 읽기 전에 키의 존재를 확인하세요.

데이터를 포함하는 결과에는 지원 티켓에서 인용할 만한 requestMetadata.id와, 해당 호출의 저장된 아티팩트로 연결되는 html 및 json 링크도 포함됩니다.

가격, 무료 티어 및 제한

크레딧은 도구별로 부과됩니다. 전체 SERP, AI Mode, News, Shopping, short videos는 호출당 10크레딧입니다. SERP Light, immersive product, AI Overview 도구는 5크레딧입니다. SERP 응답에 인라인으로 포함된 AI Overview는 해당 10크레딧 호출의 일부로 무료이지만, AI Overview 도구로 토큰을 확장하는 것은(모든 People Also Ask 토큰 포함) 별도의 5크레딧 호출입니다. 응답 크기는 가격을 바꾸지 않습니다.

무료 체험은 카드 없이 30일 동안 1,000크레딧으로, 전체 SERP 호출 100회 또는 5크레딧 호출 200회에 해당합니다. 이후 활성 계정은 잔액이 100 미만으로 떨어질 때마다 매일 100크레딧을 충전받으므로, 낮은 트래픽의 에이전트는 무기한 무료 티어에서 실행됩니다.

유료 플랜은 월 $49부터 시작하여 200,000크레딧을 제공합니다. 크레딧당 가격은 볼륨이 늘수록 낮아지며, 현재 수치는 가격 페이지에서 확인할 수 있습니다.

플랜은 동시성도 설정합니다. 무료 체험은 한 번에 1개의 요청을 허용하며, Startup 15, Business 30, Growth 50, 고용량 플랜은 200~1,500입니다. 동시성이 유일한 스로틀입니다. 별도의 분당 요청 수 제한은 없습니다. 무인으로 실행되는 무엇이든 오버플로 상황을 방어적으로 처리하세요. 쿼리 전체에 팬아웃하는 에이전트는 그 전에 한계에 도달할 것이기 때문입니다.

도구 선택

?apis=google_serp는 다음 여덟 가지 도구를 노출합니다. 이 매개변수는 목록을 받으며, ?apis=google_serp,google_maps는 검색과 함께 Google Maps 도구를 추가합니다. 매개변수를 빼면 HasData가 노출하는 모든 것을 얻는데, 현재 57개의 도구입니다.

좁은 목록이 일반적으로 더 나은 기본값입니다. 여덟 가지 도구 중에서 선택하는 모델은 57가지 중에서 선택하는 모델보다 더 자주 올바르게 고릅니다. 도구 설명 자체도 매 턴 컨텍스트를 소비합니다.

비교

Google은 더 이상 일반 검색 API를 제공하지 않습니다. 공식 경로는 Custom Search JSON API이며, 이것은 이 서버와는 다른 질문에 답합니다.

Custom Search JSON API는 사용자가 구성하는 Programmable Search Engine을 검색하며, 나열한 사이트 또는 켜면 전체 웹 인덱스를 대상으로 합니다. 하루 100회 무료 쿼리로 제한되고 이후에는 일일 상한까지 천 건당 요금이 부과되며, 간소화된 결과 집합을 반환합니다. AI Overview, People Also Ask, 로컬 팩, 쇼핑, 뉴스, 짧은 동영상을 반환하지 않습니다. 이러한 것들은 API의 기능이 아니라 실제 결과 페이지의 기능이기 때문입니다. 자신의 사이트나 고정된 사이트 집합을 검색하면서 Google의 공식 약관을 준수하려면 이 도구가 적합합니다.

이 서버는 방문자가 보는 실제 Google 결과 페이지를 파싱하여 반환합니다. 구성할 것이 없고, 쿼리는 선별된 엔진이 아니라 전체 Google을 대상으로 실행되며, AI Overview, People Also Ask, 쇼핑 및 나머지는 구조화된 블록으로 돌아옵니다.

Custom Search JSON API

이 서버

검색 대상

사용자가 구성하는 Programmable Search Engine

실제 Google 결과 페이지

설정

Cloud 프로젝트와 검색 엔진

API 키 하나

AI Overview 및 People Also Ask

반환되지 않음

인라인 또는 토큰으로

쇼핑, 뉴스, 짧은 동영상, 로컬

반환되지 않음

전용 도구

무료 티어

하루 100건의 쿼리

30일 동안 1,000크레딧, 이후 매일 충전

두 행이 결정합니다. 자신의 사이트만 검색하면 되고 이를 위해 Google의 공식 API를 원한다면 Custom Search JSON API가 적합합니다. 실제 SERP, AI Overview, 또는 Google이 검색자에게 보여주는 패널이 필요하다면 공식 API는 이를 반환하지 않지만 이 서버는 반환합니다.

이 서버가 하지 않는 일. 결과 뒤의 페이지를 크롤링하지 않으며, 순위 기록도 없고, 쓰기 작업도 없습니다. 파싱된 결과 페이지를 반환할 뿐입니다.

FAQ

Google Search MCP 서버란 무엇인가요?

Google 검색 결과를 AI 클라이언트가 호출할 수 있는 도구로 노출하는 서버입니다. 클라이언트는 Model Context Protocol을 통해 도구 호출을 보내고, 서버는 결과 페이지를 가져와 구조화된 JSON을 반환하며, 모델은 결과를 사용할 뿐 HTML 페이지를 직접 보지 않습니다. 이 서버는 8개의 읽기 전용 도구를 노출하며 원격으로 실행되므로, 클라이언트는 URL에 연결할 뿐 로컬 프로세스를 시작하지 않습니다.

여기서 SERP는 Google 검색과 같은 의미인가요?

네. SERP는 검색 엔진 결과 페이지(Search-Engine Results Page)입니다. 이 도구들은 Google의 결과 페이지를 반환하므로, 이 저장소에서 "SERP API"와 "Google Search API"는 같은 의미입니다.

공식 Google Search MCP 서버가 있나요?

Google은 MCP 서버도 일반 검색 API도 공개하지 않습니다. 가장 가까운 공식 제품은 Custom Search JSON API로, 사용자가 구성한 Programmable Search Engine을 검색합니다. 이 서버를 포함한 여러 커뮤니티 MCP 서버는 대신 실시간 결과 페이지를 반환합니다.

AI 개요(AI Overview)는 어떻게 얻나요?

SERP 호출을 실행하세요. aiOverview는 일반적으로 textBlocks 및 references와 함께 인라인으로 제공됩니다. 대신 pageToken으로 반환되는 경우, 그리고 모든 People Also Ask 질문에서 해당 토큰을 AI Overview 도구에 전달하여 답변을 얻으세요. 토큰은 빠르게 만료되므로 새 호출에서 확장하세요.

Google Cloud 프로젝트나 Programmable Search Engine이 필요한가요?

아니요. 유일한 자격 증명은 HasData 키입니다. Google Cloud에서 만들 것이 없고, API별 할당량을 관리할 필요도 없습니다.

API 키가 만료되나요?

아니요. 키는 만료되지 않습니다. 필요할 때마다 대시보드에서 교체하면 됩니다.

데이터는 실시간인가요, 캐시된 것인가요?

실시간입니다. 각 호출은 요청 시점에 결과 페이지를 가져오며 자체 requestMetadata.id를 포함합니다. 동일한 두 호출은 별도의 두 가져오기이며 저장된 복사본의 재생이 아닙니다.

Google과 제휴 관계인가요?

아니요. HasData는 독립 서비스이며 Google과 제휴, 보증, 후원 관계가 아닙니다. Google은 해당 소유자의 상표입니다. 이 도구들은 공개적으로 이용 가능한 데이터만 사용하며, 결과를 Google의 약관과 적용되는 법률에 따라 사용할 책임은 사용자에게 있습니다.

HasData 링크

제품 페이지 및 요청 빌더

Google SERP API

서버 문서

MCP server docs

하나의 서버에 있는 57개 도구 전체

HasData/hasdata-mcp

클라이언트 연습 가이드

MCP clients and integrations

우리가 파싱하는 다른 표면

53 more scraper APIs

요금제 및 크레딧 비용

Plans and credit costs

키 및 사용량

HasData dashboard

npm의 Node 런처

@hasdata/google-search-mcp

PyPI의 Python 런처

hasdata-google-search-mcp

개발

이 저장소는 원격 서버에 대한 구성 및 문서입니다. 빌드 단계도 컨테이너화할 항목도 없습니다.

다만 계약 테스트는 포함되어 있습니다. README는 특정 매개변수를 가진 8개의 도구를 문서화하며, 업스트림 도구 목록은 이 저장소에 커밋 없이 변경될 수 있으므로 이 파일이 조용히 잘못된 정보를 제공할 수 있습니다. 테스트는 문서화된 도구가 명시된 매개변수로 존재하는지 확인하며, 모든 푸시뿐만 아니라 매주 CI에서도 실행됩니다.

HASDATA_API_KEY=your_key_here npm test

PowerShell에서:

$env:HASDATA_API_KEY = "your_key_here"; npm test

마지막 검사는 실제 검색을 수행하며 10크레딧이 소요됩니다. 이는 올바른 이유로 실패할 수 있는 카나리(경보)의 가격입니다. 도구 나열은 비어 있지 않은 키로 성공하므로, 도구만 나열하는 테스트는 키가 해지되어도 통과 상태를 유지합니다.

기여

도구 표와 응답 샘플에 대한 수정이 가장 유용한 기여입니다. 이 부분이 실제로 달라지는 부분이기 때문입니다. 수행한 호출과 받은 응답을 포함해 주세요. 포크에서 온 풀 리퀘스트는 키 없이 테스트 스위트를 실행하며, 실시간 검사는 실패 대신 건너뜁니다.

라이선스

MIT. LICENSE를 참조하세요.

Available Tools

10 tools
hasdata_google_serp_ai_mode_getAiModeResponsegoogle_serp_ai_mode: GET /AInspect

Get AI Mode SERP Results

Captures Gemini-powered AI Mode answers from Google Search. Returns the conversational response text, cited source links, subtopic breakdowns, follow-up suggestions, and a subsequentRequestToken for multi-turn continuation. Use for next-gen search interfaces, AI-answer monitoring, citation tracking, content research agents, building question-answering pipelines grounded in live Google results, and person/company data enrichment — e.g. asking Who is the CEO of HasData?, What is Roman Milyushkevich's LinkedIn?, HasData founder email, HasData Instagram handle to get a synthesized answer plus source URLs in one call, ideal for lead enrichment, sales research, people search, and filling in contact/attribute gaps for CRM records.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSpecify the search term for which you want to scrape the SERP.
glNoThe two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`.
hlNoThe two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`.
uuleNoThe encoded location parameter.
locationNoGoogle canonical location for the search.
continuableNoWhether to continue an existing AI Mode conversation.
subsequentRequestTokenNoToken used to continue a previous AI Mode request.

TDQS

A4.2/5.0
Behavior4/5

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

No annotations provided, but the description clearly explains the output and the continuation mechanism, making behavior transparent.

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?

The description is detailed and informative, though slightly verbose with repeated examples; it is still well-structured and front-loaded.

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

Completeness5/5

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

The description fully explains what the tool does, its output, and its multi-turn continuation feature, making it complete for the given 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 covers all parameters with descriptions; the tool description does not add additional meaning beyond the schema, so a neutral score.

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

Purpose5/5

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

Clearly states it gets AI Mode SERP results from Google, distinguishing from other Google SERP tools like AI Overview.

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

Usage Guidelines4/5

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

Provides explicit use cases and examples, but does not explicitly compare with alternative tools, so slightly less than perfect.

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

hasdata_google_serp_ai_overview_getAiOverviewResponsegoogle_serp_ai_overview: GET /AInspect

Get AI Overview Results

Fetches the lazy-loaded Google AI Overview block via a pageToken returned by the Google SERP API (token valid for 4 minutes). Returns the AI-generated answer text, referenced source URLs, and expanded subtopic sections. Use as a follow-up call to Google SERP for tracking AI citations in SEO, fact-checking answers against sources, and LLM retrieval pipelines grounded in live Google results.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageTokenYesToken from `aiOverview` block in Google SERP API. Valid for 4 minutes.

TDQS

A4.5/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses that the block is lazy-loaded, the token is valid for only 4 minutes, and it returns specific content. While it doesn't explicitly state read-only behavior, the description implies a safe fetch operation.

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

Conciseness5/5

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

The description is concise and well-structured: a clear title line, a brief explanation of what is fetched, the returned contents, and explicit use cases. No redundant or extraneous text.

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

Completeness5/5

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

Given the simple input (one parameter, no nested objects) and no output schema, the description is complete. It explains the purpose, parameter source and validity, expected return contents, and appropriate use cases, giving the agent everything needed to decide and invoke correctly.

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?

The sole parameter, pageToken, is fully described in the input schema ('Token from aiOverview block... Valid for 4 minutes'), and the tool description repeats this same information without adding new meaning. Since schema coverage is 100%, baseline is 3.

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

Purpose5/5

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

The description clearly states the tool's action ('Get AI Overview Results') and resource (Google AI Overview block), distinguishes it from sibling tools by specifying it's a follow-up using a pageToken, and details the returned data (answer text, source URLs, subtopic sections).

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

Usage Guidelines5/5

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

The description explicitly provides use cases: 'tracking AI citations in SEO, fact-checking answers against sources, and LLM retrieval pipelines grounded in live Google results.' It also implies the prerequisite of having a pageToken from a prior SERP call, making it clear when this tool is appropriate.

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

hasdata_google_serp_events_getEventInformationgoogle_serp_events: GET /AInspect

Get Google Events Results

Scrapes the Google Events vertical for a query plus location (or uule) with date filters (today, tomorrow, this/next week, weekend, this/next month), virtual-event toggle, domain/country/language targeting, and pagination. Returns event title, start date/time, venue name and address, ticket/source links, description, and thumbnail. Use for event-discovery chatbots, local aggregators, calendar sync, competitive monitoring of event listings, and pulling upcoming shows/conferences for a region.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSpecify the search term for which you want to scrape the SERP.
glNoThe two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`.
hlNoThe two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`.
uuleNoThe encoded location parameter.
startNoThis parameter specifies the number of search results to skip and is used for implementing pagination. For example, a value of 0 (default) indicates the first page of results, 10 refers to the second page, and 20 to the third page.
domainNoGoogle domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`.
htichipsNoFilter parameter for refining event search results. Supports various filters for events. Multiple filters can be passed using a comma. The available filters are: - `date:today`: Today's Events - `date:tomorrow`: Tomorrow's Events - `date:week`: This Week's Events - `date:weekend`: This Weekend's Events - `date:next_week`: Next Week's Events - `date:month`: This Month's Events - `date:next_month`: Next Month's Events - `event_type:Virtual-Event`: Online Events For example, to filter for today's online events, use: `event_type:Virtual-Event,date:today`.
locationNoGoogle canonical location for the search.

TDQS

A3.9/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It states the tool 'scrapes' data, implying a read-only operation, but does not mention rate limits, authentication, or potential blocks. The description is adequate but not fully transparent about operational constraints.

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?

The description is concise and well-structured, starting with a brief summary, followed by functional details and use cases. It avoids excessive verbosity while covering essential aspects.

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?

Given the tool's complexity, the description provides sufficient context about functionality, parameters, and intended use cases. It does not describe return values, but no output schema is provided, so that is not required. It is complete enough for an agent to decide when and how to invoke it.

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?

The schema already provides descriptions for all 8 parameters, including detailed explanation of htichips filters. The tool description adds no additional parameter semantics beyond what is already in the schema, so it meets the baseline but does not exceed it.

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

Purpose5/5

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

The description clearly states the tool scrapes the Google Events vertical, listing specific filters and use cases. This distinguishes it from generic search and other vertical tools, such as general SERP or image search.

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

Usage Guidelines4/5

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

It explicitly mentions use cases like event-discovery chatbots and local aggregators, implying when to use this tool. It does not name alternative tools, but the context makes it clear this is for event-specific searches.

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

hasdata_google_serp_immersive_product_getImmersive_e29f691177google_serp_immersive_product: GET /AInspect

Get Immersive Product Information

Expands the Google Shopping Immersive Product pop-up given an immersiveProductPageToken from the Google Shopping API, with optional moreStores (up to ~13 merchants instead of 3–5) and nextPageToken for paginating stores. Returns multi-store offers (merchant, price, shipping, condition, URL), product specs, images, ratings, and the nextPageToken. Use for price-comparison bots, merchant discovery, dropshipping research, and aggregating full offer lists per product.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageTokenYesToken for displaying more product info in the Google immersive pop-up, available in the Google Shopping API response as the `immersiveProductPageToken` property.
moreStoresNoFetch additional store results in a single search. By default it returns 3–5 stores, and when true it returns up to 13 or the maximum available for the product.
nextPageTokenNoToken used to retrieve the next page of store results.

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description carries the full burden. It describes the read-like behavior (expands, returns) and mentions pagination and optional store expansion, but it does not explicitly state that it is a read-only operation or disclose any potential side effects, auth requirements, or rate limits. The description is informative but not fully explicit.

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?

The description is concise and well-structured, with the core purpose front-loaded. It includes a useful list of return fields and use cases without excessive verbosity.

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?

Given there is no output schema, the description adequately explains what is returned (offers, specs, images, ratings, nextPageToken). It also covers key parameters and use cases. It does not mention error handling or token lifecycle, but these are not critical for a simple read tool.

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 coverage is 100%, so the schema already documents all parameters. The description adds minor context (e.g., moreStores expands from 3–5 to up to 13, nextPageToken paginates) but largely repeats what the schema says. It adds value but not significantly beyond the schema.

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 clear verb and resource: it expands the Google Shopping Immersive Product pop-up given a token. It distinguishes itself by focusing on the immersive product view, but it does not explicitly name sibling tools or contrast with them, so it misses the top score.

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

Usage Guidelines4/5

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

It provides clear use cases (price-comparison bots, merchant discovery, dropshipping research) but does not explicitly state when to avoid it or name alternatives. The context is clear but exclusions are absent.

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

hasdata_google_serp_news_getGoogleNewsgoogle_serp_news: GET /AInspect

Get Google News Results

Retrieves Google News results by free-text query, topicToken (World, Business, Technology, etc.), sectionToken, publicationToken (e.g. CNN, BBC), or storyToken (full-coverage cluster with sort by relevance/date). Returns article title, snippet, source publisher, published date, thumbnail, and URL, plus tokens for navigating topics, sub-sections, and story clusters. Use for news monitoring, brand/PR tracking, topical aggregators, publisher-specific feeds, and drilling into full story coverage.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNoFree-text query as used on news.google.com. Not allowed with `topicToken`, `storyToken`, or `publicationToken`.
glNoThe two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`.
hlNoThe two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`.
soNoSort order for articles in a story. Use only with storyToken.
storyTokenNoToken for a single news story cluster (the “Full coverage” page).
topicTokenNoToken for a Google News topic such as World, Business, or Technology. Not allowed with `q`, `storyToken`, or `publicationToken`.
sectionTokenNoToken for a sub-section under a topic, for example Business → Economy. Use only when `topicToken` or `publicationToken` is present.
publicationTokenNoToken for a specific publisher such as CNN or BBC. Not allowed with `q`, `storyToken`, or `topicToken`.

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations provided, the description carries the burden of behavioral disclosure. It transparently describes the return payload (title, snippet, source publisher, published date, thumbnail, URL) and the navigation tokens, and notes that storyToken supports sorting by relevance/date. It does not mention limits, errors, or rate restrictions, but for a read-oriented GET endpoint the description provides solid behavioral context.

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?

The description is compact, front-loaded with the core purpose, and every sentence adds useful information about retrieval modes, output, and use cases. It is dense but not bloated, and it avoids unnecessary repetition of schema details.

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?

Given the 8-parameter schema with full descriptions and no output schema, the description adequately covers what the tool returns, the main input modes, and appropriate usage scenarios. It does not cover pagination or result limits, but the schema and stated output fields give an agent enough to invoke and interpret the tool correctly.

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% and every parameter has a meaningful description with mutual-exclusion constraints. The tool description adds value by grouping the parameter types and explaining the story-cluster sort, but it mostly paraphrases what the schema already documents. Baseline 3 is appropriate since the schema does the heavy lifting.

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

Purpose5/5

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

The description clearly states a specific verb ('Retrieves Google News results') and resource, listing the distinct retrieval modes (free-text query, topicToken, sectionToken, publicationToken, storyToken) and the returned fields. It distinguishes itself from the general google_serp_serp_getSearchResults sibling by focusing specifically on Google News and its token-based navigation.

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

Usage Guidelines4/5

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

The description explicitly enumerates intended use cases: 'news monitoring, brand/PR tracking, topical aggregators, publisher-specific feeds, and drilling into full story coverage.' It does not explicitly name a sibling as an alternative or state when not to use this tool, but the use-case framing gives an agent clear selection context.

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

hasdata_google_serp_product_getProductInformationgoogle_serp_product: GET /AInspect

Get Product Information

Pulls detailed product data from Google Shopping by productId with searchType (offers, specs, reviews) and rich filters (free shipping, used-condition, sort by price/total price/deals/seller rating, reviews count). Returns product title, images, price, ratings, specs, merchant offers (seller, shipping, condition, total price), and review text depending on searchType. Use for price intelligence, catalog enrichment, review mining, competitor spec comparison, and building shopping assistants that surface the cheapest or highest-rated offer.

ParametersJSON Schema
NameRequiredDescriptionDefault
glNoThe two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`.
hlNoThe two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`.
uuleNoThe encoded location parameter.
startNoThis parameter specifies the number of search results to skip and is used for pagination. For example, a value of 0 (default) indicates the first page of results, 10 refers to the second page, and 20 to the third page. This parameter is applicable only when `searchType=offers` is specified. For reviews pagination use `filter` parameter.
domainNoGoogle domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`.
filterNoFilter parameter for refining search results. Supports various filters for offers and reviews. Multiple filters can be passed using a comma. The available filters are: Offers filters: - `freeship:1`: Show only products with free shipping. - `ucond:1`: Show only used products. - `scoring:p`: Sort by base price. - `scoring:tp`: Sort by total price. - `scoring:cpd`: Sort by current promotion deals (special offers). - `scoring:mrd`: Sort by seller's rating. Reviews filters: - `rnum:{number}`: Number of results (100 is max).
locationNoGoogle canonical location for the search.
productIdYesThe product ID to get results for.
searchTypeNoParameter for fetching specific product information, such as 'offers', 'specs', or 'reviews'.

TDQS

A4.2/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It clearly frames the operation as read-only ('Pulls') and discloses searchType-dependent return content: title, images, price, ratings, specs, merchant offers, and review text. It does not cover rate limits, auth, or errors, but the core behavioral contract is present.

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

Conciseness5/5

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

The description is compact and front-loaded: a one-line summary, then the detailed behavior, then use cases. Every sentence contributes value, and there is no meaningful fluff.

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?

For a 9-parameter tool with no output schema, the description provides a strong high-level output contract and common use cases, while the schema covers parameter details. The main gap is that optional searchType has no documented default behavior, and pagination guidance relies entirely on the schema rather than the description.

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%, and the schema already explains filters, pagination, enums, and parameter constraints. The description paraphrases searchType and filters but adds no new parameter-level semantics, so the baseline of 3 applies.

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

Purpose5/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: 'Pulls detailed product data from Google Shopping by productId' with searchType variants and filters. This clearly distinguishes it from sibling search tools like shopping_getSearchResults, which are search-oriented rather than product-ID lookups.

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

Usage Guidelines4/5

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

The description explicitly lists task-based use cases: price intelligence, catalog enrichment, review mining, competitor spec comparison, and building shopping assistants. It does not name exclusions or alternative sibling tools, but it gives clear context for when this tool is appropriate.

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

hasdata_google_serp_serp_getSearchResultsgoogle_serp_serp: GET /AInspect

Get Google Search Results

Full-featured Google Search scraper with location/uule, country (gl), language (hl, lr), domain, device type, safesearch, time/date filters (qdr, cdr), knowledge-graph IDs, and tbm vertical selection (images, videos, news, shopping, local), plus offset/num pagination. Returns organic results (title, link, snippet, position), ads, knowledge graph, related searches, People Also Ask, local pack, featured snippets, AI Overview pageToken, and rich SERP features. Use for SEO rank tracking, keyword research, SERP-feature monitoring, competitor analysis, grounding LLMs with fresh location-aware search data, and especially for person/company data enrichment — e.g. finding a person's LinkedIn/Instagram/Twitter profile (Roman Milyushkevich LinkedIn, HasData Instagram), a company's CEO/founder/leadership (HasData CEO, HasData founder), contact emails (Roman Milyushkevich HasData email), phone numbers, GitHub profiles, press mentions, or any public attribute of a person or business by running a targeted query and parsing the top organic results.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSpecify the search term for which you want to scrape the SERP.
glNoThe two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`.
hlNoThe two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`.
lrNoThe 'lr' parameter specifies the language of the websites to return results from. This parameter filters results based on the language of the web content.
siNoGoogle Cached Search Parameters ID.
numNoNumber of results per page, ranging from 10 to 100.
tbmNoSpecify the type of search.
tbsNoThis parameter supports various filters that can be combined by separating them with a comma. Here are examples of these filters: - Specific Time Range: `cdr:1,cd_min:10/17/2018,cd_max:3/8/2021` - Filter results to show only those within the defined date range. - Sort by Date: `sbd:1` - Results are sorted by date, from the most recent to the oldest. - Sort by Relevance: `sbd:0` - Results are sorted by relevance to the search query. - Sites with Images: `img:1` - Only show results from webpages that contain images. Quick Date Range (qdr): - `qdr:h` - Show results from the past hour. - `qdr:d` - Limit results to the past day. - `qdr:w` - Filter results from the week. - `qdr:m` - Display results from the past month. - `qdr:y` - Show results from the past year. - `qdr:h10`, `qdr:d10`, `qdr:w10`, `qdr:m10`, `qdr:y10` - Specify a number to show results from the last 10 hours, days, weeks, months, or years respectively. These filters enhance the control over search results, allowing for precise retrieval of information based on specific criteria.
lsigNoAdditional Google Place ID.
nfprNoControls if auto-corrected results are shown. 0 includes them (default), 1 shows only the original query. Google may still return auto-corrected results if no others are available.
safeNoAdult Content Filtering option.
uuleNoThe encoded location parameter.
kgmidNoGoogle Knowledge Graph ID.
startNoThis parameter specifies the number of search results to skip and is used for implementing pagination. For example, a value of 0 (default) indicates the first page of results, 10 refers to the second page, and 20 to the third page. For Google Local Results, the start value must be in multiples of 20, such as 20 for the second page, 40 for the third page, etc.
domainNoGoogle domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`.
filterNoDefines whether to enable or disable the filters for 'Similar Results' and 'Omitted Results'. Set to 1 (default) to enable these filters, or 0 to disable them.
ludocidNoThe Google Place ID for a specific location.
locationNoGoogle canonical location for the search.
deviceTypeNoSpecify the device type for the search.

TDQS

A3.6/5.0
Behavior3/5

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

With no annotations, the description carries the behavioral disclosure burden. It does disclose that this is a scraper, enumerates filtering capabilities, and lists returned elements including organic results, ads, knowledge graph, People Also Ask, local pack, and AI Overview pageToken. However, it does not mention operational caveats such as rate limits, authentication needs, blocking risks, or pagination limits beyond offset/num.

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?

The description is front-loaded with a one-line summary and then organized into capability, return-value, and use-case sections. It is long, but the length is justified by the tool's 19 parameters and rich feature set; the examples are concrete rather than filler.

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?

For a complex 19-parameter tool with no annotations and no output schema, the description is fairly complete: it explains what the tool returns and gives practical invocation examples. It does not discuss alternatives or limitations, but an agent has enough information to select and call the tool correctly.

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 all 19 parameters are already documented in the input schema. The description only groups them into capability families like location/uule, country, language, tbm, and offset/num pagination, adding no parameter-level meaning beyond what the schema already provides.

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 names the operation ('Get Google Search Results') and identifies the tool as a 'full-featured Google Search scraper', listing parameter families and returned SERP components. It clearly conveys that this is the generic Google web-search endpoint rather than an image, news, or shopping variant, though it does not explicitly distinguish itself from the sibling serp_light tool.

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

Usage Guidelines4/5

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

The description gives concrete use cases: SEO rank tracking, keyword research, SERP-feature monitoring, competitor analysis, grounding LLMs, and person/company data enrichment with example queries. It does not explicitly state when not to use it or when to prefer serp_light, google_images, or AI-overview siblings, so it stops short of full exclusion guidance.

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

hasdata_google_serp_serp_light_getSearchResultsgoogle_serp_serp_light: GET /AInspect

Get Google Light Search Results

Lightweight Google Search scraper that returns only organic results and basic pagination, omitting AI Overview, knowledge graph, PAA, and other rich SERP blocks for faster, cheaper responses. Supports location/uule, country (gl), language (hl/lr), domain, safesearch, and time/date filters (qdr, cdr) with offset/num pagination. Returns title, link, snippet, and position per result. Use for high-volume keyword monitoring, bulk rank tracking, backlink discovery, and any workflow where only the ten blue links matter.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSpecify the search term for which you want to scrape the SERP.
glNoThe two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`.
hlNoThe two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`.
lrNoThe 'lr' parameter specifies the language of the websites to return results from. This parameter filters results based on the language of the web content.
numNoNumber of results per page, ranging from 10 to 100.
tbsNoThis parameter supports various filters that can be combined by separating them with a comma. Here are examples of these filters: - Specific Time Range: `cdr:1,cd_min:10/17/2018,cd_max:3/8/2021` - Filter results to show only those within the defined date range. - Sort by Date: `sbd:1` - Results are sorted by date, from the most recent to the oldest. - Sort by Relevance: `sbd:0` - Results are sorted by relevance to the search query. - Sites with Images: `img:1` - Only show results from webpages that contain images. Quick Date Range (qdr): - `qdr:h` - Show results from the past hour. - `qdr:d` - Limit results to the past day. - `qdr:w` - Filter results from the week. - `qdr:m` - Display results from the past month. - `qdr:y` - Show results from the past year. - `qdr:h10`, `qdr:d10`, `qdr:w10`, `qdr:m10`, `qdr:y10` - Specify a number to show results from the last 10 hours, days, weeks, months, or years respectively. These filters enhance the control over search results, allowing for precise retrieval of information based on specific criteria.
safeNoAdult Content Filtering option.
uuleNoThe encoded location parameter.
startNoThis parameter specifies the number of search results to skip and is used for implementing pagination. For example, a value of 0 (default) indicates the first page of results, 10 refers to the second page, and 20 to the third page. For Google Local Results, the start value must be in multiples of 20, such as 20 for the second page, 40 for the third page, etc.
domainNoGoogle domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`.
filterNoDefines whether to enable or disable the filters for 'Similar Results' and 'Omitted Results'. Set to 1 (default) to enable these filters, or 0 to disable them.
locationNoGoogle canonical location for the search.

TDQS

A4.1/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden, and it does disclose key traits: it omits rich blocks, returns only organic results, and supports specific filters. However, it doesn't mention error handling, rate limits, or potential staleness of data—common concerns for scraping tools. It adds value but isn't exhaustive.

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?

The description is well-structured and front-loaded: it states the core purpose, then omissions, capabilities, return format, and use cases. Every sentence contributes value, but it's slightly long given the detailed schema already available. Still, no fluff.

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?

Given the 12 parameters, detailed schema, and no output schema, the description covers the essential decision-making info: what it returns, key filtering options, and typical use cases. It doesn't explicitly explain pagination mechanics (though schema does) or edge cases, but the provided context is sufficient for an agent to select and invoke it correctly.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3, but the description groups parameters into meaningful categories (location/uule, country, language, filters, pagination), giving agents a high-level understanding of how they combine. It adds conceptual clarity beyond the schema's individual parameter descriptions.

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

Purpose5/5

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

The description clearly states the tool is a lightweight Google Search scraper that returns only organic results, explicitly listing what it omits (AI Overview, knowledge graph, PAA, etc.) and what it returns (title, link, snippet, position). This makes it readily distinguishable from siblings like serp_getSearchResults or news/shopping tools.

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

Usage Guidelines4/5

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

Explicit use cases are given: high-volume keyword monitoring, bulk rank tracking, backlink discovery, and any workflow where only the ten blue links matter. This implies when not to use it (when rich SERP blocks are needed), though it doesn't explicitly name the alternative tool like hasdata_google_serp_serp_getSearchResults. Clear context but no formal exclusion.

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

hasdata_google_serp_shopping_getSearchResultsgoogle_serp_shopping: GET /AInspect

Get Shopping Search Results

Scrapes Google Shopping listings for a query with location/uule, country/language/domain, time/date filters, device type, shoprs filter-helper IDs, and offset pagination. Returns product title, price, merchant/source, rating, reviews count, thumbnail, product link, productId, immersiveProductPageToken, and filter chips with hasdata_link for refining by brand/price/condition/promotions. Use for e-commerce price tracking, catalog building, promotion discovery, and feeding productIds into the Product API or tokens into the Immersive Product API for deeper data.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSpecify the search term for which you want to scrape the SERP.
glNoThe two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`.
hlNoThe two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`.
tbsNoThis parameter supports various filters that can be combined by separating them with a comma. Here are examples of these filters: - Specific Time Range: `cdr:1,cd_min:10/17/2018,cd_max:3/8/2021` - Filter results to show only those within the defined date range. - Sort by Date: `sbd:1` - Results are sorted by date, from the most recent to the oldest. - Sort by Relevance: `sbd:0` - Results are sorted by relevance to the search query. - Sites with Images: `img:1` - Only show results from webpages that contain images. Quick Date Range (qdr): - `qdr:h` - Show results from the past hour. - `qdr:d` - Limit results to the past day. - `qdr:w` - Filter results from the week. - `qdr:m` - Display results from the past month. - `qdr:y` - Show results from the past year. - `qdr:h10`, `qdr:d10`, `qdr:w10`, `qdr:m10`, `qdr:y10` - Specify a number to show results from the last 10 hours, days, weeks, months, or years respectively. These filters enhance the control over search results, allowing for precise retrieval of information based on specific criteria.
uuleNoThe encoded location parameter.
startNoThis parameter specifies the number of search results to skip and is used for implementing pagination. For example, a value of 0 (default) indicates the first page of results, 40 refers to the second page, and 80 to the third page.
domainNoGoogle domain to use. Default is google.com. Provide one exact documented value (195 allowed), e.g. `google.ac`, `google.ad`.
shoprsNoSpecifies the helper ID for applying search filters. Must be used with the updated `q` parameter, which includes the selected filter (e.g., Coffee sale). To apply filters, use the `hasdata_link` from `filters[index].options[index]` in the JSON. Apply multiple filters by following each `hasdata_link` one by one. To remove a filter, follow its specific `hasdata_link`.
locationNoGoogle canonical location for the search.
deviceTypeNoSpecify the device type for the search.

TDQS

A4.1/5.0
Behavior3/5

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

With no annotations provided, the description carries the full responsibility for disclosing behavioral traits. It does not explicitly state whether the operation is read-only or if there are side effects, rate limits, or permissions. The phrasing 'Scrapes Google Shopping listings' implies a passive retrieval, but it lacks an explicit statement about non-destructiveness or data handling.

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

Conciseness5/5

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

The description is concise and well-structured, with a clear opening statement, a summary of output, and a list of use cases. It avoids redundancy and stays focused, making it easy for users to quickly grasp the tool's function and applications. The structure is efficient with no unnecessary information.

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

Completeness5/5

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

Despite lacking an output schema, the description compensates by enumerating the expected return fields (e.g., product title, price, merchant) and explaining how to apply filters via 'hasdata_link'. It also covers parameter interactions for shoprs and pagination. Given the tool's moderate complexity, the description provides a complete picture for invocation without leaving critical gaps.

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?

The schema already provides detailed descriptions for all 10 parameters, covering their semantics thoroughly. The tool description does not add significant extra meaning beyond summarizing the overall purpose and mentioning a few output fields. Since schema coverage is 100%, the baseline score of 3 is appropriate, as the description adds marginal value.

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

Purpose5/5

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

The description clearly states that the tool scrapes Google Shopping listings for a search query and returns detailed product information. It explicitly mentions the output fields, such as product title, price, and merchant, making the tool's purpose unambiguous. The name 'Get Shopping Search Results' further reinforces its function.

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

Usage Guidelines4/5

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

The description provides specific use cases like e-commerce price tracking, catalog building, and promotion discovery, which guide when to employ the tool. It also hints at integration with other tools by mentioning feeding product IDs into the Product API or tokens into the Immersive Product API. However, it does not explicitly contrast it with sibling tools, leaving a small gap in direct alternative selection.

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

hasdata_google_serp_short_videos_getShortVideosSearchResultsgoogle_serp_short_videos: GET /AInspect

Get Short Videos Search Results

Scrapes the Google Short Videos carousel (TikTok, YouTube Shorts, Instagram Reels, etc.) for a query with location/uule, country (gl/cr), language (hl/lr), device type, and page-based pagination. Returns video title, thumbnail, duration, source platform, channel/creator, publish date, and direct video URL. Use for short-form content discovery, viral-trend monitoring, influencer research, cross-platform video aggregation, and sourcing short clips to summarize or embed in LLM responses.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSearch query term for retrieving short videos results.
crNoThe country code for the country you want to limit the search to. Provide one exact documented value (237 allowed), e.g. `countryAF`, `countryAL`.
glNoThe two-letter country code for the country you want to limit the search to. Provide one exact documented value (245 allowed), e.g. `ac`, `af`.
hlNoThe two-letter language code for the language you want to use for the search. Provide one exact documented value (159 allowed), e.g. `af`, `ak`.
lrNoThe 'lr' parameter specifies the language of the websites to return results from. This parameter filters results based on the language of the web content.
pageNoPage number for paginated results, where 0 is the first page.
uuleNoThe encoded location parameter.
locationNoGoogle canonical location for the search.
deviceTypeNoSpecify the device type for the search.

TDQS

A4.1/5.0
Behavior4/5

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

No annotations are provided, so the description carries the behavioral disclosure burden. It explains that the tool scrapes a live Google carousel and returns specific fields, implying a read-only network operation. It does not mention rate limits, auth, or failure modes, but these are less critical for this non-mutating scraper.

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?

The description is reasonably short and front-loaded, with the core scraping behavior in the first sentence and output fields and use cases following. The opening heading repeats the tool name and the use-case list is slightly expansive, but the overall text is efficient and relevant.

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?

For a 9-parameter tool with no output schema, the description compensates by listing return fields and mentioning pagination plus location/country/language options. It does not specify result count, maximum page, or exact response structure, but the schema fully documents the parameters and required query.

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?

The input schema already describes 100% of the parameters, so the baseline is 3. The description adds only high-level grouping such as 'country (gl/cr), language (hl/lr), device type' without clarifying relationships, formats, or usage beyond what the schema already provides.

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

Purpose5/5

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

The description uses a specific verb ('scrapes') and a specific resource ('Google Short Videos carousel'), and names the content sources (TikTok, YouTube Shorts, Instagram Reels). This clearly distinguishes it from sibling SERP tools like general search or news results.

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

Usage Guidelines4/5

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

The description provides explicit use cases such as 'short-form content discovery, viral-trend monitoring, influencer research, cross-platform video aggregation' and sourcing clips for LLM responses. However, it does not explicitly contrast with sibling tools or state when not to use this tool.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 10 tool updatesv1.0.0
    • First observedhasdata_google_serp_ai_mode_getAiModeResponse
    • First observedhasdata_google_serp_ai_overview_getAiOverviewResponse
    • First observedhasdata_google_serp_events_getEventInformation
    • First observedhasdata_google_serp_immersive_product_getImmersive_e29f691177
    • First observedhasdata_google_serp_news_getGoogleNews
    • First observedhasdata_google_serp_product_getProductInformation
    • First observedhasdata_google_serp_serp_getSearchResults
    • First observedhasdata_google_serp_serp_light_getSearchResults
    • First observedhasdata_google_serp_shopping_getSearchResults
    • First observedhasdata_google_serp_short_videos_getShortVideosSearchResults

TDQS

A4.1/5.0

Scored across 10 tools

Disambiguation5/5

Each tool addresses a distinct Google Search vertical (web, shopping, news, events, short videos, AI mode/overview) with clear boundaries. Even where two tools are similar (full vs. light SERP, shopping search vs. product info), their purposes are explicitly differentiated.

Naming Consistency4/5

All tools follow the pattern `hasdata_google_serp_<category>_<Action>`, with snake_case categories and camelCase actions. The only deviation is the immersive product tool's hash suffix (`getImmersive_e29f691177`), which breaks the clean convention but does not obscure intent.

Tool Count5/5

With 10 tools, the server covers all major Google Search verticals without redundancy or bloat. Each tool serves a distinct scraping need, making the count well-scoped for its purpose.

Completeness4/5

The tool surface covers web search (both full and lightweight), shopping (search, product details, immersive offers), news, events, short videos, and AI-generated responses. Minor gaps like a dedicated maps/images tool are mitigated by the full SERP tool's `tbm` parameter, making the coverage strong overall.

Maintenance

ActivityActive
ResponsivenessUnresponsive

Related MCP Connectors

  • Live AI-native web search with citations. One tool for every MCP client. Flat per-request pricing.

  • 17 data tools in one MCP server, run on Apify: Google Shopping, Flights, Hotels, News, Images, Videos, Ads Transparency, Jobs and Trends; YouTube transcripts; AI visibility checks; Google Maps leads; App Store and Google Play reviews. Pay per result. Sign in with Apify (OAuth) or an API token.

  • Your agent needs the Google results page as it actually renders — organic and paid, the AI overview, maps, images, news, jobs and the finance panel — not a scraped guess. **What you can ask for** • "What does the SERP for this keyword look like in Germany, on mobile?" • "Does this query trigger an AI overview, and what does it say?" • "Who is advertising against our brand name?" • "Find local results and the map pack for this phrase." • "Search Google by this image and tell me where else it appears." **How to use it** Point any MCP client at https://mcp.aisa.one/seo-serp/mcp and sign in with OAuth — there is no key to create or paste. 38 tools across Google's surfaces: organic, ads and advertisers, AI mode, autocomplete, images, news, maps and local, events, jobs, datasets, scholar, finance quotes and markets, plus Semrush's organic and paid result sets. **Why this rather than the source** Location and language are parameters, so you can read the page a customer in another country sees. **It is also a door to the rest** The same login reaches 26 sources and 580+ operations. Read the SERP here, then ask the same agent who links to the winner or how much traffic they get — without adding a second server. **What it costs** Finding and inspecting an operation is free. Running one is billed per call at API prices, with no seat and no monthly minimum, and every call takes max_price_usd so an agent cannot overspend by accident. **Where else it reaches** https://mcp.aisa.one/seo-serp-other-engines/mcp for Bing, Yahoo, Baidu, Naver, Seznam and YouTube. https://mcp.aisa.one/seo/mcp for all of it at once — rankings, keywords, backlinks, site health and AI-answer visibility across DataForSEO, Semrush and Ahrefs.

  • Scrape Google search results with SERP data, ads, and knowledge panels

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Direct access to 40+ scraping and search tools. Extract structured data from Google (Search, Maps, Trends), Amazon, Airbnb, Social Media, and any web page directly into your AI agent.
    63
    20
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    A hosted MCP server that returns DuckDuckGo search results as structured JSON, with ranked organic results, separate ads, AI answers, and 37 region/language targets for any MCP client.
    1
    24 npm
    57 PyPI
    7
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to run live Google searches and retrieve organic results, snippets, sitelinks, People Also Ask, related searches, and Google's AI Overview with citations via a zero-dependency MCP server.
    2
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables Bing searches with geo, market, and language targeting, returning organic results, ad blocks, and Copilot answers as structured JSON to any MCP client.
    1
    21 npm
    38 PyPI
    9
    MIT