web-forager
A search-and-fetch toolkit for AI agents, available as an MCP server and as standalone Agent Skills
Install / Use
claude mcp add CyranoB -- npx -y github:CyranoB/web-foragerIf the server publishes to npm under a different name, use that package instead — check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
Education & ResearchSupported Platforms
Tags
Skill content
View source on GitHubWeb Forager

The thing about information on the web is that it doesn't want to be found. It wants to hide behind cookie banners, keep itself to itself, and generally behave like a cat that knows it's time for the vet. Web Forager is the sort of dogged, slightly grubby assistant who goes out there anyway — accompanied by a duck of questionable temperament — rummages through DuckDuckGo, grabs pages directly when it can, and calls in Jina Reader when things get complicated. The results come back neatly converted for LLM consumption, which is to say, in a format that would make a librarian weep with either joy or despair, depending on the librarian.
Web Forager gives AI agents practical web research workflows as Agent Skills. The skills search DuckDuckGo, monitor news, fetch pages, and synthesize cited answers.
Default usage is skill-first. You do not need to configure an MCP server to use the research workflows.
Quickstart
Install all six skills with one command. It works for 50+ coding agents:
npx skills@latest add CyranoB/web-forager
The installer detects your agents, asks which skills you want, and places them in the right location.
Common variations:
npx skills@latest add CyranoB/web-forager --list
npx skills@latest add CyranoB/web-forager --skill deep-research
npx skills@latest add CyranoB/web-forager --skill '*' -a claude-code -a codex -y
Install For Your Coding Tool
Install as skills/plugins when your agent supports them. Use MCP only when your tool does not support skills, or when you want raw search/fetch tools instead of guided research workflows.
<details> <summary><strong>Claude Code</strong></summary>Install all six skills from the plugin marketplace:
/plugin marketplace add CyranoB/web-forager
/plugin install forager-skills@web-forager
Restart Claude Code, then check /skills.
The Quickstart command above is also available as a cross-agent install path.
MCP-only fallback:
claude mcp add --transport stdio web-forager -- uvx --python ">=3.10,<3.14" web-forager serve
</details>
<details>
<summary><strong>Codex</strong></summary>
Install the skills for the current project:
npx skills@latest add CyranoB/web-forager -a codex
Install globally instead:
npx skills@latest add CyranoB/web-forager -a codex -g
MCP-only fallback:
codex mcp add web-forager -- uvx --python ">=3.10,<3.14" web-forager serve
</details>
<details>
<summary><strong>VS Code / GitHub Copilot</strong></summary>
If your VS Code build supports agent plugins, use the command palette:
- Open
Cmd+Shift+Pon macOS orCtrl+Shift+Pon Windows/Linux. - Run
Chat: Install Plugin From Source. - Paste
https://github.com/CyranoB/web-forager.
MCP-only fallback: configure a local MCP server with the standard config below.
</details> <details> <summary><strong>Gemini CLI</strong></summary>Install the skills for the current project:
npx skills@latest add CyranoB/web-forager -a gemini-cli
Install globally instead:
npx skills@latest add CyranoB/web-forager -a gemini-cli -g
MCP-only fallback:
gemini mcp add web-forager uvx --python ">=3.10,<3.14" web-forager serve
</details>
<details>
<summary><strong>Pi Coding Agent</strong></summary>
Install the skills for the current project:
npx skills@latest add CyranoB/web-forager -a pi
Install globally instead:
npx skills@latest add CyranoB/web-forager -a pi -g
For one-off sessions from a local checkout, pass a skill path explicitly:
pi --skill web-forager/skills/deep-research
MCP-only fallback: configure a local MCP server with the standard config below.
</details> <details> <summary><strong>Kiro CLI</strong></summary>Install the skills for the current workspace:
npx skills@latest add CyranoB/web-forager -a kiro-cli
Install globally instead:
npx skills@latest add CyranoB/web-forager -a kiro-cli -g
Kiro's default agent loads skills from both locations automatically. For custom agents, add skill resources such as:
{
"resources": [
"skill://.kiro/skills/*/SKILL.md",
"skill://~/.kiro/skills/*/SKILL.md"
]
}
</details>
<details>
<summary><strong>Cursor, OpenCode, Cline, Windsurf, JetBrains</strong></summary>
Use the standard MCP config below unless your client supports Agent Skills or plugins from a GitHub repository. If it does, install from:
https://github.com/CyranoB/web-forager
</details>
Individual Skills
For any Agent Skills-compatible tool, install one skill by name:
npx skills@latest add CyranoB/web-forager --skill deep-research
Direct skill URLs also work:
npx skills@latest add https://github.com/CyranoB/web-forager/tree/main/skills/deep-research
Use The Skills
After installing, ask your agent naturally. The matching skill should be selected automatically by skill metadata.
Examples:
Research the current state of open-source browser agents.
Fact check: did Apple announce a foldable iPhone?
Audit this article for accuracy and framing: https://example.com/article
What's new with Anthropic this month?
Map the competitive landscape for AI meeting assistants.
Should we adopt Bun for a production Node service?
Available Skills
| Skill | Use it for | Output | | --- | --- | --- | | article-audit | Auditing a full article's accuracy, omissions, and framing | Per-claim verdicts and framing assessment | | deep-research | General research, lookups, deep dives | Adaptive report with citations | | fact-check | Verifying a specific claim | Verdict with supporting and contradicting evidence | | news-monitor | Recent news and updates | Chronological briefing | | competitive-intel | Market maps and competitor analysis | Landscape or positioning report | | tech-advisor | Tech/product evaluation and adoption decisions | Recommendation with evidence |
Article Audit
Use article-audit when you want to evaluate an article as a
whole rather than verify one isolated statement. The skill reads the complete article,
identifies 4-8 claims that carry its argument, and independently searches for evidence
that supports and challenges each claim. It also checks whether quoted sources have a
material interest, looks for credible voices the article omits, and tests important
numbers or forecasts against denominators, base rates, comparisons, and track records.
The report includes a bottom line, a verdict for every audited claim, missing voices,
scale and context, an overall framing assessment, and sources annotated by their role.
Verdicts range from CONFIRMED to FALSE; the separate framing judgment can identify
an article whose individual facts are accurate but whose presentation is promotional,
one-sided, or materially misleading. Use fact-check instead when
you only need to verify a single claim.
How Search Works
The skills prefer tools in this order:
- Existing MCP search/fetch tools, if your agent already has them.
- Built-in agent web search/fetch tools.
- The packaged Web Forager CLI through
uvx. - A direct
ddgsfallback throughuv run --no-project.
Python 3.10-3.13 is supported. Python 3.14 is not supported yet, so all documented
uvx commands pin --python ">=3.10,<3.14".
Optional: MCP Server
Use the MCP server only if you want reusable search/fetch tools exposed directly to an MCP-compatible client. Skills work without this setup.
Add a local stdio MCP server with this standard config:
{
"mcpServers": {
"web-forager": {
"command": "uvx",
"args": ["--python", ">=3.10,<3.14", "web-forager", "serve"]
}
}
}
Some clients use a different top-level config shape, but the command and args are the same.
Optional: CLI
Run commands without installing the package:
uvx --python ">=3.10,<3.14" web-forager search "your search query" --max-results 5 --output-format text
uvx --python ">=3.10,<3.14" web-forager news "your topic" --max-results 10 --output-format text
uvx --python ">=3.10,<3.14" web-forager fetch "https://example.com" --format markdown
Or install locally:
uv pip install web-forager
web-forager search "your search query"
web-forager news "your topic"
web-forager fetch "https://example.com"
MCP Tools
The MCP server exposes:
| Tool | Purpose |
| --- | --- |
| duckduckgo_search | Search the web with DuckDuckGo-compatible results |
| duckduckgo_news_search | Search recent news with dates and sources |
| web_fetch | Fetch a URL and return markdown or JSON |
Search and news tools return JSON by default and support output_format="text" for
LLM-friendly formatted results.
Development
git clone https://github.com/CyranoB/web-forager.git
cd web-forager
uv pip install -e ".[dev]"
pytest
Useful local commands:
web-forager serve
web-forager version --debug
Notes
- Search and news search use the
ddgspackage. - Fetch tries direct HTTP plus
trafilaturafirst, then falls back to Jina Reader for JavaScript-heavy or bot-protected pages. - The plugin marketplace manifest lives in
.claude-plugin/marketplace.json.
License
MIT. See LICENSE.
Related Skills
Agent-Reach
84.7kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
73.5kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
ruflo
73.1k🌊 The original agent harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, federation, vector RAG integration, and native Claude Code / Codex / Hermes and many more Integrated
last30days-skill
62.6kAI agent skill that researches any topic across Reddit, X, YouTube, HN, Polymarket, and the web - then synthesizes a grounded summary
