WebMCP Inspector is a Chrome Extension for discovering, inspecting, executing, and debugging WebMCP tools directly from a side panel.
- GitHub: mr-shitij/webmcp_inspector
- Spec: WebMCP Draft
- Chrome Store: Chrome Store
- Detects WebMCP APIs on the active page (
navigator.modelContextTesting/navigator.modelContext) - Lists and categorizes imperative and declarative tools
- Schema-aware manual tool execution with JSON input normalization
- AI-assisted tool usage with provider adapters:
- Google Gemini
- OpenAI
- Anthropic
- Ollama (local)
- Dynamic refresh flows for late-registered tools and model lists
- Provider config editor with connection test and model refresh
- Trace capture for AI/tool interactions
background.js # MV3 service worker, tab routing/cache
content.js # In-page WebMCP bridge and execution adapter
sidebar.html / sidebar.js # Main app UI (tools, AI chat, settings, help)
popup.html / popup.js # Compact popup entry UI
styles.css # Shared side panel styles
js/
index.js
settings/SettingsManager.js # Persistent settings and provider state
ai/AIManager.js # Provider orchestration
ai/AIProvider.js # Provider base interface
ai/providers/*.js # Gemini/OpenAI/Anthropic/Ollama adapters
ai/utils/toolSchemas.js # Tool schema parsing/normalization helpers
icons/
logo-source.png # Source logo for icon generation
generate_icons.js # Generates icon16/32/48/128
build.js # Copies source into dist/ for loading
dist/ # Built extension output (load this folder)
- Chrome (MV3 + Side Panel support)
- Node.js 18+
- WebMCP-capable Chrome build for full tool discovery/execution
- Install dependencies:
npm install- (Optional) Regenerate icons after changing
icons/logo-source.png:
npm run icons- Build extension:
npm run build- Load
dist/as an unpacked extension fromchrome://extensions/(enable Developer mode first).
Enable WebMCP testing APIs in Chrome:
chrome://flags/#enable-webmcp-testing
Open side panel -> Settings -> AI Providers.
- Gemini / OpenAI / Anthropic: provide API key, select model, save.
- Ollama: set server URL (recommended
http://127.0.0.1:11434), refresh models, select model, save.
- Reload extension and refresh the page.
- The background worker will attempt content-script auto-injection and retry.
- This is usually from stale injected scripts after extension reload.
- Close affected tabs, reload extension, then reopen tabs.
- Usually caused by page/frame API edge cases or cross-document execution flow.
- Refresh tools and retry on the main frame.
- Model families differ. Adapter auto-adjusts request params, but ensure selected model supports tool use.
Start Ollama with extension origin allowed:
export OLLAMA_ORIGINS="chrome-extension://<your-extension-id>"
export OLLAMA_HOST="127.0.0.1:11434"
ollama serveOllama is unreachable. Verify server:
curl -i http://127.0.0.1:11434/api/tagsnpm run icons- Regenerate extension icons fromicons/logo-source.pngnpm run build- Build extension intodist/npm run dev- Alias of build (single run)npm run clean- Removedist/
- Runs fully client-side as a browser extension.
- API keys are stored in Chrome extension storage.
- Tool execution uses active tab context and WebMCP APIs exposed by the page/browser build.
- Create a branch.
- Make changes.
- Run
npm run build. - Load
dist/and verify:- tool listing
- manual execution
- AI provider flows
- model refresh behavior
- Open a PR.
Apache-2.0


