How do I fetch web pages from a chosen country in n8n?
Install UpRock's n8n node (@uprock-ai/n8n-nodes-uprock), add your API key as an UpRock Crawler API credential, and use the node's "Crawl URL and Fetch Content" command to load a page on an opted-in device in the country you choose. The page's markdown comes back in markdown.text for the next node, and the same node can be handed to an n8n AI Agent as a tool.
Updated · Read as markdown
What the node does
UpRock's community node (@uprock-ai/n8n-nodes-uprock, version 0.5.6 on 21 Oct 2026) shows up in n8n as Scraper - UpRock Crawler and calls UpRock's MCP server for you. Pick a command:
| Command | What it does | Main fields |
|---|---|---|
Crawl URL and Fetch Content (fetch) | Loads a page on a device in the country you choose and returns its markdown and HTML | URL, Country, Device Type, Timeout Seconds, Retries |
Crawl URL (crawl_fetch) | Loads the page and returns the summary and resource addresses only | the same |
Fetch Resource URI (resource_fetch) | Reads a stored result in full | Resource URI (crawl:// or sweep://) |
Research Web Query (web_research) | Searches several engines from chosen countries | Query, Max Results, Suggested Countries. Use with care: when we tested on 21 Oct 2026 it returned empty or off-topic results from some countries |
Install it
UpRock's node is a verified community node, so on n8n Cloud and self-hosted n8n you can install it from the canvas: open the nodes panel, search for UpRock, and install it from More from the community (as an owner or admin). On self-hosted n8n you can also go to Settings → Community Nodes → Install and enter @uprock-ai/n8n-nodes-uprock.
For a container, install it into n8n's nodes folder and restart:
docker exec -u node n8n sh -c 'mkdir -p ~/.n8n/nodes && cd ~/.n8n/nodes && npm install @uprock-ai/n8n-nodes-uprock'docker restart n8nAdd your key
Create an UpRock Crawler API credential. Paste your key (just the key, from uprock.ai/app/api-keys) into API Key UUID and leave MCP Base URL (Advanced) at https://mcp.uprock.ai.
A workflow you can import
Two nodes: a manual trigger, and the UpRock node fetching example.com from Germany. Save it as a .json file and import it from the workflow menu, then pick your credential in the UpRock node:
{ "id": "uprockFetchDemo01", "name": "UpRock: fetch a page from Germany", "nodes": [ { "id": "trigger", "name": "Run", "type": "n8n-nodes-base.manualTrigger", "typeVersion": 1, "position": [0, 0], "parameters": {} }, { "id": "uprock", "name": "UpRock Crawler", "type": "@uprock-ai/n8n-nodes-uprock.upRockCrawler", "typeVersion": 1, "position": [240, 0], "parameters": { "command": "fetch", "url": "https://example.com", "country": "DE" }, "credentials": { "upRockCrawlerApi": { "id": "uprockCred01", "name": "UpRock" } } } ], "connections": { "Run": { "main": [[{ "node": "UpRock Crawler", "type": "main", "index": 0 }]] } }, "settings": {}}Or from the command line, if your credential has the ID uprockCred01:
n8n import:workflow --input=uprock-fetch.jsonn8n execute --id uprockFetchDemo01(n8n 2 removed n8n execute --file; import first, then run by ID.)
What comes out
"Crawl URL and Fetch Content" returns one item. These are the fields we got when we ran the workflow on 21 Oct 2026:
| Field | What's in it |
|---|---|
status | success |
meta.title, meta.url, meta.content_type | The page's title, final URL and type (Example Domain, https://example.com, text/html) |
markdown.text | The page as markdown, ready for the next node |
html.text | The rendered HTML |
resourceUris.markdown, resourceUris.html | Addresses of the stored results, for Resource Fetch later |
crawl | The raw response from UpRock's server |
In a following node, use {{ $json.markdown.text }} for the page text and {{ $json.meta.title }} for its title.
Using it with an AI Agent
The node is marked as usable as a tool, so you can attach it to an AI Agent node and describe when to use it in the tool description, for example: "Fetch a web page as it looks in a given country, or when another fetch failed." If you'd rather give the agent all of UpRock's tools, n8n's built-in MCP Client Tool node can connect to https://mcp.uprock.ai/mcp with the HTTP Streamable transport and a Bearer credential holding your API key (or to https://mcp.uprock.ai/<API_KEY>/mcp with no credential).
We ran the workflow above on 21 Oct 2026 in n8n 2.44.5 (self-hosted, Node 24) with UpRock Crawler 0.5.6: we imported a credential and the workflow from the command line, ran n8n execute --id, and got status: success, the page title and its markdown back in under a second, since UpRock had fetched that page recently. We didn't test the MCP Client Tool route.
FAQ
Which command should I use?
For most workflows, use "Crawl URL and Fetch Content". It runs crawl_fetch and then reads the stored markdown and HTML for you, so the next node gets the page text in markdown.text. "Crawl URL" returns only the summary and resource addresses, for when you want to read them later with "Fetch Resource URI".
Does it work on n8n Cloud?
Yes. n8n lists the UpRock node as verified (checked 27 Oct 2026), and verified community nodes install from the nodes panel on n8n Cloud as well as self-hosted n8n, by an instance owner or admin.
Can an AI Agent use it?
Yes. The node is marked as usable as a tool, so you can attach it to an AI Agent node. n8n's built-in MCP Client Tool node can also connect to UpRock's MCP server directly, with the endpoint https://mcp.uprock.ai/mcp, the HTTP Streamable transport and a Bearer credential holding your API key (or the endpoint https://mcp.uprock.ai/<API_KEY>/mcp with no credential).
How long does a fetch take?
In our test, about a second for a page UpRock had fetched recently. A fresh fetch usually takes 10 to 40 seconds; the node's Timeout Seconds setting allows up to 300.
What does it cost?
One credit per page fetched, which is $0.50 per 1,000 pages by card or USDC and $0.40 with UPT, prepaid. A workflow that fetches 5,000 pages a day uses 5,000 credits a day.
Other use cases to explore
- Retry the pages a batch gives up on: poll a batch, keep what finished, and send the rest to a second network.
- See a page as it looks in another country: one store page from five countries, with five prices, two languages and a cookie banner in one country only.
- See what a country costs elsewhere: a provider where choosing a country means paying for premium proxies.
- Search public video by moment: find the second something is shown or said, across platforms.
References
- UpRock n8n node on GitHub (uprockcom/n8n-nodes-uprock), checked 29 Oct 2026
- n8n docs, Install verified community nodes, checked 27 Oct 2026
- @uprock-ai/n8n-nodes-uprock on npm, checked 21 Oct 2026
- n8n docs, Install and manage community nodes, checked 21 Oct 2026
- n8n docs, Manual installation of community nodes, checked 21 Oct 2026
- n8n docs, CLI commands (import and execute), checked 21 Oct 2026
- n8n docs, MCP Client Tool node, checked 21 Oct 2026
- UpRock, setup for every agent, checked 21 Oct 2026
- UpRock, everything in one file (API, CLI, MCP, pricing), checked 21 Oct 2026
Get started
Add UpRock in one paste.
Paste this into Claude Code, Codex, Cursor or any agent with a terminal. It reads our docs, sets up the MCP server or CLI, and tells you the cost before it spends anything.
Set up UpRock for me: read https://uprock.ai/agents.md, connect the UpRock MCP server, and run one test crawl. Tell me what it costs before you spend anything.