UnblockingAPI plugs into Cursor over MCP, so the agent can read live documentation, changelogs and pages that normally block automated tools - fully rendered, through your own API key.
500 free credits · No credit card · Open-source MCP server
{
"mcpServers": {
"unblockingapi": {
"command": "npx",
"args": ["-y", "@unblockingapi/mcp"],
"env": { "UNBLOCKINGAPI_KEY": "your_api_key_here" }
}
}
}Point Cursor's agent at a changelog or an API reference and it reads the live page instead of recalling an old version.
Framework docs and dashboards that render client-side come back complete, not as an empty HTML shell.
Add it once to your global mcp.json and it's available in every Cursor project you open.
Cursor's agent can fetch a page on its own, but it stalls on anything that renders with JavaScript or sits behind bot protection - a product page that loads prices client-side, a search-results page with a CAPTCHA, a dashboard that needs a login session. UnblockingAPI gives it a real browser fetcher instead, so those pages come back rendered rather than empty or blocked.
If the agent needs structured fields rather than a full page - a price, a title, a list of listings - the visual editor builds that without CSS selectors or regex: load the page, tap what you want, and it saves a template that returns clean JSON on every call.
Or just ask Cursor's agent to install @unblockingapi/mcp with your key - it'll write this for you. Same package as Claude, VS Code and Zed.
Or drop this into ~/.cursor/mcp.json.
{
"mcpServers": {
"unblockingapi": {
"command": "npx",
"args": ["-y", "@unblockingapi/mcp"],
"env": { "UNBLOCKINGAPI_KEY": "your_api_key_here" }
}
}
}Cursor has a web tool of its own. One rule in .cursor/rules/unblockingapi.mdc makes the agent read every page through UnblockingAPI - plain fetch first, a real browser only when the page needs JavaScript.
---
description: Read web pages through UnblockingAPI
alwaysApply: true
---
When you need the contents of a URL, use the `unblock_fetch` tool from the
unblockingapi MCP server instead of the built-in web tool. Call it with
render=false first; if the page comes back thin or says JavaScript is required,
call it again with render=true. Before parsing a recognisable site by hand, call
`find_templates` with the URL - if a template covers it, pass its reference as
`unblock_fetch`'s template argument to get structured JSON instead of HTML.Full guide in the repository.
Paste this into the agent once you've connected.
Use unblockingapi to fetch a product page from amazon.com as structured data - a title, a price and a rating.unblock_fetch hands back the full rendered page. For clean fields instead - a price, a title, a whole list - build a template visually in the editor: load the page, tap what you want, done. No CSS selectors to write by hand.
Save it and it's a reusable API endpoint - same account, same key, same as the built-in templates. Build the structure once, then call it from your app - or your AI agent - forever.
Try the editorNo account needed to try it · No credit card · More about the editor
Select one item. Similar items are detected automatically.
Website
Sony WH-1000XM5
$299.99
Bose QuietComfort
$249.00
Bang & Olufsen Beoplay
$1,714.99
Extracted JSON
Tap one item, get every item - as an array.
Into ~/.cursor/mcp.json for every project, or a project-local .cursor/mcp.json if you only want it there. You can see it in Cursor under Settings → MCP.
Yes. Cursor's agent can edit its own config, so pasting your key and asking it to install @unblockingapi/mcp usually works - the manual JSON below is exactly what it would write.
Add the rule shown above to .cursor/rules/unblockingapi.mdc (or to your User Rules for every project). The agent then reaches for unblock_fetch whenever it needs a page, plain fetch first and a real browser only when the page needs JavaScript.
Yes - every request runs through UnblockingAPI's proxies, which needs an account. New accounts start on Pay as you Go with 500 free credits and no credit card, which is plenty to try it.
Almost always a missing or wrong UNBLOCKINGAPI_KEY, or being out of credits - both come back as a clear message rather than a silent failure.
No - that's what the visual editor is for. Load a page, tap the fields you want, and it builds a structured-data template for you - no selector to write by hand.
Yes. UnblockingAPI runs a real headless browser and rotates residential proxies, so Cursor's agent gets the fully rendered page even for single-page apps, dashboards and sites that block plain HTTP requests.
One API key, every assistant. Connect as many as you like.