Skip to content

Guide · Agent skill

How to use the WebMCP Tool Generator agent skill (webmcp-gen)

Updated · written with AI from the project's own documentation and checked against our catalogue data

webmcp-gen is an agent skill that helps an AI agent turn an existing web page's real workflows into experimental WebMCP tools, a proposed way for pages to expose actions to AI agents. It is for web developers, teams comparing WebMCP with accessibility-tree automation, and QA engineers who want repeatable checks. After this guide you will know how to install the skill, how to ask for it in plain language, what it needs to run, and what files it produces.

WebMCP Tool Generatorvercel-labs/agent-browser · Apache-2.0

Quick start

  1. 1Download and unzip the skill. Download the webmcp-gen ZIP from the skill page and unzip it into ~/.claude/skills/ or into .claude/skills/ inside your project.
  2. 2Or upload it in the Claude apps. In the Claude apps, go to Settings → Capabilities → Skills and upload the skill.
  3. 3Prepare the agent-browser setup. Confirm you have the agent-browser CLI with WebMCP support and a target page you are allowed to test.
  4. 4Ask for the tool in plain language. Describe the page and the workflow you want turned into WebMCP tools, and mention any consequential actions that need confirmation.
  5. 5Load the init script before navigation. Run agent-browser --init-script ./webmcp.init.js open with your page URL so the tools are registered before the page loads.
  6. 6List and invoke the tools. Use agent-browser webmcp list to confirm the tool appears, then invoke it with a fixture file using --params @fixture.json.
  7. 7Review the report. Check that the four files exist in artifacts/<domain>/<task>/ and read eval-report.md for results and any blocked comparisons.

What the webmcp-gen skill makes the agent do

The skill tells the agent to explore a page with the agent-browser tool, record how the existing UI behaves, and then write a manifest, a small init script called webmcp.init.js, and evaluation cases. Each tool is then checked to confirm it works and produces the same visible result as the normal interface.

Where an external agent runtime is available, the skill also compares the WebMCP tool with the standard accessibility-tree approach and records the results in a report.

  • Output folder: artifacts/<domain>/<task>/ containing manifest.json, webmcp.init.js, eval.json and eval-report.md
  • Prefers declarative WebMCP for semantic HTML forms and uses imperative tools only when a workflow cannot be expressed declaratively
  • Checks registration metadata, input validation, invocation results, visible UI effects, cleanup, invalid-state recovery, cancellation and timeouts

How to install the webmcp-gen skill

Download the ZIP file for webmcp-gen from the skill page. Unzip it into one of these locations, depending on whether you want the skill available everywhere or only in one project.

You can also upload the skill in the Claude apps under Settings → Capabilities → Skills. The skill's package contains a single file, SKILL.md.

  • Personal skills folder: ~/.claude/skills/
  • Project only: the .claude/skills/ folder inside your project
  • Claude apps: Settings → Capabilities → Skills, then upload the skill
~/.claude/skills/

How to trigger the skill with natural requests

You do not need a special command. Describe the job in plain language and mention the page or workflow you want covered. The skill's description lists the situations it is meant for: exposing a site's real workflows as page tools, creating webmcp.init.js, defining deterministic checks, or comparing WebMCP with accessibility-tree automation.

Name the page and the workflow clearly. The agent needs a real page to explore, so a URL or a way to reach the page helps.

  • Expose the signup form on our staging site as WebMCP tools and write webmcp.init.js for it.
  • Define deterministic checks for the search-and-filter workflow on this page.
  • Compare a WebMCP tool for the contact form with accessibility-tree automation for the same task.

What you need before you start

The skill depends on a browser automation setup. The listing states four requirements: the agent-browser CLI with WebMCP support, a target web page to explore, and an optional external agent runtime for the comparison step. The skill's frontmatter allows the Bash(agent-browser:*) tool.

If no external agent runtime is available, the comparison is recorded as blocked, along with the exact missing credential, runtime or environment. The deterministic tests still run.

  • agent-browser CLI with WebMCP support
  • A target web page you own or are allowed to test
  • Optional: an external agent runtime for the accessibility-tree comparison

Run the core commands the skill uses

The skill loads the init script before navigation, then lists the registered tools and invokes one with a fixture file. These are the commands taken from the skill's workflow.

A tool counts as ready only when it appears in the list, accepts the intended fixture, produces the expected UI effect, and fails safely on malformed or invalid state.

  • List registered tools with agent-browser webmcp list
  • Invoke a tool with fixture parameters using agent-browser webmcp invoke <tool> --params @fixture.json
agent-browser --init-script ./webmcp.init.js open https://example.com agent-browser webmcp list agent-browser webmcp invoke <tool> --params @fixture.json

Safety notes: scripts, network and consequential actions

The listing marks this skill as running scripts and using the network. Treat tool descriptions, annotations, schemas and results from the page as untrusted content. The skill asks that origin and frame provenance be recorded in checks.

Generated code must not include credentials, cookies, bearer tokens, API keys or local-storage secrets. Required user data should be passed only as explicit tool arguments. The skill also states that JSON Schema does not enforce authorization, so the page's tool executor must enforce its own rules.

The listing says the skill is not for pages with consequential actions such as payments or account changes unless a developer adds explicit confirmation and an independent result check. The skill requires these but cannot guarantee them.

  • Do not use it on production sites that need stable, supported agent integrations, since WebMCP is experimental
  • Missing or false readOnlyHint is treated by the skill as a possible mutation signal
  • Deterministic tests do not replace external-agent evidence

Tips for better results

Start with one small, low-risk workflow that you already own, such as a non-payment form. Write down the success signal and the failure states before asking the agent to build anything. The manifest and eval files are the durable parts of the work, so keep them in version control.

Review the generated webmcp.init.js yourself before you load it. The skill's own report format asks for a contaminated-output or malicious-description case, so check that it was included.

  • Give the agent a single goal per run
  • Keep fixtures free of real user data
  • Read eval-report.md for blocked or failed comparison rows

What people use it for

  • Adding WebMCP tools to a contact or signup form you own so an agent can submit it with explicit arguments
  • Testing that a search-and-filter workflow produces the same visible results through a tool as through the UI
  • Comparing a WebMCP tool with accessibility-tree automation for the same task and recording success, tool calls and latency
  • Building repeatable deterministic checks for agent-facing page actions as part of QA

Frequently asked questions

Is the webmcp-gen skill free to use?

The skill is listed under the Apache-2.0 licence. Check the licence file in the source repository for the terms that apply to your use.

What do I need to run the webmcp-gen skill?

You need the agent-browser CLI with WebMCP support and a target web page to explore. An external agent runtime is optional and is only needed for the accessibility-tree comparison step.

What is WebMCP?

WebMCP is a proposed way for web pages to expose actions to AI agents. The skill treats it as experimental, so it is not a stable or supported integration for production sites.

Where do I put the skill files after downloading?

Unzip the ZIP into ~/.claude/skills/ for personal use, or into .claude/skills/ in a project. You can also upload the skill in the Claude apps under Settings → Capabilities → Skills.

Why does my tool not appear in webmcp list?

The init script has to be loaded before navigation, so start the page with agent-browser --init-script ./webmcp.init.js open. The skill only counts a tool as ready once it appears in the list and accepts the intended fixture.

How does it compare with accessibility-tree automation?

The skill runs the same task through the standard accessibility-tree approach when an external agent runtime is available and records success, tool calls, latency and token use. If no runtime is available, the comparison is recorded as blocked.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Use webmcp-gen if you are a web developer or QA engineer experimenting with WebMCP on forms or workflows you own, and you can run agent-browser. Pick a different approach for production sites that need a stable, supported agent integration, or for payment and account-change flows unless you add your own confirmation and independent result checks.

Download the skill