{
  "markdown": "# trawlia-mcp\n\nTrawlia as an MCP server: web search and page extraction, as two tools any MCP client can call.\n\nGet a free key at [trawlia.co/signup](https://trawlia.co/signup) - 100 credits a month, no card.\n\n## Claude Code\n\n```bash\nclaude mcp add trawlia --env TRAWLIA_API_KEY=twl_... -- npx -y trawlia-mcp\n```\n\n## Claude Desktop, Cursor, and anything else reading a JSON config\n\n```json\n{\n  \"mcpServers\": {\n    \"trawlia\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"trawlia-mcp\"],\n      \"env\": { \"TRAWLIA_API_KEY\": \"twl_...\" }\n    }\n  }\n}\n```\n\n## The tools\n\n### `trawlia_search`\n\nRanked, deduplicated results from the live web.\n\n| Argument | Default | Notes |\n|---|---|---|\n| `query` | required | Natural language, not keywords. |\n| `search_depth` | `basic` | `basic` is 1 credit and returns snippets. `advanced` is 2 and returns full page text. |\n| `topic` | `general` | `news` reaches news indexes and returns publication dates. |\n| `max_results` | 5 | Up to 20. These go into your context, so fewer is usually better. |\n| `include_domains` / `exclude_domains` | - | Host filters. Subdomains are included. |\n| `time_range` | - | `day`, `week`, `month`, `year`. |\n\n### `trawlia_extract`\n\nFetches URLs you already have and returns their readable content, with navigation, cookie banners and newsletter modals removed.\n1 credit per 5 URLs, so pass the whole list at once.\n\n## What the model sees\n\nResults come back as readable text rather than raw JSON, and carry two things a\nplain response would lose:\n\n- **When a page could not be read**, the result says so and why, instead of\n  presenting a snippet as though it were the article.\n- **A coverage line** when a source was unavailable, so the model can weigh a\n  thin result set properly rather than reporting it as a confident nothing.\n\nErrors are readable sentences that say whether retrying is worth it. Running out\nof credits says so and says not to retry; a rate limit says how long to wait.\n\n## Costs\n\n| Operation | Credits |\n|---|---|\n| Basic search | 1 |\n| Advanced search | 2 |\n| Extraction | 1 per 5 URLs |\n\nCharged before the work and refunded on hard failure.\nFull price list at [trawlia.co/pricing](https://trawlia.co/pricing).\n\n## Not available\n\nSearch and extraction, and nothing else. There is no crawler and no long-running\njob to poll. If your agent needs to walk a whole site, this is the wrong server\nfor it.\n\n## Checking it works\n\n```bash\nTRAWLIA_API_KEY=twl_... node smoke.mjs\n```\n\nSpends a few credits against the real API and prints what a client sees: the\ntool list, a rendered search, a rejected parameter, and an extraction.\nNot in CI, because it costs money and depends on the live web.\n\n## Environment\n\n| Variable | Required | Notes |\n|---|---|---|\n| `TRAWLIA_API_KEY` | yes | A `search`-scoped key is enough and is what you should deploy. |\n| `TRAWLIA_BASE_URL` | no | Defaults to `https://api.trawlia.co`. For pointing at a local server. |\n",
  "bytes": 2929,
  "sha": "701adebb2c4ad6994a33445b6f988d6e12ff21b3dda2750d2e726ac20a83347f",
  "repo_slug": "ayhoung/trawlia-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_co_trawlia_trawlia_mcp_19c7b271/readme"
}