Inspiration

What it does

How we built it

Challenges we ran into

Accomplishments that we're proud of

What we learned

What's next for Ghost Operator

Inspiration

Local-service businesses lose real revenue when calls go unanswered, but deploying an automated front desk is consequential. The owner understands the business constraints; an agent excels at structured setup work. Ghost Operator gives both of them one shared, auditable workspace.

What it does

The owner enters industry, weekly call volume, missed-call rate, average job value, and desired coverage. Through WebMCP, an agent can read those values, update approved inputs, calculate calls at risk, recommend coverage, draft a constrained call policy, and open the completed plan for review. Every action appears in a visible activity ledger.

The human-agent boundary is deliberate: there is no tool for final approval, deployment, purchasing, calling, or messaging. The owner must inspect the visible plan and click Approve & save personally. Even then, the demo only saves locally and confirms that no external system changed.

Why WebMCP

This workflow combines structured inputs, deterministic calculations, editable shared state, and a consequential handoff. Browser automation alone would need to infer form semantics and scrape changing output. WebMCP gives the agent six precise operations connected to the same logic and session the owner sees, making the workflow faster, more reliable, and easy to audit.

People and agents can now collaborate on a launch plan in plain language while keeping authority visible and constrained—something that previously required brittle UI automation or a separate integration disconnected from the page under review.

How we built it

Ghost Operator is built with React, TypeScript, and Vite. It registers six imperative tools with document.modelContext.registerTool(). Each tool has a narrow JSON input schema, read/write annotations, application-level validation, structured results, and an abortable lifecycle. Tool handlers reuse the same deterministic state and calculation functions as the human UI.

The application is deployed on Vercel, tested with Vitest, and published under the MIT License. All challenge code was created after the challenge opened on August 25, 2026; the public commit history documents the work.

Challenges

The hardest design decision was not exposing every UI action as a tool. We intentionally omitted approval and deployment operations so the agent can accelerate the work without silently crossing the human authorization boundary.

What we learned

WebMCP is strongest when the page remains the shared source of truth. The best agent experience is not invisible automation—it is structured collaboration where the person can see state, understand changes, and retain final control.

Built With

  • webmcp
Share this project:

Updates

Submission history