MCProxy
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCProxy list my proxy providers"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCProxy
An MCP server that gives AI agents on-demand access to proxies from the world's leading and Russian/CIS proxy providers — through a single, unified interface.
Built with FastMCP 3. When an agent needs a proxy, it calls one MCProxy tool; MCProxy talks to whichever provider you've configured and returns ready-to-use proxy strings.
Why
Every proxy provider has its own API, auth scheme, and quirks. MCProxy normalizes them behind one provider-agnostic tool surface so an agent (or you) can:
discover which providers are configured and what they support,
generate or list proxies with geo-targeting and rotation,
buy and extend proxies where the provider's API allows it,
check balance / usage and list targetable countries,
run requests through managed scraping APIs,
…without learning each vendor's API.
Related MCP server: Frostbyte MCP
How it works
AI agent ──MCP──> MCProxy (FastMCP server)
│
├─ unified tools: list_providers, get_proxies,
│ generate_proxy_list, buy_proxies, check_balance, …
│
└─ provider registry ─> per-provider adapters ─HTTP─> vendor APIsEach provider is a small adapter that maps the vendor's API onto shared models
(ProxyEndpoint, BalanceInfo, CountryListResult, …). A registry exposes them,
and a handful of generic tools dispatch to the right adapter based on a provider
argument. This keeps the tool count low (great for token usage) while supporting
many providers.
Supported providers
Implemented adapters
Provider | Region | Types | Operations |
Webshare | 🌍 US | datacenter, ISP, residential | list, balance, usage, countries |
IPRoyal | 🌍 LT | residential | generate, balance, usage, countries |
ProxyMesh | 🌍 US | datacenter, ISP | list, countries, usage |
ScraperAPI | 🌍 US | scraping API | scrape, usage |
ScrapingBee | 🌍 FR | scraping API | scrape, usage |
Proxy6 | 🇷🇺 RU | datacenter (IPv4/IPv6) | list, balance, countries, buy, extend |
ProxyLine | 🇷🇺 RU | datacenter (IPv4/IPv6) | list, balance, countries, buy, extend |
Proxy-Store | 🇷🇺 RU | datacenter, residential, mobile | list, balance, countries, buy, extend |
Proxy-Seller | 🇷🇺 RU | IPv4/IPv6/ISP/mobile/residential | list, balance, countries |
ASOCKS | 🇷🇺 RU/CIS | residential, mobile | balance |
FineProxy | 🇷🇺 RU | datacenter, ISP, residential | balance |
Documented & planned
list_providers also surfaces a catalog of major providers with public APIs whose
adapters are planned: Bright Data, Oxylabs, Decodo (Smartproxy), SOAX, NetNut,
Infatica, Proxy-Cheap, Zyte, Nimble, Rayobyte (global) and Mobile Proxy Space,
iProxy.online, ProxyMarket, Froxy (RU/CIS). See
docs/PROVIDERS.md for the full landscape, API notes and sources.
Install
Requires Python 3.12+. uv recommended.
git clone https://github.com/evgenygurin/mcproxy.git
cd mcproxy
uv venv --python 3.12
uv pip install -e . # add ".[dev]" for tests/lintingConfigure
Credentials are read from environment variables (or a local .env). Configure only
the providers you use. Copy .env.example and fill in your keys:
cp .env.example .env
# e.g.
WEBSHARE_API_KEY=...
IPROYAL_API_TOKEN=...
PROXY6_API_KEY=...list_providers shows which providers are configured and the exact env var names
each one needs.
Run
# stdio (default — for Claude Desktop, Cursor, etc.)
uv run mcproxy
# or
uv run fastmcp run server.py:mcp
# HTTP transport
MCPROXY_TRANSPORT=http MCPROXY_PORT=8000 uv run mcproxyUse with an MCP client
{
"mcpServers": {
"mcproxy": {
"command": "uv",
"args": ["run", "mcproxy"],
"env": {
"WEBSHARE_API_KEY": "your-key",
"PROXY6_API_KEY": "your-key"
}
}
}
}Tools
Tool | Purpose |
| Discover providers, capabilities and config status. Start here. |
| Capabilities for one provider. |
| List proxies already on your account (fixed-IP providers). |
| Generate proxy strings with geo + rotation (residential pools). |
| Purchase new proxies (spends money; supported providers only). |
| Renew existing proxies by ID. |
| Monitor spend and traffic. |
| Targetable locations for a provider. |
| Fetch a URL through a managed scraping API. |
| "Just give me a proxy" — picks a configured provider automatically. |
Every returned proxy includes a ready-to-use url (e.g. http://user:pass@host:port).
Settings
Global options use the MCPROXY_ prefix:
Variable | Default | Description |
|
|
|
|
| HTTP bind address. |
|
| Outbound HTTP timeout (seconds). |
| – | Preferred provider for |
Development
uv pip install -e ".[dev]"
uv run pytest # tests (in-memory MCP client + mocked HTTP)
uv run ruff check . # lint
uv run mypy src # typesAdding a provider: create src/mcproxy/providers/<name>.py subclassing
BaseProvider, override the operations it supports, and register it in
src/mcproxy/providers/__init__.py. See webshare.py for a clean reference.
Disclaimer
Use proxies lawfully and in accordance with each provider's terms of service and applicable law. This project is an integration layer; it does not endorse misuse.
License
Available Tools
11 toolsacquire_proxyARead-only
Get a single ready-to-use proxy from any configured provider.
Convenience for "I just need a proxy now": picks the first configured provider that can serve the requested type, preferring generation over listing. Use the more specific tools for control over which provider.
Inputs: country, proxy_type. Returns: Result of listing or generating proxies.
buy_proxiesA
Purchase new proxies. This spends real money on the provider account.
Only available for providers that support programmatic ordering (e.g.
proxy6, proxystore, proxyline). Check list_providers first.
Inputs: provider (required), quantity (required), proxy_type (required), country, +2 more. Returns: Result of listing or generating proxies.
check_balanceARead-only
Check the account balance / remaining traffic allowance for a provider.
Inputs: provider (required). Returns: Account balance / remaining allowance for a provider.
extend_proxiesA
Extend/renew existing proxies by their IDs. Spends real money.
Inputs: provider (required), proxy_ids (required), period_days (required). Returns: object
generate_proxy_listARead-only
Generate ready-to-use proxy strings with geo-targeting and rotation.
Best for residential/rotating providers (e.g. iproyal). Each proxy in the
result has a url field usable directly as an HTTP/SOCKS5 proxy.
Inputs: provider (required), isp, city, count, +6 more. Returns: Result of listing or generating proxies.
get_provider_infoARead-only
Get capabilities and configuration status for a single provider.
Inputs: provider (required). Returns: Static description of what a provider supports.
get_proxiesARead-only
List proxies already on your account with a given provider.
Best for providers that sell fixed IPs (e.g. proxy6, proxyline, webshare,
proxymesh). For rotating/residential pools, prefer generate_proxy_list.
Inputs: provider (required), limit, country, proxy_type. Returns: Result of listing or generating proxies.
get_usageARead-only
Get traffic / request usage statistics for a provider.
Inputs: provider (required). Returns: Traffic / request usage for a provider.
list_countriesBRead-only
List the countries/locations targetable with a provider.
Inputs: provider (required), proxy_type. Returns: count, provider, countries
list_providersARead-only
List all supported proxy providers and their capabilities.
Always call this first. Shows each provider's proxy types, supported operations, whether it is configured, and the env vars it requires.
Inputs: configured_only. Returns: result
scrapeBRead-only
Fetch a URL through a managed scraping API (e.g. scraperapi, scrapingbee).
Inputs: url (required), provider (required), country, premium, +1 more. Returns: Result of a managed scraping-API request.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 11 tools
Most tools target distinct actions (list, generate, buy, extend), but `acquire_proxy` overlaps somewhat with `get_proxies` and `generate_proxy_list`, and `check_balance` vs `get_usage` could be confusing without careful reading. Descriptions mostly clarify the intended use cases.
All tool names follow a consistent verb_noun pattern (list_providers, get_proxies, generate_proxy_list, buy_proxies, etc.) with snake_case throughout. Even `scrape` and `acquire_proxy` fit the verb-first style.
11 tools is well-scoped for a proxy management server. Each tool addresses a distinct need: provider discovery, proxy listing/generation, account checks, purchasing, and usage. No redundancy or bloat.
The surface covers the core proxy lifecycle: view providers, generate/list proxies, buy/extend them, and monitor balance/usage. Missing are configuration tools (e.g., to set up providers) and a deletion option, but these are minor gaps that agents can work around.
Maintenance
Related MCP Connectors
MCP server connecting AI agents to non-custodial staking data across 130+ networks.
One connector for 15,000+ MCP servers plus your team's private MCPs, from any AI client.
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
MCP server for building and testing AI agents with multi-model experimentation and insights.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA proxy server that unifies multiple MCP servers, enabling seamless tool, prompt, and resource management via the MetaMCP App.67 npm155Apache 2.0
- AlicenseNot gradedqualityCmaintenanceA unified MCP server providing AI agents with 40+ developer APIs including geolocation, crypto prices, DNS lookup, and web scraping. Enables natural language access to various tools through a single gateway.1MIT
- AlicenseNot gradedqualityDmaintenanceMCP server giving AI agents controlled residential-proxy web access with optional browser rendering and structured extraction from 60+ sites.29 PyPI1MIT
- FlicenseAqualityDmaintenanceMCP server that wraps the Proxyline proxy provider API, exposing all methods as MCP tools for AI assistants. Enables managing proxies, orders, countries, IPs, balance, and tags through natural language.119 npm-