# idapixl/idapixl-web-research-mcp [Health: Active]

**Category:** 🔎 Search & Data Extraction  
**Repository:** https://github.com/idapixl/idapixl-web-research-mcp  
**GitHub Stars:** 2  
**Views:** 1  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/idapixl-idapixl-web-research-mcp

## Description
Pay-per-use web research for AI agents on Apify. Search (Brave + DuckDuckGo), fetch pages to clean markdown, and multi-step research with relevance scoring and key fact extraction.

## Tools
Capabilities this server exposes over MCP:

- **web_search** — - `query` (required) — search query, max 500 chars
- **fetch_page** — - `url` (required) — page URL
- **research_topic** — - `topic` (required) — research topic or question, max 500 chars

## Claude Desktop Quick Installation
Remote MCP endpoint (confidence: high). Install path detected from listing signals. Add as a URL/SSE server in your client:

```json
"mcpServers": {
  "idapixl-web-research-mcp": {
    "url": "https://idapixl--web-research-mcp.apify.actor/mcp"
  }
}
```

## Documentation & README

# Web Research MCP — Search, Fetch & Synthesize

An MCP server for AI agents that need to search the web, read pages, and synthesize research — all in a single tool call.

**Pay-per-use. No subscription. No idle charges.** Powered by Apify Standby.

---

## What it does

Three tools, designed to work together:

| Tool | What it does |
|---|---|
| `web_search` | Search the web. Returns titles, URLs, and snippets. Uses Brave Search API (if configured) or DuckDuckGo fallback. |
| `fetch_page` | Fetch any URL and return clean markdown. Strips ads, nav, and boilerplate. Supports article, full-body, or links-only extraction. |
| `research_topic` | Multi-step research in one call: search → fetch → score relevance → deduplicate → extract key facts → synthesize. |

---

## Quick connect

Add to your MCP client config (Claude Desktop, Cursor, etc.):

```json
{
  "mcpServers": {
    "web-research": {
      "type": "http",
      "url": "https://idapixl--web-research-mcp.apify.actor/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_APIFY_API_TOKEN"
      }
    }
  }
}
```

Replace `YOUR_APIFY_API_TOKEN` with your token from [apify.com/account/integrations](https://apify.com/account/integrations).

**Claude Code:**
```bash
claude mcp add web-research https://idapixl--web-research-mcp.apify.actor/mcp --transport http
```

**Cursor / Windsurf** — add via Settings > MCP Servers > HTTP URL.

---

## Pricing

Pay only for what you use. Charged per tool call.

| Event | Price |
|---|---|
| `web_search` | $0.003 |
| `fetch_page` | $0.005 |
| `research_topic` | $0.025 (single charge, includes all sub-calls) |

---

## Brave Search API setup (optional but recommended)

By default the actor uses DuckDuckGo HTML scraping, which works without any key. For better results and freshness filtering:

1. Go to [brave.com/search/api](https://brave.com/search/api/) and sign up for the free tier (2,000 queries/month)
2. Copy your API key
3. In the actor input, set **Brave Search API Key** (stored as secret — never exposed in logs)

When the key is set, `web_search` and `research_topic` will use Brave Search automatically. DuckDuckGo is the fallback on error.

---

## Example tool calls

### Search with freshness filter (Brave only)
```json
{
  "tool": "web_search",
  "arguments": {
    "query": "Claude 4 release announcement",
    "maxResults": 5,
    "freshness": "pw"
  }
}
```

### Read a page — links extraction mode
```json
{
  "tool": "fetch_page",
  "arguments": {
    "url": "https://docs.anthropic.com/en/api/getting-started",
    "extractMode": "links"
  }
}
```

### Deep research with focus
```json
{
  "tool": "research_topic",
  "arguments": {
    "topic": "Model Context Protocol",
    "maxSources": 3,
    "focus": "pricing and monetization"
  }
}
```

---

## Input configuration

| Field | Type | Default | Description |
|---|---|---|---|
| `braveApiKey` | string (secret) | — | Brave Search API key for higher-quality search |
| `maxSearchResults` | integer | 5 | Max results per `web_search` call (1–10) |
| `fetchTimeoutSecs` | integer | 30 | Page fetch timeout in seconds (5–120) |
| `proxyConfiguration` | object | — | Apify Proxy config (residential recommended for best success rates) |

---

## Tool reference

### `web_search`
- `query` (required) — search query, max 500 chars
- `maxResults` (optional) — 1–10, default 5
- `freshness` (optional) — `pd` past day, `pw` past week, `pm` past month, `py` past year (Brave only)

### `fetch_page`
- `url` (required) — page URL
- `timeoutSecs` (optional) — 5–120, default 30
- `extractMode` (optional) — `article` main content (default), `full` entire body, `links` all links

### `research_topic`
- `topic` (required) — research topic or question, max 500 chars
- `maxSources` (optional) — 1–5, default 3
- `focus` (optional) — sub-question to narrow the research (e.g. "performance benchmarks"), max 200 chars

---

## Notes

- Stateless: each MCP request gets an isolated server instance
- `research_topic` scores relevance, deduplicates near-duplicate sources (>70% sentence overlap filtered), and extracts key sentences containing your query terms
- Proxy: Apify Residential proxies improve success rates on pages that block datacenter IPs
- Charges fire before execution — if a page fails to load after charging, the tool returns an error

---

Built by [Idapixl](https://idapixl.com). TypeScript, MCP SDK 1.x, Apify SDK 3.x.

