logoalt Hacker News

Launch HN: Pomerado (YC F26) – Turn any website into an MCP for agents

56 points • by alanjm23 • yesterday at 5:11 PM • 44 comments • view on HN

Hi HN, we’re Alan and Akshay from Pomerado (https://pomerado.ai/). We connect your agents to any website by turning sites into deterministic, self-healing APIs in minutes, fully self-serve.

Agents are no longer limited by their intelligence, but rather by their ability to interact with systems. Airlines, banks, e-commerce, insurance portals, government sites, and legacy portals all lack APIs or MCPs and are common parts of personal assistant or business workflows. Agents instead rely on browser automation or computer use, which can be slow, expensive, and unreliable. And even if computer use were perfect, most companies have banned it out of security and compliance concerns.

We discovered this problem while tinkering with our own personal assistants. When OpenClaw came out, we wanted to “live our lives through our agents” and have them do everything for us. We soon found their usefulness was restricted by what tools they could connect to. For example, when trying to book flights, they fell back on computer use, which failed to checkout. These issues got magnified on repeated workflows, like searching many airlines at once.

Pomerado started off as a project to improve these personal assistant workflows. As we started building, we realized that just-in-time tool creation could have significant applications for AI builders in legacy verticals.

We’re ex-McKinsey and Scale AI, where we drove agent deployments in healthcare, professional services, and telecom. Each time, the biggest bottleneck was getting agents to interface well with legacy websites and apps.

Pomerado is what we built. It’s a self-serve platform where devs can create APIs for any website (even those they don’t own), in minutes. Users (or their coding agents) provide a short natural language description, answer a few questions about their workflow, and receive a MCP in less than an hour. Future tool calls use the deterministic MCP, which usually returns results in 5-30 seconds.

Here’s a walkthrough of our product: https://youtu.be/Bi4jci7rgHo

In practice:

- Our agent opens a browser, explores the website, and performs the requested task once by writing HTTP requests or a Playwright script. This example run establishes how to navigate the website, interact with the relevant controls, and obtain the desired result. If any additional user input is needed (e.g., login, clarification) the agent will ask the user over MCP.

- Afterwards, the agent uses the example run, along with all of the data it recorded, to create a generalizable and repeatable API. Throughout this process, a separate Guardian model reviews the coding agent’s calls against a set of guardrails. We also run a battery of tests with synthetic inputs to ensure that the API is generalized and not overfit to one input. A final publication agent ensures that the integration publishes a reasonable and generalized input/output schema

- We also handle sites that require authentication and 2FA. For authentication, we pass off to a deterministic sign-in process to ensure the model and our recorders never read customer credentials. Users can store 2FA TOTP seeds or link their account to a Pomerado phone number for us to autofill 2FA for them as well

- If future runs fail, a maintenance job is kicked off to repair and improve the tool. The maintenance job can fix broken steps (e.g., a renamed button), add additional functionality (e.g., searching for business class flights in addition to economy), or add new guardrails (e.g., reservation dates must be in the future). We’ve even seen people improve tools by just saying “please make this faster”

Unlike computer use, our MCPs are deterministic at runtime, which makes them much faster and cheaper. By taking slightly longer to do a task the first time, you reap the benefits much more in the future. It’s a great fit for repeated, high-volume tasks you want your agent to do.

We’d love to have you try it! We have both an open-source (MIT) (https://github.com/Pomerado/pomerado) and a free hosted version (https://app.pomerado.ai).

So far, users of Pomerado include:

- A personal trainer using agents to prepare workouts and message clients. Before Pomerado, agents couldn’t login and use the site reliably, so this was all manual

- Car dealerships connecting their Grok Bots to legacy dealer systems, including marketplaces, CRMs, and ERPs. Dealers switched from computer use, which could take 1hr+

- Personal assistants using Pomerado to integrate with a broad range of consumer websites

Please ask any questions or share any feedback in the comments, thanks!


Comments

rahimnathwani • yesterday at 6:04 PM

What are the main advantages compared with https://github.com/mvanhorn/cli-printing-press

The obvious differences I can see are:

- generates an MCP server instead of a CLI

- at 'minting' time, uses OpenAI API keys, instead of coding agent subscription

- tries to solve for a particular use case, instead of all the site provides

➕ show 1 reply
jeroenhd • today at 12:40 AM

Do you respect the wishes of sites and services that do not want the extra load? How does one opt their online service out?

vkchap2 • today at 7:52 AM

Congrats on the launch. One question from our own work (we build a tool that finds hidden text in documents before an agent reads them): when you turn a page into an API, what happens to text the page hides from people? Think display:none, zero-size fonts, off-screen elements and HTML comments. Some sites now put instructions aimed at agents in exactly those places.

Does the generated API pass that text through to the agent, or only what a person would see on the page?

bshafiq • yesterday at 7:28 PM

Congrats on the launch! The approach of turning unstructured sites into deterministic MCPs is really interesting, especially the self-healing maintenance jobs.

Curious about the failure mode: what happens when a browser action fails or times out? The agent will often just blindly retry the exact same MCP tool call with the exact same arguments. Since the tool call itself returns a 200 OK, standard retry counters miss it, and you just burn tokens while the browser keeps timing out in the background.

Are you doing any payload/state validation at the runtime layer to hard-stop those cyclic failures before the next call, or does the Guardian model handle that?

➕ show 1 reply
shipsafestack • yesterday at 6:03 PM

How do you handle credentials and sessions for sites behind a login, like the bank and insurance portals you mention? Is the user's password or session cookie stored on your side, or does the generated MCP run against a session the user keeps locally?

Related: page content is untrusted input that now flows straight into an agent's context. Do the deterministic tools return only structured fields you've extracted, or can arbitrary page text (reviews, messages, product descriptions) pass through? That seems like the main prompt-injection surface for anything that can also perform actions like checkout.

➕ show 1 reply
yunuserturk • today at 6:53 AM

Hosting providers and cloudflare already block bots using bot lists. What user-agent does their agent identify itself as? Does it follow robots.txt, or is there a separate signal? What happens when it gets caught by cf's bot protection?

jrecyclebin • yesterday at 10:28 PM

Site must be slammed - but I'm interested bc I'm working on a similar thing. But my project (one aspect at least) is for expressing HTTP calls as MCP tools.

The format looks like this:

  ---
  [add-list-item] Add a new item to a list.
  # Adjust the fields object to match your list's actual columns.

  $fields is object
  POST https://graph.microsoft.com/v1.0/sites/$site_id/lists/$list_id/items
  Authorization: Bearer $token
  Content-Type: application/json
  {
    "fields": $fields
  }

  HTTP 201
Been having a lot of fun with this, as I can pile up these integrations and make detailed MCPs quickly.
➕ show 1 reply
hkalbert71 • yesterday at 11:00 PM

One distinction worth measuring is transport success versus actual operation success.

A tool can return HTTP 200 while making no useful progress. The agent may then repeat the same call with identical arguments.

We're exploring this from an observability angle with KORA Doctor. It can flag repeated tool calls using privacy-preserving fingerprints, but it doesn't block live retries or determine whether caching is safe.

Do your generated MCP tools expose operation-level status or state-change evidence so external tools can distinguish a successful repair from another no-op retry?

➕ show 1 reply
KallowayThayer • yesterday at 5:43 PM

Curious how this handles session isolation and rate-limiting when converting dynamic DOM heavy pages into MCPs.

If an agent hits a heavy SPA with infinite scroll or aggressive bot protection, does Pomerado handle edge-caching or proxy-level deduplication, or is it parsing raw DOM on every tool call?

➕ show 1 reply
turbogen_app • today at 5:37 AM

How do you handle actions that take minutes rather than seconds? When I wrapped a slow job API as MCP tools, the first version blocked until the job finished, and some clients gave up long before that. What worked better was having the tool wait for a bounded time and, if the job isn't finished, return a job id plus a separate status tool the agent can call later. Do your generated tools do something similar for slow portal flows like a booking confirmation, or is everything expected to finish inside one call?

dogscatstrees • yesterday at 7:42 PM

> We’re ex-McKinsey

I see this often, qualifying ex-big consulting firm. What does it imply? Could it be more specific?

➕ show 1 reply
theturtletalks • yesterday at 7:51 PM

I want to slap this on LinkedIn Sales Navigator, but some say it gets your account banned if they detect using using the DOM or accessibility.

➕ show 2 replies
passive • yesterday at 6:05 PM

Hmm, I've also built a self healing system for agents to get data from various services. Do you have any sort of dashboard showing integration maintenance?

➕ show 1 reply
thefourthchime • yesterday at 8:51 PM

How do you get around bot detection? For example, if I pointed this at Amazon, I don't expect it would work.

But does it magically somehow?

➕ show 1 reply
a_c • yesterday at 7:10 PM

What does self healing mean here? And are you guys trying to be a more general version of webMCP? Looks promising, congratulations on the launch!

➕ show 1 reply
yan5xu • today at 1:34 AM

i did it long long time ago https://github.com/epiral/bb-browser

matt3210 • yesterday at 7:50 PM

Too bad MCP server calls dont click ads

➕ show 1 reply
trash_cat • yesterday at 6:55 PM

This is useful but im asking myself what would stop OpenAI and Anthropic to implement this natively tomorrow.

➕ show 2 replies
gvieira • yesterday at 9:07 PM

I built a self-healing scraper for arbitrary car dealership sites. Layout changes were the easy part to heal; anti-bot was where it got hard. Curious how your repair agent handles that.

➕ show 1 reply
iqbal1980 • yesterday at 7:52 PM

Do you support oauth?

➕ show 1 reply
SevenIsNorth • today at 1:15 AM

[dead]

hyperionultra • yesterday at 5:33 PM

A wall of text. Just post video with a link to that wall of text for someone who is on to read gened strings.