WebMCP Explorer — Privacy Policy
Last reviewed: 2026-09-19. Applies to WebMCP Explorer 1.6.2.
This policy explains how WebMCP Explorer handles your data, which features share data, and the controls available to you.
Publisher: Corsen AI. Contact: [email protected].
The short version
WebMCP Explorer has no backend for collecting your activity. There is no analytics, no telemetry, and no tracking identifier of any kind.
Explorer contacts an AI endpoint only when you explicitly use the provider you configure: to list its models, run Agent Lab or run an eval suite. Before a run, the screen states what will be sent and to which host. No AI provider is selected by default. You may connect a cloud provider using your own API key, or a local server such as Ollama or LM Studio. Provider pricing and quotas apply; local model performance depends on your hardware and server setup. Explorer does not include Gemini Nano or a Gemini CLI companion. Manual discovery, checks and recipes require no AI provider, account or key. A page tool you invoke can itself contact the site's services or change site data; that remains true when several calls are run as a manual recipe.
What Explorer reads, and where it stays
On a site you have allowed, Explorer reads, and processes on your device only:
- The address of the current tab — so it can name the site it is asking permission for and route requests to the right page. It is shown in the panel. A saved recipe and its run evidence retain the selected page's address as described below. A run you started stays bound to its selected tab, including if you switch tabs while it runs; Explorer does not collect an inventory of unrelated tab addresses or your browsing history.
- The WebMCP tools the page and its frames register: name, description, input schema, annotations, origin, frame. This is website content in the Store's sense, and it is the object of the product.
- What a tool returns when you, a manual recipe or the agent run it. A tool result is produced by the page's own code and can contain data from the page — a product list, an order, a search result. Explorer keeps it in your local history so you can look back at it.
- Whether WebMCP is available on the page and, if not, why: secure context, origin isolation, the
toolspermissions policy. - The
<form toolname>elements the page declares, and thesrcandallowattributes of its iframes, to explain which frames could and could not be inspected.
Explorer does not scrape or send the page's HTML or its visible text. It does not read cookies, form values you type, or anything outside the WebMCP surface described above.
Does Explorer modify the page?
Normal discovery and execution do not instrument the page: Explorer observes the WebMCP API the browser exposes and calls the tools the page registered, nothing more.
One optional feature does modify the page. Instrumentation Mode, part of Source Finder, is off by default and is enabled explicitly, per site, by you. When it is on, Explorer runs a script before the page's own code that wraps the WebMCP registration function, so it can record which file and line registered each tool. It changes nothing else, and it requires a reload to take effect. Turning it off and reloading restores the page exactly as the browser serves it.
What is stored on your device
All of it lives in the extension's own storage, in your Chrome profile. None of it is directly readable by the web pages you inspect, and none of it is synced. The optional Agent access feature described below shares only the requesting page's tool contracts and results.
| What | Where | Lifetime | Cleared by |
|---|---|---|---|
| Which sites you allowed Explorer to inspect | Chrome's own permission store | Until you revoke it | Explorer Settings or chrome://extensions → Site access |
| Observed optional site grants: origin patterns only, never page content; retained to remove dormant Chrome permissions correctly | chrome.storage.local | Until a covered revoke completes in Chrome | Removed automatically with that revoke; removing the extension deletes remaining records |
| Panel settings and Agent Lab configuration: provider, endpoint address, model name, budgets | chrome.storage.local | Until removal | Removing the extension |
| Agent Lab conversations: your messages, the model's answers and the tool calls in between, kept per site | chrome.storage.local | The 10 most recently saved conversations per site; older ones are removed | Delete a conversation, or Clear agent sessions in Settings |
| Conversation groups: a name, and which conversations carry it | chrome.storage.local | Until you delete them | Delete the group (never removes conversations), or Clear agent sessions in Settings |
| Prompt profiles: a name and the system-prompt text you wrote | chrome.storage.local | Until you delete them | Delete the profile, or Clear prompt profiles in Settings |
| Custom connectors you created: name, dialect, endpoint address — never the API key | chrome.storage.local | Until you delete them | Delete the connector, or Clear connectors in Settings |
| Which allowed sites may route their own tools to a third-party agent: origin only | chrome.storage.local | Until you switch it off | The same switch, or Clear agent access in Settings |
| Tool execution history: arguments you sent, results returned, timings | IndexedDB | Until you clear it | Clear, in History or in Settings |
| Local overrides and mocked responses | chrome.storage.local | Until you remove them | Remove, per tool, or Clear in Settings |
| Saved calls: the argument sets you named, per tool | chrome.storage.local | Until you delete them | Delete, per saved call, or Clear in Settings |
| Selected-field checks: field paths, comparisons and expected values attached to saved calls | chrome.storage.local | With the saved call | Delete the saved call or clear saved calls in Settings |
| Manual recipe definitions: selected site/address, tool/frame contracts, arguments, named inputs, explicit result bindings and optional checks | chrome.storage.local | Until deletion; up to 30 definitions within 2 MB, 20 steps each | Delete saved recipe or clear Recipes and run evidence in Settings |
| Manual recipe runs: definition, input values, reviewed overrides, resolved arguments, outcomes and interruption status | chrome.storage.local | Up to 8 runs within 3 MB; old completed evidence is evicted; up to 20,000 characters of each result retained | Clear Recipes and run evidence in Settings after stopping active recipes |
| Eval suites and the last two results of each | chrome.storage.local | Until you delete them | Delete, per suite, or Clear in Settings |
| Contract snapshots, per site | chrome.storage.local | Until you delete them | Delete, per snapshot, or Clear in Settings |
| Where the panel was, and what you had typed in it | chrome.storage.session (memory) | Browser session | Closing Chrome, or the Stop button |
| An agent run or eval suite in progress | chrome.storage.session (memory) | Browser session | Closing Chrome, or the Stop button |
| API keys | chrome.storage.session (memory) | Browser session | Forget, per provider, or closing Chrome |
API keys
An API key is authentication information, and Explorer treats it as such.
A key is kept only in chrome.storage.session, which is memory-backed: it is never written to disk, it is gone when Chrome closes, and you paste it again next time. There is no option to keep it longer. An earlier development build offered one; it was removed before release, and any key it had written is deleted the first time this version runs.
No encryption is claimed. Obfuscating a string that the extension must be able to read back is not a security boundary.
A key is read in one place only — the extension's background worker, at the moment of building the request — and applied as the provider's authentication header. It is never exposed to the inspected page, never placed in the page's JavaScript context, never written to the timeline, the history, an export, a snapshot, or any log.
Exports and the clipboard
Every export — the tools of a page, a timeline, an eval result, a run of saved checks, the reproduction of one call as Markdown, JSON, a DevTools console snippet or a Playwright script, a versioned manual recipe, its Markdown run report, the diagnostic evidence shown in a preview, or the settings backup file (your own configuration: providers, connectors, prompt profiles, agent-access switches — never an API key) — is built from what Explorer observed on the page you allowed: tool contracts, the arguments you typed, and what the page's tools returned, which can contain data from that page. An export exists only when you press Copy (it goes to your clipboard) or Save (it goes to your downloads folder, through the browser's own download of a file Explorer generated in memory). Explorer never transmits an export anywhere and does not store a separate copy of the generated file. Provider authentication keys are not automatically added. Arbitrary page results or arguments can still contain sensitive data that Explorer cannot identify. Recipe and diagnostic export previews let you inspect and remove selected data before copying or downloading; they do not alter the saved definition or guarantee that every secret has been removed. A recipe definition does not export site authentication, Chrome permissions or a browser session.
What leaves your device, and when
For an AI run, only after the screen has stated what will be sent and to which host, and only when you press Send or Run. The explicit List models action also contacts the configured provider and can send its authentication header; it does not send page tools or results. Explorer never silently selects or switches providers. A local endpoint processes requests on the machine hosting that server; cloud requests go to the provider you chose. The page's own network activity when one of its tools executes is separate from these provider requests.
Sent, in that case, to the endpoint you configured and to no one else:
- your conversation messages, including prior turns when you continue a saved conversation, and the selected system prompt or prompt profile;
- the names, descriptions and input schemas of the WebMCP tools the current page exposes, including any local override you applied to them;
- the arguments the model asks to call a tool with;
- the results the page's tools return — and, as said above, a tool result can contain data from the page, which therefore reaches the model;
- your API key, as the endpoint's authentication header.
Explorer does not send the page's HTML, its text, cookies, your browsing history, the list of your open tabs, or any identifier of you or your machine.
Explorer refuses to send any of this over plain http to a host that is not your own machine, because the key and the prompts would travel unencrypted. localhost, 127.0.0.1 and ::1 are allowed, so local Ollama or LM Studio servers work; anything else must be https.
Explorer must ask Chrome for permission to reach each endpoint, and asks for that endpoint only — never for all sites.
Optional Agent access
Agent access is off by default. In Settings, you can separately allow an agent running on https://corsen.ai or https://www.corsen.ai to communicate with Explorer. This also requires ordinary site access. When enabled, that page can list its own WebMCP tool names, descriptions and input schemas, ask Explorer to call those tools with supplied arguments, and receive their results. These results may contain page data; the website may process them under its own privacy policy. The bridge does not expose other tabs, your saved conversations, configuration or provider API keys.
Turn Agent access off in Settings to refuse further requests. Removing ordinary site access also removes the bridge.
Your controls
- See every site Explorer may inspect, and revoke any of them, from the Settings screen in the panel or at
chrome://extensions→ Site access. Explorer stops inspecting it at once, and removes any Instrumentation Mode script it had registered for it. - See how much of each class of data is stored, and clear each class — or everything — from the Settings screen. Clearing asks once more on the same button before deleting.
- Forget an API key from the Agent Lab, per provider. Closing Chrome forgets all of them.
- Stop any run or suite in progress, and clear what the panel remembers, with the Stop button in the panel's status bar.
- Clear the execution history, overrides, saved calls, eval suites and snapshots from their own screens.
- Save or delete manual recipes and inspect their run reports in Tools. Stop a recipe before clearing its stored data in Settings. A stored interrupted run never resumes automatically; a pending page action may already have happened, so inspect the page before a reviewed rerun.
- Cancel a tool call that is taking too long, from the Cancel button beside Run. The page's own tool may still finish its work; its answer is discarded.
- Removing the extension removes everything it stored.
Limited use
Explorer's use of any data it reads or transfers is limited to providing and improving the user-facing features described here — inspecting, testing and debugging the WebMCP tools of web pages. Explorer does not sell data, does not transfer it to third parties other than the AI provider you configure and the requesting site you explicitly enable for Agent access, for the purpose you initiate, does not use it for advertising or for determining creditworthiness or lending, and does not allow humans to read it except with your explicit consent for a specific piece of data, for security purposes, or to comply with applicable law.
Not in this product
WebMCP Explorer performs no security analysis: no risk scoring, no prompt-injection detection, no policy enforcement. It reports what a page declares; it does not judge it.
Changes
This policy changes only when the code does, and the review date at the top is updated. Previous versions are available on request to [email protected].
Provider responses can include signed or encrypted continuation data needed for subsequent tool calls. Explorer keeps this with the saved conversation and returns it only when continuing with the same model and API format. It is separate from API keys. For the built-in OpenAI connector, Explorer requests store:false; the provider's own data-handling terms still apply.