WebMCP on Aihangsoft

Aihangsoft registers eight of its browser tools with WebMCP, a browser API that lets a page publish callable tools to AI agents. An agent can compress an image, convert a format, resize a photo, strip metadata, merge, split or rotate a PDF, or build a PDF from images, without scraping the page or simulating clicks.

The tools are the same code the page already runs, so every call is processed on your device and the file never leaves it. Each tool appears only while its page is open, because there is no server behind them to queue work. This page lists what is exposed, how to try it in Chrome, and what the approach still cannot do.

What WebMCP is, in one paragraph

WebMCP is a proposal from the W3C Web Machine Learning Community Group. A page calls document.modelContext.registerTool() and describes a function with a name, a natural language description and a JSON Schema for its arguments. An agent that supports the API reads that list and calls a tool with JSON arguments, the same way it would call a remote MCP server, except the code runs in the tab.

Compared with letting an agent drive the interface, the win is reliability. The agent no longer has to find the right file input, guess what a slider does or wait for a button to become clickable. It passes a quality value and gets a file back. The user still sees the visible page, and the browser still arbitrates access.

Which tools are exposed

Eight tools register themselves, one per page. Each entry is the page it lives on, not a separate endpoint, so the agent has to have that page open.

ToolPageWhat it does
compress_imageImage CompressorRe-encodes to WebP, JPEG, PNG or AVIF with quality, resize percentage and OxiPNG level
convert_imageImage ConverterConverts one image to WebP, JPEG, PNG or AVIF through Canvas, with AVIF falling back to WebP when unsupported
resize_imageImage ResizerSets exact pixel width and height, keeping the aspect ratio by default
remove_image_metadataRemove EXIFStrips EXIF, GPS, XMP, IPTC and PNG text chunks without re-encoding the pixels
merge_pdfsMerge PDFJoins PDFs in the order given, copying pages instead of re-encoding them
split_pdfSplit PDFSplits by page ranges such as 1-3, 5, or into chunks of N pages
rotate_pdfRotate PDFRotates all pages or a page list by 90, 180 or 270 degrees
images_to_pdfImage to PDFPlaces images on A4 or Letter pages, or on pages that match each image

How a call actually works

Files travel as base64 data URLs, because tool arguments have to be JSON. The agent sends data:image/png;base64,... plus the settings, the tool decodes it into a File, runs the existing browser code, and answers with a JSON string that contains the result as another data URL along with size, format and page counts.

Every tool returns a string, including failures. A rejected call comes back as {"success": false, "error": "..."} with a sentence that explains what went wrong, for example a PDF that is password protected or a page number that is out of range. An agent can read that and correct itself instead of retrying blind.

How to try it in Chrome

  1. Use Chrome 149 or newer. Either join the WebMCP origin trial for this site or enable chrome://flags/#enable-webmcp-testing and restart the browser.
  2. Open one of the eight tool pages listed above, and keep it open while the agent works.
  3. Install an agent extension that reads WebMCP tools, such as the Model Context Tool Inspector, and ask it in plain language to compress a photo or merge two PDFs.
  4. To check registration by hand, open the console and run window.mfWebMCP. It lists the tools the current page registered, or is undefined when the page has none.

In a browser without the API the script exits at the first check, so nothing changes for normal visitors. The pages keep working exactly as they do today.

What this does not do

The honest limits matter more than the demo, so here they are.

  • Only eight of the 45 browser tools are exposed. Video and audio tools depend on a ffmpeg worker and a multi step job, and the six Cloud AI tools upload files by design, so neither group registers a tool yet.
  • The page has to be open. Tools are registered by the document, so an agent cannot call Image Compressor while sitting on another tab.
  • Base64 is not free. A 10 MB input becomes roughly 13 MB of text and is decoded again in memory. Each file is capped at 64 MB, merges at 50 files, and a split call returns at most 20 parts.
  • Support is experimental. The API shape has changed during 2026, tool names and schemas may change with it, and no browser ships it enabled by default as of October 2026.
  • No headless batch. WebMCP is designed for a real browser session with a person in front of it, not for a server side pipeline.

Questions

What is WebMCP?

WebMCP is a browser API proposal that lets a website publish its own functions as tools with names, descriptions and JSON schemas. An AI agent reads those tools from the page and calls them directly, so it does not have to guess which button to press. The proposal is developed in the W3C Web Machine Learning Community Group, and Chrome exposes it behind an origin trial and a testing flag while the design is still changing.

Which Aihangsoft tools can an agent call?

Eight tools currently register themselves: compress_image on Image Compressor, convert_image on Image Converter, resize_image on Image Resizer, remove_image_metadata on Remove EXIF, merge_pdfs on Merge PDF, split_pdf on Split PDF, rotate_pdf on Rotate PDF, and images_to_pdf on Image to PDF. Each one only appears while its own page is open, because the tool runs the code that page already loaded. Video, audio and Cloud AI tools are not exposed yet.

Do WebMCP calls upload my file?

No. Every one of the eight registered tools runs the same code the page runs when you use it by hand, and that code is local. Files arrive as base64 data URLs, are decoded inside the tab, processed by Canvas, pdf-lib or the metadata parser, and returned as a data URL. Nothing is sent to a server, so there is no upload log to delete and no queue to wait in. The one cost is memory, since a base64 copy of the file exists while the call runs.

How do I try WebMCP on this site?

Open Chrome 149 or newer, enable chrome://flags/#enable-webmcp-testing or join the WebMCP origin trial, then open one of the eight tool pages. Use an agent extension that reads WebMCP tools, such as the Model Context Tool Inspector, and ask it to compress an image. You can also check the registration in the console: window.mfWebMCP lists the tools the current page registered. Browsers without the API skip the script and the page works exactly as before.

Open a tool and let the agent drive

All eight WebMCP tools run on your device. No account, no upload, no watermark.

Open Image Compressor