Serper.live

io.github.serper-livePublished by GitHub account serper-livev2.2.0Updated Nov 4, 2026

Live Google search results, domain positions and open markets via the Serper.live SERP API.

VerifiedSTDIODesktop onlyWeb Search & ScrapingData & Analytics

Overview

AI-generated overview

Runs live Google searches and checks where a domain ranks, by country, language and device, through the Serper.live SERP API.

What you can do
  • Run a live Google search for a keyword in a chosen country, language and device, returning organic results with position, title, URL, domain and snippet, plus People also ask questions and related searches.
  • Check where a domain ranks for a keyword in a market and on a device, with every position or a note that it is outside the checked depth.
  • List the countries currently searchable and each one's default Google interface language.
When to use it
Useful when an assistant needs current Google results rather than cached data, or when comparing rankings across markets and devices for SEO or market research. The country list works without a token, so it can be checked before signing up.
Requirements
Runs locally over stdio via npx, needing Node.js 20 or newer, or a one-click Claude Desktop bundle that brings its own Node.js. A Serper.live account and API token in SERPER_LIVE_TOKEN are required for searches; list_countries works without one. An optional SERPER_LIVE_API_URL overrides the API base URL. Network access to the Serper.live API is needed.
Before you install
Searches are paid: the account starts with 100 free searches, then credit must be added by card or in USDT/USDC, and each page of up to 10 results that returns results is billed at the market's price. The API token in SERPER_LIVE_TOKEN is a secret that grants spending on the account, so keep it out of shared config files. Queries and target domains are sent to Serper.live.

Installation

In SourceWeft

  1. Open Serper.live in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Serper.live MCP server

[Serper Live MCP server – quality and maintenance score on Glama] [Serper.live MCP on mcprush]

Live Google search for AI agents. This Model Context Protocol server lets Claude, OpenAI Codex, Cursor, VS Code and other MCP clients run a real Google search through Serper.live for the country, language and device you choose, and check where a domain ranks right now.

Every search is fresh: nothing is cached, and a page of 10 results usually comes back in 2–3 seconds. Positions count organic results only, without ads, sitelinks, video or image blocks, so the number an agent reads is the number a rank tracker would store.

Tools

ToolWhat it doesCost
google_searchLive organic results for a keyword: position, title, url, domain, snippet, up to 100 per call, plus Google's "People also ask" questions and related searchesBilled per page of up to 10 results that received results
domain_positionWhere a domain ranks for a keyword in a country and on a device; every position if it appears more than once, or "not in the top N"Same as google_search for the depth checked
list_countriesMarkets open right now and the default Google language of eachFree, no token

Arguments: query (2–120 characters), country (two-letter code such as US, GB, DE, FR, TR, UA), optional language (Google interface language, defaults to the country's), device (desktop or mobile) and limit / depth (1–100, default 10).

Setup

  1. Create an account at serper.live: it starts with 100 free searches, no card needed. Then create an API token on API tokens. Add credit when the free searches run out: by card from $10 or in USDT or USDC from $5, no subscription, credit never expires.
  2. Add the server to your client with the token in SERPER_LIVE_TOKEN. It runs with npx, so Node.js 20 or newer is all you need; Claude Desktop can also install it in one click without Node.js.

Claude Code

bash
claude mcp add serper-live -e SERPER_LIVE_TOKEN=sl_live_YOUR_TOKEN -- npx -y @serper-live/mcp

Claude Desktop

One click: download serper-live-mcp.mcpb from the latest release and open it. Claude Desktop shows an install dialog, asks for the API token once, stores it securely and runs the server with its own Node.js.

Or by hand, in claude_desktop_config.json:

json
{  "mcpServers": {    "serper-live": {      "command": "npx",      "args": ["-y", "@serper-live/mcp"],      "env": {        "SERPER_LIVE_TOKEN": "sl_live_YOUR_TOKEN"      }    }  }}

Cursor

~/.cursor/mcp.json or .cursor/mcp.json in a project:

json
{  "mcpServers": {    "serper-live": {      "command": "npx",      "args": ["-y", "@serper-live/mcp"],      "env": {        "SERPER_LIVE_TOKEN": "sl_live_YOUR_TOKEN"      }    }  }}

VS Code

.vscode/mcp.json — VS Code asks for the token once and keeps it out of the file:

json
{  "inputs": [    {      "type": "promptString",      "id": "serper-live-token",      "description": "Serper.live API token",      "password": true    }  ],  "servers": {    "serper-live": {      "type": "stdio",      "command": "npx",      "args": ["-y", "@serper-live/mcp"],      "env": {        "SERPER_LIVE_TOKEN": "${input:serper-live-token}"      }    }  }}

OpenAI Codex

bash
codex mcp add serper-live --env SERPER_LIVE_TOKEN=sl_live_YOUR_TOKEN -- npx -y @serper-live/mcp

Or by hand, in ~/.codex/config.toml (the Codex CLI, its IDE extension and the ChatGPT desktop app share this file):

toml
[mcp_servers.serper-live]command = "npx"args = ["-y", "@serper-live/mcp"]
[mcp_servers.serper-live.env]SERPER_LIVE_TOKEN = "sl_live_YOUR_TOKEN"

Any other MCP client: run npx -y @serper-live/mcp over stdio with SERPER_LIVE_TOKEN in the environment. Agents that set up servers from a repository, such as Cline, follow llms-install.md.

Environment

VariableRequiredDescription
SERPER_LIVE_TOKENfor searchesAPI token from API tokens. Without it list_countries still works
SERPER_LIVE_API_URLnoAPI base URL, default https://api.serper.live

What to ask

  • "Where does example.com rank on Google in Germany on mobile for project management software? Check the top 30."
  • "Compare the top 10 Google results for best running shoes in the US and the UK."
  • "Which markets can you search in?"

Billing and retries

Searches are billed to your Serper.live balance per page of up to 10 organic results that received results, at the price of the market (pricing); desktop and mobile cost the same. The free searches of the account are used first, a search that finds nothing costs nothing, and a search that fails or runs out of time is never charged. Each call sends an Idempotency-Key, so a repeated call is never billed twice.

Development

bash
npm installnpm run buildnpx @modelcontextprotocol/inspector node dist/index.jsnpm run bundle   # serper-live-mcp.mcpb: dist/, manifest.json, icon.png and the production dependencies

Releasing

The version lives in package.json, in version plus packages[0].version of server.json, which the MCP Registry checks against npm, and in manifest.json of the MCP Bundle. npm version sets all of them: its version script (scripts/sync-version.mjs) copies the new version into server.json and manifest.json.

A pushed v* tag runs .github/workflows/publish.yml: it checks that the tag matches every version field, builds, packs and validates the MCP Bundle, publishes to npm through trusted publishing (no npm token, with provenance), waits until npm serves the new version (up to 30 minutes), attaches serper-live-mcp.mcpb to the GitHub release and updates the MCP Registry through GitHub OIDC with two packages: npm and the bundle with its SHA-256. A failed run can be re-run as is: a version npm already has is not published again, and the release asset is replaced.

bash
npm version x.y.z --no-git-tag-version   # package.json, package-lock.json, server.json, manifest.jsongit commit -am "Release x.y.z"git tag vx.y.zgit push && git push origin vx.y.z

The npm package lists this workflow as its trusted publisher (package settings → Trusted Publisher → GitHub Actions: serper-live/serper-live-mcp, workflow publish.yml, with Allow npm publish ticked under Allowed actions).

Links

License

MIT

Source: README.md at commit 040a3f4

Tools

3

domain_position

Domain position in Google

Find where a domain ranks in Google's organic results for a keyword, in a country and on a device, right now. Prefer it over google_search when only one site matters: it returns that site's best position and every other position, or a note that the site is outside the checked depth. A subdomain counts as the domain: example.com also matches blog.example.com. Billed like google_search, per page of 10 results of depth that received results (https://serper.live/pricing).

Parametersdepthqueryrequireddevicedomainrequiredcountryrequiredlanguage

list_countries

Open Serper.live markets

List the countries Serper.live can search right now, with the default Google interface language of each. Call it when unsure whether a market is open, then pass a returned code as country to google_search or domain_position. Desktop and mobile are available in every market. Free, no token needed.

Takes no parameters.

Version history

6
  1. v2.2.0LatestNov 4, 2026
  2. v2.1.2Oct 20, 2026
  3. v2.1.0Oct 20, 2026
  4. v2.0.1Oct 20, 2026
  5. v2.0.0Oct 19, 2026
  6. v1.0.0Oct 18, 2026

Score

90% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts
  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts