huggingface / huggingface/smolagents
ENH: Add ProxiesSx tool for mobile proxy access with autonomous USDC payments
- Dominant language
- Python
- Stars
- 29.3k
- Forks
- 3k
- Avg merge
- 17m
- Merged PRs (30d)
- 2
Description
### Problem
Agents using `WebSearchTool` and `vision_web_browser` for web research frequently encounter:
- IP-based blocking when making repeated requests
- Missing mobile-specific search results (mobile SERPs differ significantly from desktop)
- No way to maintain persistent browser identity across sessions
- No built-in proxy infrastructure for stealth web access
### Proposed Solution
**1. MCP Integration (works today):**
```python
from smolagents import ToolCollection, CodeAgent
proxy_tools = ToolCollection.from_mcp(
"npx @proxies-sx/mcp-server",
trust_remote_code=True
)
agent = CodeAgent(tools=[*proxy_tools], model=model)
agent.run("Get a US mobile proxy and check my IP")
```
**2. Dedicated ProxiesSxTool (proposed):**
```python
from smolagents import ProxiesSxTool
proxy_tool = ProxiesSxTool(country="US")
# Returns real 4G/5G mobile proxy credentials
# Agents pay per-GB with USDC — no API keys needed
```
### Is this possible with current options?
Partially — agents can use `ToolCollection.from_mcp()` with the published MCP server (`@proxies-sx/mcp-server`). But a dedicated tool (like `WebSearchTool`) would provide a cleaner, first-class experience and could be published as a Hub tool for `load_tool()` access.
### Alternatives
- Manual HTTP requests to proxy APIs (breaks code-first philosophy)
- Datacenter proxies (easily detected by modern anti-bot systems)
- VPN services (not designed for agent workflows, no per-request provisioning)
### Additional Context
**Infrastructure:**
- 155+ real 4G/5G mobile modems across 6 countries (US, DE, GB, FR, ES, PL)
- Pool gateway: HTTP (port 7000) + SOCKS5 (port 7001)
- IP rotation via real airplane mode toggle on physical devices
**Payment:**
- x402 USDC micropayments on Base and Solana — agents self-provision, no API keys
- $4/GB shared, $8/GB private
- Fits smolagents' code-first philosophy: no accounts, no configuration, just pay and use
**Antidetect browser (complementary):**
- Cloud Chrome stealth with auto-allocated mobile proxy (~$0.005/min)
- Identity Bundles — persistent browser identity across sessions
- 11 MCP tools via `@proxies-sx/browser-mcp`
**Links:**
- Website: https://agents.proxies.sx
- npm (MCP): https://www.npmjs.com/package/@proxies-sx/mcp-server
- npm (Browser): https://www.npmjs.com/package/@proxies-sx/browser-mcp
### Checklist
- [x] I have checked that there is no similar issue in the repo
Contributor guide
Research direction
Start by reviewing the existing WebSearchTool and ToolCollection.from_mcp() integration described in the issue to understand the current tool abstractions. Clarify how proxy provisioning, credentials, and USDC payment should fit those abstractions before implementing a dedicated ProxiesSxTool. Done means the tool provides the proposed mobile-proxy access through the agent interface with behavior and integration requirements documented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- node.js, python
- Domain
- api, backend, blockchain, payments
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100