agent-swarm
Install, self-host, deploy, operate, or use agent-swarm. Covers Docker Compose, Kubernetes,…
Query real Google results through Serply, with separate endpoints for news (dated coverage) and scholar (citation counts). Use when the ranking itself, the publication date, or the citation count is the answer.
$ npx -y skills add desplega-ai/agent-swarm --skill serply-search --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/serply-searchContext preview
The summary Claude sees to decide when to auto-load this skill.
Query real Google results through Serply, with separate endpoints for news (dated coverage) and scholar (citation counts). Use when the ranking itself, the publication date, or the citation count is the answer.
name: serply-search description: Query real Google results through Serply, with separate endpoints for news (dated coverage) and scholar (citation counts). Use when the ranking itself, the publication date, or the citation count is the answer.
Serply (https://serply.io) is a Google SERP API. It returns the ranked organic results for a keyword query, and exposes Google News and Google Scholar as separate endpoints. API reference: https://serply.io/docs
| Query shape | Use | |---|---| | "Companies building agent coordination layers" | Exa (conceptual, embedding match) | | "Blogs that argue knowledge is not data" | Exa (argument-shape) | | "What ranks on page 1 for `bun sqlite orm`" | **Serply** search (the ranking is the answer) | | "Funding rounds for company X since June" | **Serply** news (named entity plus date) | | "How heavily cited is paper Y" | **Serply** scholar (citation counts) | | "What is the official Bun docs URL?" | WebSearch (one concrete lookup) |
Exa ranks by embedding similarity, so it wins at "find me things shaped like this". Serply returns what Google actually ranks, which is what you want when position, recency, or citation weight is the thing being measured. A plain WebSearch is still the cheapest way to settle a single fact.
# Via MCP tool (preferred, handles secret resolution) mcp__agent-swarm__get-config(key="SERPLY_API_KEY", includeSecrets=true)
The value comes back at `configs[0].value`. Export to env or pass inline. Keys come from https://serply.io
curl -sS 'https://api.serply.io/v1/search/?q=bun+sqlite+orm&num=10' \ -H "X-Api-Key: $SERPLY_API_KEY" \ -H 'User-Agent: agent-swarm/1.0'
Parameters go in the query string:
Response (trimmed):
{
"results": [
{
"title": "Use Drizzle ORM with Bun | Bun Guides",
"description": "Drizzle is an ORM that supports both a SQL-like \"query builder\" API and an ORM-like Queries API.",
"position": 1,
"realPosition": 1,
"result_type": "organic",
"link": "https://bun.com/guides/ecosystem/drizzle"
}
]
}The snippet field is `description`, not `snippet`, and the URL field is `link`, not `url`. Each row also carries `metadata.display_url`. The payload has `answers`, `knowledge_graph` and `related_questions` beside `results`, populated only when Google returned them and empty otherwise.
Same host and header, different path, different response key.
curl -sS 'https://api.serply.io/v1/news/?q=openai+funding' \ -H "X-Api-Key: $SERPLY_API_KEY" -H 'User-Agent: agent-swarm/1.0'
News rows land in `entries[]`, each with `title`, `link`, `published` (RFC 1123), `summary`, and `source.title`. It returns the whole feed and ignores `num`.
curl -sS 'https://api.serply.io/v1/scholar/?q=attention+is+all+you+need&num=3' \ -H "X-Api-Key: $SERPLY_API_KEY" -H 'User-Agent: agent-swarm/1.0'
Scholar rows land in `articles[]`, each with `title`, `link`, `description`, `author.names`, and `extras.citations.count` as a string like `"Cited by 269516"`. When Google found a PDF, `doc.link` points at it.
A SERP row gives you a title, a snippet, and a rank. For anything you will cite, fetch the page. Serply is the index, WebFetch is the source.
If a query surfaces nothing relevant, write "not surfaced" rather than inventing a plausible link. A search that came back thin is a real finding and worth reporting as one.
Repo: desplega-ai/agent-swarm
Install, self-host, deploy, operate, or use agent-swarm. Covers Docker Compose, Kubernetes,…
Rebuild the feel of a reference motion-design clip (camera, depth of field, easing, captions,…
Reverse-engineer a short motion-design / product-update video (animation technique, timing…
Make a design-led motion-graphics video (showreel, eval comparison, feature or bug-hunt…
How to generate repo-committed video content (README hero videos, case-study clips, landing…
Read the task-digest extension's output. Use when someone asks how many tasks completed or…