The browser is where most knowledge work happens. The browser extension surface is how ToolPiper meets you there. MediaPiper is a Chrome, Firefox, and Safari extension that pipes the active page to ToolPiper's local HTTP API. Same over 300 tools, accessed from the page you're already looking at.
What does MediaPiper actually do?
MediaPiper is a small browser extension that captures the current page (full HTML, readable extract, selection, or screenshot) and POSTs it to ToolPiper's HTTP API. The response comes back as text, structured data, or a screenshot, depending on which tool you invoked. Nothing leaves your Mac.
Four headline actions the extension exposes:
- Summarize this page. Pulls readable content, POSTs to
/chatwith a summarize system prompt. Returns a TL;DR you can paste, save, or use as a starting point for note-taking. - Ingest into RAG. POSTs page content to
/rag/ingestwith your chosen collection. The page becomes searchable through/rag/querylater. Great for building a local knowledge base from articles you actually read. - Scrape and convert. POSTs the URL (not the rendered DOM) to
/scrape, which uses ToolPiper's CDP-based scraper. Returns one of seven formats: markdown, plain text, readability extract, AX tree, HTML, links list, screenshot. - OCR images on this page. Iterates over images, sends each to
/vision/ocr, returns the extracted text. Useful for image-heavy pages where the text isn't selectable.
How do I install MediaPiper?
Chrome: install from the Chrome Web Store. Firefox: install from addons.mozilla.org. Safari: install through the ToolPiper macOS app (Safari extensions bundle inside the host app on macOS). Each variant talks to the same ToolPiper HTTP API on localhost.
Per-browser specifics:
- Chrome (Manifest V3). Install from the Chrome Web Store. The extension auto-detects whether ToolPiper is running on each browser action click. No configuration required.
- Firefox (Manifest V2). Install from
addons.mozilla.org. Same auto-detection. - Safari. Safari extensions on macOS ship inside a host app. The MediaPiper Safari extension comes with the ToolPiper app. Open Safari -> Settings -> Extensions -> enable MediaPiper.
Does the extension need a token?
No. The extension makes localhost requests to http://127.0.0.1:9998, which ToolPiper accepts without authentication. The page content stays on your Mac. There's no shared secret to leak.
The extension's only network access is the localhost call to ToolPiper. It doesn't phone home, doesn't sync state, doesn't have a backend. Inspect the manifest if you're curious. The permissions entry doesn't include any remote host that isn't a localhost variant.
What kinds of pages does it work best on?
Article pages (blogs, news, documentation) work cleanest because the readable-content extraction picks up the body and skips the chrome. Web apps with heavy JavaScript work fine for screenshots and AX tree extraction, less well for plain text. PDFs in the browser work for image-based OCR.
Per content type, expect different results. Articles, blog posts, and docs work cleanest. The readability extract picks up the body, and summarize, ingest, and convert all produce clean output. Single-page applications (Gmail, Notion, Linear) are harder. The DOM-based extractor often misses content, so screenshot + OCR or AX tree extraction is the better path there. PDFs rendered in the browser need a screenshot-per-page + OCR sweep, or pass the file through ToolPiper's /file/read with a native PDF parser. Pages behind a login work fine because the extension uses your existing browser session. Logged-in content extracts the same as anonymous content with no re-authentication.
Can I build my own browser extension that calls ToolPiper?
Yes. The HTTP API is unauthenticated for localhost calls, which means any browser extension running locally can POST to http://127.0.0.1:9998 and use ToolPiper's tools. MediaPiper itself is a reference implementation. The API surface is identical for any custom extension.
Three things to know if you build one:
- Manifest permissions. You need
http://127.0.0.1/*(Manifest V3 useshost_permissions, V2 usespermissions). Without it, the browser blocks the localhost request as a cross-origin call. - Handle ToolPiper not running. Check
/healthbefore issuing tool calls. Show a sane error in the popup if ToolPiper isn't open. - Don't store secrets. The extension itself doesn't need any secrets. ToolPiper handles OAuth tokens, model selection, and provider routing on its side. Keep your extension stateless.
For the API reference, see ToolPiper HTTP API on Mac.
