tor_private_fetch
Privately fetch web pages via Tor, automatically deciding Tor or direct routing based on URL patterns for .onion, OSINT, and Tor-blocking sites.
Instructions
Fetch a URL with privacy-aware routing through Tor.
Automatically decides whether to route through Tor or direct based on URL pattern matching. Built-in rules route .onion through Tor, localhost direct, OSINT domains (Shodan, HIBP) through Tor, and Tor-blocking domains (GitHub, OpenAI) direct.
Args: params (TorFetchInput): Validated input parameters containing: - url (str): Target URL (e.g., 'https://example.com') - method (str): HTTP method, default GET - force_tor (bool): Override routing rules, force Tor - force_direct (bool): Override routing rules, force direct - response_format (ResponseFormat): 'json' or 'markdown'
Returns: str: Response with status_code, content, routing decision, and content_type.
JSON schema:
{
"status_code": int,
"url": str,
"content_type": str,
"content": str,
"routed_through": "tor" | "direct",
"routing": {"route": str, "reason": str}
}Examples: - Use when: "Fetch this webpage anonymously" -> url="https://example.com" - Use when: "Check Shodan for host info" -> url="https://api.shodan.io/..." - Use when: "Access onion site" -> url="http://xyz.onion/page" - Don't use when: You need to verify Tor is working (use tor_check_anonymity) - Don't use when: You need a new exit IP first (use tor_new_identity)
Error Handling: - Connection refused: Tor not running, returns install instructions - 403 Forbidden: Target blocks Tor, suggests force_direct or new_identity - 429 Rate Limited: Suggests tor_new_identity for fresh exit IP - Timeout: Suggests increasing TOR_TIMEOUT
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| params | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |