From serpapi-pack
Production readiness checklist for SerpApi integrations. Use when deploying search features, validating credit budgets, or preparing SerpApi-powered apps for launch. Trigger: "serpapi production", "deploy serpapi", "serpapi go-live".
npx claudepluginhub flight505/skill-forge --plugin serpapi-packThis skill is limited to using the following tools:
- [ ] API key stored in secret manager (not env files)
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
search_metadata.status before using resultserror field in responsessearch_metadata.id)serpapi-rate-limits)app.get('/health', async (req, res) => {
try {
const account = await fetch(
`https://serpapi.com/account.json?api_key=${process.env.SERPAPI_API_KEY}`
).then(r => r.json());
res.json({
status: account.plan_searches_left > 0 ? 'healthy' : 'degraded',
serpapi: {
plan: account.plan_name,
remaining: account.plan_searches_left,
used: account.this_month_usage,
},
});
} catch {
res.status(503).json({ status: 'unhealthy', serpapi: { error: 'unreachable' } });
}
});
| Alert | Condition | Severity |
|---|---|---|
| Credits Low | remaining < 10% | P2 |
| Credits Exhausted | remaining = 0 | P1 |
| API Unreachable | Account check fails | P1 |
| High Error Rate | > 5% searches fail | P2 |
For version upgrades, see serpapi-upgrade-migration.