Inspiration

One Friday evening, I was talking with my fiancée, Marta, and trying to explain what WebMCP is and how it could change the way we use websites in the future. Instead of only clicking through an interface, people could ask an AI agent to work directly with the application on their behalf.

Marta immediately started suggesting situations where this could be useful. One of them was job searching.

Looking for a job can quickly become a full-time job of its own. You keep entering the same information on each new job board, adjusting the same filters, comparing offers, and trying to remember which role actually matches what you want.

At the same time, AI can already understand your CV, career goals, and personal preferences - but it usually cannot do much inside the job board itself. It can advise in a separate chat, while you still have to return to the website and do everything manually.

WebMCP made us ask a simple question: what if the AI could work directly with the application instead?

That question inspired Job Pilot - a job board where an agent can complete your profile, find an opportunity that fits you, save a promising role, and apply after you give your approval. There is no separate AI interface to learn. You simply describe what you need, and the agent works with the same application you do.

What it does

The user can paste a CV or LinkedIn summary in Codex and ask the agent to complete their candidate profile. Based on that profile, the agent searches for roles that match experience, career goals, salary expectations, preferred location, workplace model, benefits, and other personal preferences.

The user refines the search through natural conversation while Job Pilot updates the UI—filters, results, URL, and map - in real time. The agent can inspect an offer, explain why it may be a good fit, compare top picks in an on-page drawer, highlight a match on the map, save it for later, or help you apply by opening the confirmation dialog with a draft message you can edit before submitting.

How we built it

I started by mapping the full job-seeking journey - from creating a profile and setting preferences to finding, saving, and applying for a role. Then designed a clean, responsive interface with intuitive filters, a synchronized job list and map, candidate profiles, and applications.

Next, I turned the key actions into WebMCP tools. The agent uses the same state and business logic as the interface, so when it updates a search, the filters, results, URL, and map change immediately. The user can see every action and take over manually at any time.

Job Pilot is built with Angular 22, TypeScript, Angular Signals, Firebase, and Google Maps. I also created automated evals to test tool selection, arguments, contracts, and multi-step browser journeys.

Challenges we ran into

Early on, I thought shipping WebMCP tools would be the easy part. The hard part was making them reliable in Codex. Manual testing was slow: every change to a tool description or input schema meant trying multiple natural-language phrasings and hoping the agent still called the right function with the right arguments. A tiny copy tweak could break an otherwise working demo.

WebMCP Evals CLI changed that workflow. Once I had tool-selection fixtures and a contract test keeping evals in sync with runtime schemas, I could detect regressions before opening ChatGPT again. Manual testing still mattered for visual reactions and signed-in flows - but evals removed much of the guesswork.

I also spent real time defining the agent–app contract: which actions update state quietly, which ones need on-page feedback, and which ones require explicit user confirmation - strict for the agent, legible for the human.

Accomplishments that we're proud of

I am proud that Job Pilot shows what job boards could feel like when an agent works together with the app - not next to it. The boring parts of job searching (re-entering preferences, adjusting filters, keeping track of similar roles, drafting application messages) take less effort because you can describe what you want in plain language and see the board respond immediately. At the same time, the experience stays grounded: you still browse a normal interface, you still see every change, and you still make the final call on applications. That combination - less repetition, less context switching, more control - is the UX improvement we cared about most.

I built it with Angular 22 WebMCP and ten tools that share the app’s domain model, so agent actions and human clicks stay on one source of truth. WebMCP Evals helped us keep tool selection reliable as descriptions and schemas evolved - without that, the UX would break long before users noticed a bug in the UI.

What we learned

I think WebMCP’s biggest innovation is that existing websites can become AI-friendly at low cost. You do not have to invent a new product - you take the app you already have and give the agent a way to interact with it.

Job Pilot has a conventional job-board UX on purpose. The agent does not replace that interface; it works with it.

I also learned that the real beauty is collaboration on one surface. The user describes intent in natural language; the agent updates the same application; both see the result immediately. WebMCP simplifies the interaction between human and agent - no second UI, no lost context, no repeating yourself between chat and clicks. That is what made the experience feel simple: not less intelligence, but less friction between two partners using the same tool.

What's next for Job Pilot

I want Job Pilot to work as a proof of concept that makes WebMCP tangible for teams building job boards and other everyday web apps. The goal is to show that an existing product can become agent-friendly without a rewrite, and to encourage others to try the same approach on the software they already maintain.

Share this project:

Updates

Submission history