Agents don't crash. They believe.
When a scraper hits a challenge page, a cookie wall, or an empty SPA shell, it rarely throws an error. It returns the wrong page as if it were content. Your agent reads it, trusts it, and confidently does the wrong thing. Nobody notices until a customer does.
<h1>Checking your browser
before accessing…</h1>
Your agent thinks this is the pricing table. It will quote it to your customer.
warnings: ["challenge_page_detected"]
content: returned, flagged low
Your agent knows it got blocked, and routes around it. That is the whole product.
A naive fetch vs /v2/perceive on a Cloudflare-walled page, ending on an honest 0.31. Real terminal, real URL, no cuts.
Six verbs, live today. Every read scored.
The perception layer between your agent and the real world: every file it must open, every page it must read, through one server and one key.
Any URL into clean Markdown, JSON, or a screenshot. Real Chromium rendering; lazy-load and anti-bot handled. Every render scored 0.0 to 1.0.
POST /v2/perceive46 file formats in and out: PDF, DOCX, XLSX, PPTX, PNG, SVG, MP3 and more. Tables and structure preserved. p50 1.8s for PDF.
POST /v2/convertMap a site and surface the URLs that matter, before you spend ops reading the wrong ones.
POST /v2/discoverResolve a company, product, or person to its source pages.
POST /v2/lookupLong documents into faithful summaries that fit an agent's context window.
POST /v2/distillAny URL or file into RAG-ready JSONL chunks in one call.
POST /v2/ingestPilot, Conduct and Sandbox: real browser control through the same server, built in the open. Founding users get hands first.
2026Also: Watch — monitor any page for changes, with a webhook or email on every diff. POST /v2/watch
Meets your stack where it is
Agent-native first. The same six verbs through whichever door fits your stack, all live today.
One command, ten tools in your client. The native path for Claude, Cursor and Windsurf.
npx @enconvert/mcp setupSix v2 endpoints behind one key. Domain-restricted public keys are safe to ship in client code.
api.enconvert.com/v212 plugins that bring conversion into the editor your team already uses.
Read and convert pages where you already browse.
Next: Zapier and n8n templates · tracked in the changelog
Retire the duct tape
The real competitor isn't another API. It's the pile of vendors and glue scripts you're babysitting right now.
Five vendors. Five bills. Five ways to fail silently.
One server. One key. One bill. And a receipt for every read.
Scrapers stop at pages. Converters stop at files. Your agent needs both, and it shouldn't take two vendors to get them.
render_quality 0.0 to 1.0 on every response. A blocked page comes back flagged with a low score and a warning, not passed off as content. No other layer does this.
Domain-restricted public keys ship safely in client code. No proxy server, no key anxiety, no backend just to call an API.
You're about to depend on us. Here's why that's safe.
We can't hand you a wall of logos yet. We can hand you the things logos are a proxy for: security posture, honest failure modes, and a public record of shipping.
Every URL is SSRF-screened: no private IPs, no metadata endpoints, no internal networks. Ever.
Low-quality renders come back flagged with a low score and a warning, not passed off as content. Reserved paths return 422, never a silent 200.
Public changelog, public status page. Watch the pace we ship at before you depend on us.
What we store, for how long, and what happens to your agent if we have an outage. Written for engineers, not lawyers.
Your first honest read, in under a minute
You don't even have to think of a test case. We hand you the winning one.
One command in Claude, Cursor or Windsurf. REST keys work everywhere else.
npx @enconvert/mcp setupA deliberately hostile page we host, so your first call is the impressive one.
fixtures.enconvert.com/hostile-spaClean markdown comes back scored. Wire one alert on scores below 0.40 and silent failure is off your list.
"render_quality": 0.93Start free. Scale when your agent does.
One price everywhere: the numbers on this page are the numbers in the API and on the receipt.
Free while in beta. Founding access, not a trial.
For the side project getting serious.
For teams scaling an agent past the demo.
For when your agent is the product.
Running past 50,000 ops a month, or need custom retention and terms? Talk to us.
Something missing? The docs go deeper, and the founder answers email.
What exactly does render_quality measure?
A 0.0 to 1.0 score of how faithfully the page rendered before we read it. Challenge pages, empty SPA shells, partial lazy-loads and interstitials all pull it down. A low score comes back with a warnings array naming what we detected, and the full output is still returned so you decide what to trust, which means a bad read can never quietly enter your agent's context unnoticed.
What happens when a page blocks you?
You get the truth: a low score, a warnings array naming what we detected, and no garbage passed off as content. Sometimes the web wins. The product guarantee is that you will know when it does, in the same response, not from a customer three days later.
Is this production-ready?
The six v2 perception endpoints are live and production-hardened: SSRF screening on every URL, honest failure contracts, and a public status page and changelog you can watch before you commit. We publish what breaks and when we fix it.
How is this different from Firecrawl or CloudConvert?
They're good tools on one side of the boundary. Scraping APIs stop at pages; conversion APIs stop at files. Agents need both, so teams end up wiring two or three vendors together. Enconvert is one MCP server for both, with one bill, and it's the only layer that scores every read and refuses to pass off blocked pages as content.
Do I need a backend?
No. Public keys are domain-restricted, so they're safe to ship in client code. Secret keys exist for server-side work when you want them.
When do hands ship?
Pilot, Conduct and Sandbox (real browser control) land in 2026, built in the open with progress on the changelog. Nothing on this page is sold before it's live. Founding users get hands first.
Your agent never acts on a lie
One MCP server for every file and every page, with a receipt for every read. Free tier, 100 ops a month, no credit card.
$ npx @enconvert/mcp setup