Guide

Proxies for MCP Servers: The Fetch-Heavy Ones Need Residential IPs, and Where the Proxy Goes

Proxies for MCP servers: the fetch-heavy ones (scraping, search, price checks) need residential proxies in the server's HTTP client; private-API ones do not. Where the proxy goes, per runtime.

HProxy Team··4 min read
HProxy.Guide

Free proxies won't hold up here.

Shared datacenter IPs get flagged and dropped fast. When it has to hold, gaming, streaming, accounts, you need mobile and residential IPs that read as a real device, from $0.44/GB, pay as you go.

See plans & pricing

The Model Context Protocol is how AI coding tools grow new hands. Claude Code, Cursor, Claude and others connect to MCP servers, small programs that expose tools, and through them the assistant can do things it could not on its own: query a database, call an internal API, read the filesystem, or reach out to the web. That last category is the one this page is about, because an MCP server that fetches the web is a web client, and web clients that run at scale need proxies.

Not every MCP server does. The proxy question splits cleanly, and knowing which side a server is on saves you from either a pointless purchase or a wall of blocks.

Which MCP servers need a proxy

The line is what the server reaches out to.

  • Fetch-heavy servers need proxies. A web-fetch server, a scraping server, a search server, a price checker, a server that reads public pages or pulls listings, makes ordinary HTTP requests to sites that meter by IP, fingerprint the connection and block the address that asks too much. These need residential proxies in exactly the places any scraper does.
  • Private-target servers do not. A server that talks only to your own database, an internal API, a paid data API with a key, or the local filesystem, never touches the open web as an anonymous client, so a proxy adds nothing.

There is a detail that pushes fetch servers toward proxies harder than a laptop scraper: an MCP server usually runs on infrastructure, a VPS, a container, a cloud function, so its default address is a datacenter IP, which is the exact profile many sites distrust on sight. A fetch server on a cloud box often gets challenged where the same request from a home connection would not. A residential exit is what makes its requests read as ordinary, which our explainer on how websites detect proxies explains.

Where the proxy goes

In the server, not in the client. This is the point people miss. The AI tool, Claude Code or Cursor, calls the MCP server and receives a result; it never sees how the server got that result. So the proxy lives in the server's own HTTP client, configured the same way as any scraper in that language. The client stays oblivious, which is correct: the proxy is the server's business.

Where the proxy sits in an MCP fetch server
  1. Claude Code / Cursor

    calls the MCP tool; never sees the proxy

  2. MCP server

    your program, exposes fetch tools

  3. Proxy in the server's HTTP client

    rotating residential or sticky ISP

  4. The target site

    sees an ordinary home address

Source: Model Context Protocol architecture and standard proxy placement, read 24 August 2026

Match the type to what the server fetches: rotating residential when it hammers a defended site, a sticky ISP exit when it keeps a session, datacenter for friendly open APIs. The exact code is the same as any scraper in that runtime, and our library guides cover the common ones: Node.js and node-fetch for a TypeScript MCP server, Python requests and httpx for a Python one, and Playwright or Puppeteer if the server drives a headless browser.

Building one with an AI coding tool

The neat part is that the tool calling the MCP server can also build it. Ask Claude Code or Cursor to write the MCP server and to route its fetch tools through a proxy from the start, giving it the gateway endpoint and the library pattern for your language, and it produces a server with the proxy already in the HTTP client. That is the fastest honest path to a fetch server that survives contact with a defended site, and it is the same integration our proxies for Claude Code page describes for any scraper the tool writes.

One boundary, so nobody wires it wrong: the proxy on the server changes only the requests the server makes to websites. It does not touch the AI tool's model quota or billing, which follow the tool's own account and key. The proxy is about the web the server reaches, full stop.

Where HProxy fits

For fetch-heavy MCP servers, point the server at the residential pool from $0.44/GB on defended targets, or a static ISP address at $2.70/IP a month when it keeps a session, metered by traffic with no KYC and sized to what the server pulls. Because MCP servers run on infrastructure, the move from a default datacenter IP to a residential exit is often the single change that turns a challenged server into a working one. Confirm the exit with the proxy checker, keep the proxy in the server's HTTP client, and the tools you expose to Claude Code or Cursor start returning data instead of block pages. The wider picture is in proxies and AI coding tools.

Sources

Frequently asked questions

Do MCP servers need proxies?
The ones that fetch the web do. The Model Context Protocol lets tools like Claude Code, Cursor and Claude connect to servers that extend what they can do, and a server that scrapes a site, runs a search, checks prices or reads public pages makes ordinary HTTP requests that meet per-IP rate limits, bot walls and geo-gating. Those need residential proxies exactly where a scraper would. An MCP server that only talks to a private API, a database or the local filesystem does not need a proxy at all.
Where does the proxy go in an MCP server?
In the server's own HTTP client, the same place any scraper puts it, not in the AI tool that calls the server. An MCP server is just a program that exposes tools over the protocol; when one of those tools fetches a URL, route that fetch through a proxy in whatever HTTP library the server uses. The client, Claude Code or Cursor, never sees the proxy; it only sees the tool's result.
What proxy type does a fetch MCP server need?
Match it to what the server fetches. A general web-fetch or scraping server pointed at defended sites wants rotating residential; one that logs into an account or holds a session wants a sticky residential or ISP exit; one hitting friendly open APIs is fine on datacenter. Because the server runs on infrastructure rather than a laptop, its address is a datacenter IP by default, which is the profile many sites distrust, so a residential exit is what makes its requests read as ordinary.
Can I build an MCP server with a proxy using Claude Code?
Yes, and it is a natural fit: ask Claude Code or Cursor to build the MCP server and to route its fetch tools through a proxy from the start. It writes the server in TypeScript or Python with the proxy in the HTTP client, the same code our library guides show. Give it the gateway endpoint and the pattern for your language and it wires it in.
Does a proxy on an MCP server change the AI tool's limits?
No. The proxy only affects the requests the server makes to other websites. The AI tool's own model quota and billing are unchanged, because those follow the tool's account and key, not the server's outbound address. The proxy is purely about the web the server reaches, not the model behind the client.

Proxies that don't die mid-job

Residential, ISP, datacenter and mobile, verified by the same engine that runs tens of millions of checks. They read as a real device and hold up under load. Pay as you go, and your balance never expires. $0.44/GB is the 2,000 GB+ rate; a single gigabyte is $0.50/GB, with no minimum order.

129M+ proxy checks run · 100+ countries · HTTP / HTTPS / SOCKS · re-checked every few minutes · no signup