@elad12390/web-research-assistant
2.1.2ToolInstructionBundle
Description
MCP server for web research with 14 tools: SearXNG + Exa AI search, URL crawling, stealth scraping (Cloudflare bypass), package registry lookup (npm/PyPI/crates), GitHub stats, changelog fetching, tech comparison, error translation, API docs discovery, stock image search, and service health.
Triggered by
web searchfind packagescrawl urlscrape websitetranslate errorcompare frameworks
Download
Unsafe
tank install @elad12390/web-research-assistantWeb Research Assistant MCP
Core Philosophy
- Search first, fetch second — Use semantic search to find the best sources, then crawl only the most relevant URL.
- Self-hosted privacy — SearXNG runs locally; no search history leaves your infrastructure.
- Stealth when needed — Use
stealth_scrapefor Cloudflare-protected sites; usecrawl_urlfor open sites. - Structured over raw —
extract_datareturns tables/fields instead of full page text. - Error → solution pipeline — Feed stack traces to
translate_errorto get ranked SO/GitHub fixes instantly.
Quick-Start: Common Problems
"Search the web for X"
- Call
web_search(query=..., reasoning=...)— returns top results with URLs - If deeper content needed, call
crawl_url(url=<best URL>)on the top result
"Find how to use [library]"
search_examples(query="library usage examples")for codeapi_docs(api_name=..., topic=...)for official documentation → Returns human-written docs with examples
"Look up npm/PyPI/crates package"
package_info(name=..., registry="npm"|"pypi"|"crates")— version, downloads, licenseget_changelog(package=..., registry=...)— recent release notes
"I'm getting error X"
translate_error(error_message=<full stack trace>)— returns ranked solutions- Add
framework=andlanguage=for narrower results
"Scrape this protected site"
- Try
crawl_url(url=...)first — faster - If Cloudflare challenge returned → use
stealth_scrape(url=..., solve_cloudflare=true)
"Compare React vs Vue vs Svelte"
compare_tech(technologies=["React","Vue","Svelte"], reasoning=..., aspects=[...])
Decision Trees
| Task | Tool | Notes |
|---|---|---|
| General web search | web_search | SearXNG, category="code" for devs |
| Semantic/AI search | web_search_exa (via Exa) | Natural language queries |
| Fetch a URL | crawl_url | Fast, markdown output |
| Bypass anti-bot | stealth_scrape | Patchright, slower |
| Extract tables | extract_data | extract_type="table" |
| Package details | package_info | npm/pypi/crates/go |
| Search packages | package_search | By description |
| Release notes | get_changelog | Last N releases |
| GitHub health | github_repo | Stars, issues, activity |
| Fix an error | translate_error | Stack traces |
| Official API docs | api_docs | Discovers docs dynamically |
| Image assets | search_images | Pixabay royalty-free |
| Tech comparison | compare_tech | Side-by-side |
| Is service down | check_service_status | Status pages |
Reference Index
| File | Contents |
|---|---|
| (no references) | All tool descriptions are self-contained |