{
  "markdown": "<!-- SOURCE OF TRUTH: this monorepo mcp/ directory. Any change to atheris-mcp.mjs\n     or this README must be pushed to the public mirror (github.com/atheris-ee/\n     atheris-mcp) and, if the server changed, published to npm as atheris-mcp. -->\n# atheris-mcp\n\nAn [MCP](https://modelcontextprotocol.io) server for [Atheris](https://atheris.ee)\nproxies — real-carrier 4G/5G mobile and residential IPs, per gigabyte. It gives an\nagent a fully autonomous path to route traffic through a specific-country IP: check\nlive stock, get a ready-to-use proxy URL, and check remaining GB — all as tool calls.\n\nZero dependencies. One file. Node ≥ 18.\n\n## Tools\n\n- **`atheris_stock`** — live proxy stock by country and pool (`mbl` = mobile,\n  `peer` = residential). No key needed. Call it first to pick a country with capacity.\n- **`atheris_proxy_url`** — a ready `http://` or `socks5://` proxy URL for a\n  country/pool/session/rotation. Hand it straight to any HTTP client.\n- **`atheris_usage`** — the key's remaining GB and expiry.\n\n## Setup\n\nYou need an Atheris access key (`pak_…`) from the [dashboard](https://atheris.ee/dashboard).\n\nFrom npm ([`atheris-mcp`](https://www.npmjs.com/package/atheris-mcp), also in the\n[official MCP registry](https://registry.modelcontextprotocol.io) as `io.github.atheris-ee/atheris-mcp`):\n\n```jsonc\n// Claude Desktop / Claude Code / Cursor / any MCP client\n{\n  \"mcpServers\": {\n    \"atheris\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"atheris-mcp\"],\n      \"env\": { \"ATHERIS_PROXY_KEY\": \"pak_your_key_here\" }\n    }\n  }\n}\n```\n\nStraight from GitHub also works: `\"args\": [\"-y\", \"github:atheris-ee/atheris-mcp\"]`.\n\nOr from a local checkout:\n\n```jsonc\n{\n  \"mcpServers\": {\n    \"atheris\": {\n      \"command\": \"node\",\n      \"args\": [\"/path/to/atheris-mcp.mjs\"],\n      \"env\": { \"ATHERIS_PROXY_KEY\": \"pak_your_key_here\" }\n    }\n  }\n}\n```\n\nEnv:\n- `ATHERIS_PROXY_KEY` — your pak access key (required for `atheris_proxy_url`\n  and `atheris_usage`; `atheris_stock` works without it).\n- `ATHERIS_API_BASE` — defaults to `https://atheris.ee/api/v1`. Your key is sent\n  as a Bearer token to whatever host this names, so only point it at a host you\n  trust.\n\nThe key is the same credential used as the proxy password — treat it like one.\nKeep it in `env`, not in command args, and rotate it from the dashboard if it\nleaks. The server talks only to `atheris.ee` (or your `ATHERIS_API_BASE`) and\ncollects no telemetry.\n\n**The `atheris_proxy_url` result is also a secret.** Both its `proxy_url` and\n`password` fields embed your pak key — treat the tool's output like the key\nitself: don't log it or paste it into shared transcripts.\n\n## Session rule (important)\n\nEach `atheris_proxy_url` call takes a `session` id. **The same session id returns the\nsame exit IP.** For many parallel identities (scraping distinct hosts, running many\nantidetect profiles), give each identity its own session id — reusing one sticky\nsession across many pins them all to a single exit. Use `rotation: \"hard\"` if you want\na fresh exit on every connection instead.\n\n## The underlying HTTP API\n\nThe server is a thin wrapper over the Atheris JSON API (bearer-authed with your pak key):\n\n- `GET /api/v1/stock`\n- `GET /api/v1/proxy?country=us&pool=mbl&session=<id>&rotation=sticky&protocol=http`\n- `GET /api/v1/usage`\n\nSee <https://atheris.ee/llms-full.txt> for the full agent reference, including\nbuying access programmatically.\n\n## License\n\nMIT © [Arvane Holdings OÜ](https://atheris.ee)\n",
  "bytes": 3469,
  "sha": "2b93d40a7538ea5cc5ba6bab3015f1d8d69d60a04331ba540adc19cd37dd714d",
  "repo_slug": "atheris-ee/atheris-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_atheris_ee_atheris_mcp_ffbbfcf5/readme"
}