# Send Serpapi Mcp to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "serpapi-mcp",
    "name": "Serpapi Mcp",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/merlintxu/serpapi-mcp",
    "canonicalUrl": "https://clawhub.ai/merlintxu/serpapi-mcp",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/serpapi-mcp",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=serpapi-mcp",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md",
      "scripts/airtable_log.mjs",
      "scripts/fetch_ai_overview.mjs",
      "scripts/serp.sh"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "serpapi-mcp",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-08T17:58:53.233Z",
      "expiresAt": "2026-05-15T17:58:53.233Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=serpapi-mcp",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=serpapi-mcp",
        "contentDisposition": "attachment; filename=\"serpapi-mcp-1.1.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "serpapi-mcp"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/serpapi-mcp"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/serpapi-mcp",
    "downloadUrl": "https://openagent3.xyz/downloads/serpapi-mcp",
    "agentUrl": "https://openagent3.xyz/skills/serpapi-mcp/agent",
    "manifestUrl": "https://openagent3.xyz/skills/serpapi-mcp/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/serpapi-mcp/agent.md"
  }
}
```
## Documentation

### serpapi-mcp

A wrapper skill that calls SerpAPI’s MCP server (Model Context Protocol) via the mcporter CLI.

### What this skill provides

Runs SerpAPI searches from OpenClaw via MCP (HTTP).
Returns the full SerpAPI JSON to stdout (the primary contract).
Optionally persists each query + response into Airtable:

raw JSON (full SerpAPI payload)
a structured “summary” (Top 10 organics, PAA/Related questions, videos, images, counts, flags)

### /serp usage

Treat this skill as providing the /serp command.

Syntax:

/serp <query>
/serp <query> [engine] [num] [mode]

Defaults:

engine=google_light
num=5
mode=compact

Notes:

If you want SERP features such as People also ask (PAA), video packs, knowledge graph, etc., prefer:

engine=google
mode=complete

Examples:

/serp site:cnmv.es "educación financiera"
/serp "AAPL stock" google 3 compact
/serp "mortgage pay off vs invest" google 10 complete

### How it works

Main script (prints JSON to stdout):

skills/serpapi-mcp/scripts/serp.sh "<query>" [engine] [num] [mode]

It calls this MCP tool endpoint:

https://mcp.serpapi.com/$SERPAPI_API_KEY/mcp.search

Optional Airtable logger:

skills/serpapi-mcp/scripts/airtable_log.mjs

### 1) MCP client (mcporter)

This skill requires mcporter installed on the host.

Install:

npm install -g mcporter

Verify:

mcporter --help

### 2) SerpAPI key(s) + failover

You can configure either a single key or a failover pool:

Single key:

SERPAPI_API_KEY


Failover pool (comma-separated, tried in order):

SERPAPI_API_KEYS

Recommended placement (any of these is supported):

Skill-scoped:

skills.entries.serpapi-mcp.env.SERPAPI_API_KEY
skills.entries.serpapi-mcp.env.SERPAPI_API_KEYS


Global:

env.vars.SERPAPI_API_KEY
env.vars.SERPAPI_API_KEYS

Failover behavior:

The script retries with the next key on common quota / auth / rate-limit errors (e.g. 429/401/403, “quota exceeded”, “rate limit”).
For other errors (e.g. malformed request), it stops early and returns the error.

### Enable / disable

Enable logging:

SERP_LOG_AIRTABLE=1 (or true)

You can set this globally in the Gateway env (always on) or per-run when executing the script.

### Airtable configuration (Gateway env)

Set these environment variables (do not store secrets in the repo/workspace):

AIRTABLE_TOKEN (Airtable Personal Access Token)
AIRTABLE_BASE_ID
AIRTABLE_TABLE (table name or table id)

### Write behavior & compatibility

Airtable does not auto-create fields.
The logger is schema-aware:

It reads the table schema via Airtable Metadata API.
It only writes fields that already exist in your table (by name).
It coerces values to the Airtable field type when possible (checkbox/number/text/select/date).

### Airtable table schema (recommended)

Field names must match exactly.

Core:

Query → Single line text
Engine → Single line text
Num → Number (integer)
Mode → Single line text
CreatedAt → Date/Time

Provenance:

SerpApiSearchId → Single line text
SerpApiJsonEndpoint → URL
GoogleUrl → URL

Raw payload:

ResultJson → Long text
ResultJsonTruncatedFlag → Checkbox

(Back-compat: the logger also supports ResultJsonTruncated if you prefer that name.)

Structured summary:

SummaryJson → Long text
SummaryJsonTruncated → Checkbox
OrganicTop10Json → Long text
RelatedQuestionsTop10Json → Long text
ShortVideosTop10Json → Long text
VideosTop10Json → Long text
ImagesTop10Json → Long text

Flags + counts:

HasAiOverview → Checkbox
HasAnswerBox → Checkbox
HasKnowledgeGraph → Checkbox
OrganicCount → Number (integer)
RelatedQuestionsCount → Number (integer)
ShortVideosCount → Number (integer)
VideosCount → Number (integer)
ImagesCount → Number (integer)

### Airtable size limits

Airtable has per-cell size limits. The logger truncates JSON strings if needed:

AIRTABLE_MAX_JSON_CHARS (default: 90000)
AIRTABLE_MAX_SUMMARY_CHARS (default: 90000)

### Output

Returns SerpAPI JSON. Depending on engine and what Google shows, the payload may include keys like:

organic_results
short_videos / videos_results
images_results
related_questions
knowledge_graph
answer_box / ai_overview
ads blocks (top_ads, bottom_ads, etc.)
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: merlintxu
- Version: 1.1.1
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-08T17:58:53.233Z
- Expires at: 2026-05-15T17:58:53.233Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/serpapi-mcp)
- [Send to Agent page](https://openagent3.xyz/skills/serpapi-mcp/agent)
- [JSON manifest](https://openagent3.xyz/skills/serpapi-mcp/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/serpapi-mcp/agent.md)
- [Download page](https://openagent3.xyz/downloads/serpapi-mcp)