I maintain a G2 Software Reviews Scraper on Apify Store. It has 124 users, mostly product and sales teams who watch what people say about their competitors on G2. For a long time it did one honest thing: you gave it a product URL, it gave you back a dataset of reviews. Clean, boring, useful.
I know exactly how those 124 people use it, because I use it the same way. You run it for a handful of competitors, download the CSVs, open last week's CSVs, and eyeball the two side by side to find what is new. Then you paste the interesting ones into a Slack thread. That is not a data problem. That is a plumbing problem, and the plumbing is a person doing a diff by hand every Monday.
When Apify shipped MCP connectors in July, I realized the plumbing could be the Actor instead. But wiring a scraper into someone's stack turned out to be the easy part. The actual work was two things a raw pipe does not give you: a memory, so the run only ever surfaces reviews you have not already seen, and a locked door, so the Actor can touch the user's database without me ever holding their password and without being able to do more than three things to it. This is the story of getting those two right, including the four things that broke, one of which was a database quietly asleep and one of which was my data showing up wrapped in a prompt-injection guard I did not expect.






