cd /news/ai-agents/undox-approval-gated-data-broker-opt… · home topics ai-agents article
[ARTICLE · art-115229] src=dev.to ↗ pub= topic=ai-agents verified=true sentiment=· neutral

Undox: approval-gated data-broker opt-outs on TrueForge

A developer built Undox, a TrueForge agent that automates data-broker opt-outs with approval-gated submissions, for the WeMakeDevs × TrueFoundry × Qodo agent-harness hackathon. The system uses a custom HTTP MCP server and durable session state, and was reviewed with Qodo's agentic review tool.

read2 min views1 publishedAug 29, 2026

People-search sites still republish names, addresses, phones, and dates of birth. Opting out is tedious, easy to mess up, and basically irreversible once you hit Submit.

For the WeMakeDevs × TrueFoundry × Qodo agent-harness hackathon, I built **Undox** — a TrueForge agent that does the annoying work carefully, then **stops** until a person allows the exact payload.

**Live demo:** [undox.vercel.app](https://undox.vercel.app/app?session=demo-test-2)

**Repo:** [github.com/manasdutta04/undox](https://github.com/manasdutta04/undox)

**Connect MCP (paste-ready):** [undox.vercel.app/app/connect](https://undox.vercel.app/app/connect)

Privacy products exist because this workflow is painful. An agent that “just submits” is worse than no agent. We needed a harness that:

Chat summaries don’t count. Tool JSON and a dashboard do.

Undox is a TrueForge orchestrator wired to a custom HTTP MCP server (undox-tools

):

TrueForge piece How we use it
MCP tools
find_*run_sandbox_prepare → approval-gated submit_opt_out ; plus get_session_state / get_exposure_dashboard
Sandbox + skills
Broker prepare scripts (prepare_runtime: sandbox-script )
Approval
Submit requires human Allow on the exact fields
Subagents
dynamicSubAgents + parallel tool fan-out fallback
Sessions
File store keyed by session_id — survives TrueForge restart
Status UI
Next.js dashboard on Vercel; same store as MCP on Render

Demo brokers PeopleFind and Clearbook are fixtures (no live CAPTCHA on stage). Spokeo uses real URL mapping; submit stays mock.

The agent isn’t “one mock function + a chat UI.”

Kill TrueForge, restart, reopen the same session_id

— statuses are still there. That’s the Double-O story: durable harness state, not a one-shot demo.

Judges (and you) can walk the seeded session without cloning:

Exposure → Brokers → Approval → Connect

Session: demo-test-2 web/

) /mcp

undox-demo-public (mock submits only)Render free tier sleeps — first hit after idle can take ~a minute. Ping /healthz

before a live demo.

Every substantive change shipped as a PR with /agentic_review

. Qodo caught real issues — auth edges, stale UI after failed loads, CSS specificity bugs — and we fixed High/Medium before merge. CI also runs typecheck

, test

, and prove:heart

on every PR.

That mattered more than polish: the approval path and session store had to be trustworthy on camera.

Built with TrueForge. Reviewed with Qodo. Submits stay mock on purpose.

Thanks for reading — if you try the Connect paste, tell me what broke first. That’s usually the most useful review.

── more in #ai-agents 4 stories · sorted by recency
── more on @undox 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/undox-approval-gated…] indexed:0 read:2min 2026-08-29 ·