Add custom WebMCP tools

Add a namespaced batch of custom tools. A custom tool can be page-backed or CDP-backed. Page-backed tools execute in the page via JavaScript. CDP-backed tools execute via CDP and can use all browser REPL tools (see /repl). The source must evaluate to a non-empty array of definitions with URL matchers, tool metadata (including an optional output schema), and execute functions. The batch is added atomically. Matchers apply to top-level documents and nested frames, including out-of-process iframes; each matching tool is exposed once on the tab's top-level document and appears in GET /webmcp/tools.

To update one tool, list the tools, delete its ID, and add its replacement. Set force_overwrite_namespace to replace every existing tool in the namespace atomically; omitted or false adds tools without replacing existing ones. Existing invocations continue.

post/webmcp/custom-tools

Request body

namespacestring required
sourcestring required

JavaScript expression that evaluates to a non-empty array of custom tool definitions.

force_overwrite_namespaceboolean

Atomically replace all existing tools in this namespace with this batch when true.

Response

Custom tools added. The response contains only the newly added tools.

Changes

Changed in 1 of the 65 revisions of this API.1