v0.3.0
Published to npm: browse-mcp@0.3.0
Added
BROWSE_MCP_EPHEMERAL=1runs Chromium without a persistent profile (no cookies/localStorage/tokens written to disk).browser_reset_profileno-ops under ephemeral mode.BROWSE_MCP_BRAVE_API_KEYopt-in Brave Search API fallback for web search; no-key behavior unchanged (DDG/Bing scrape).- Search endpoints log structured issues to
browser_review_issueswhen parsers return 0 results (likely layout change). SECURITY.mddocumenting persistent-profile risks, threat model, and mitigations.ROADMAP.mdwith near-term priorities toward 1.0.VERSIONING.mddocumenting the project's semver contract.CHANGELOG.mdfollowing Keep a Changelog structure.- vitest test suite (50 unit tests covering search parsing, readability-to-markdown, diff, snapshot rendering, inspect formatting);
npm testnow runs in CI on Node 20/22. - ESLint (flat config, typescript-eslint) + Prettier, with
lint,format,format:checkscripts. Lint runs in CI (non-blocking initially). - README "Project status" section.
Changed
- Bundled
@mozilla/readabilityas a dependency instead of fetching from unpkg at runtime.browser_readno longer requires network access for the Readability library. - Split the 1081-line
src/index.tsinto per-category modules undersrc/tools/(navigation, snapshot, content, search, debug, edit, session, issues) + thin 120-line dispatcher. Tool behavior identical. - Improved search error messages (layout-change diagnostics, Brave API hint).
Full diff: v0.2.1...v0.3.0