Portfolio description refreshed September 28, 2026, after the WebMCP Challenge. This page describes the public challenge edition.

Inspiration

I built Wornpage Projects around a simple question: when someone opens their workspace, can they see what needs attention and what to do next?

A useful work item needs more than a status. It needs an owner, a clear next action, and enough context to explain what is blocking progress. The name Wornpage reflects the experience I wanted: familiar pages and simple, repeatable steps that become useful through everyday work.

What it does

Wornpage Projects is a browser-based work tracker where people and agents use the same visible workspace. The public demo uses sample data to make the workflow easy to explore:

  • Guide helps define the workspace scope and an editable brief for the agent.
  • Priority surfaces a current recommendation about what needs attention.
  • Work shows work items, owners, status, and next actions. An agent can narrow the list or create a small batch of Draft items.
  • Review presents queue evidence with clear counts, so filtering does not hide the size of the remaining work.
  • Next lets an agent prepare a proposal grounded in current workspace facts. The proposal stays unsaved until a person reviews it and chooses Save or Discard.

For example, a blocked client handoff can lead to a proposed next action to confirm the missing details. The person can inspect the evidence, edit the proposal, or discard it before saving.

Why WebMCP fits

The work already lives in the browser. WebMCP gives a browser agent structured tools for the page the person is using, with a defined scope and clear limits on what each action can do.

The agent can help find relevant work, check the current evidence, and prepare a next step. The person can follow that work in the interface and retain control of Start and final Save.

How people and agents work together

A person can give the agent a goal, let it narrow the visible work, and review a prepared next action in the same workspace. Visible action receipts distinguish preparation from a completed human decision.

The interface also shows WebMCP availability and the tools registered on the current page. That makes the agent's available actions easier to understand and inspect.

How it was built

The challenge edition uses SvelteKit, JavaScript, Vite, and Wornpage design-system components, with a static build hosted on Cloudflare Pages. It is a standalone public demo derived from the broader Projects work tracker.

WebMCP tools are registered for individual pages with input validation and bounded access to the same state shown in the interface. Draft creation is limited to small batches, and preparing a next-action proposal does not save it.

I used Codex to help implement and refine the application. The repository includes focused contracts and browser preflight checks for tool registration, workspace counts, keyboard navigation, action receipts, and the boundary around human decisions.

Challenges and lessons

The central design challenge was making each step understandable: what the agent read, what it changed, what remains a draft, and what still needs a person to decide. Explicit counts, current evidence, and visible approval steps became the foundation of the workflow.

The public challenge source is available under the MIT License. The linked demo and repository provide a way to explore that workflow directly.

Built With

Share this project:

Updates

posted an update —

Over the last two days, I substantially rebuilt Wornpage Projects’ WebMCP experience around visible, reproducible human–agent collaboration.

The app now exposes nine page-scoped tools across Guide, Priority, Work, Review, and Next:

  • Guide derives real workspace scopes and gives the agent an editable, bounded brief.
  • Priority exposes one current recommendation without navigating or changing data.
  • Work lets an agent inspect the rendered workspace, apply a reversible search, or atomically create up to three Draft items. Drafts are never started automatically.
  • Review exposes exact queue evidence and reversible filtering with explicit denominators.
  • Next lets an agent prepare an evidence-backed proposal, but it remains unsaved until a person chooses Save or Discard.

I also added a global WebMCP status pill and accessible tool-catalog dialog. It shows whether native WebMCP is actually ready, which tools are registered on the current page, and what authority each tool has.

Agent actions now appear in a branch-aware Verified action trail. Read, scope, and preparation receipts are recorded, while the final human decision remains visibly pending rather than being falsely marked complete.

Beyond the WebMCP layer, I split large Work, Review, and Next route implementations into smaller focused components, consolidated shared state and evidence logic, removed obsolete CSS and unused code paths, and strengthened keyboard, focus, responsive, and accessibility behavior.

Finally, I added a deterministic browser preflight that reproduces the complete demonstration, verifies exact tool catalogs and workspace counts, checks keyboard destinations and action-trail states, and fails on browser errors, unexpected writes, or horizontal overflow.

The result is no longer just a scripted agent demo: a judge can open the live app, give an agent the brief shown on the page, and reproduce the same bounded workflow while retaining control of every consequential action.

Live: https://projects-webmcp-extension.pages.dev/
Source: https://github.com/wornpage/projects-webmcp-extension

Log in or sign up for Devpost to join the conversation.

Submission history