This release fixes issues for SREs watching stability and regressions.
✓ No known CVEs patched in this version
Topics
+14 more
Affected surfaces
Summary
AI summary/proxy-command now returns HTTP 503 when SAFARI_PROFILE is set, preventing commands from executing in the wrong Safari profile.
Changes in this release
| Type | Severity | Summary | CVE |
|---|---|---|---|
| Bugfix | Medium |
/proxy-command no longer leaks commands to the wrong Safari profile. /proxy-command no longer leaks commands to the wrong Safari profile. Source: llm_adapter@2026-05-25 Confidence: high |
— |
| Bugfix | Medium |
/proxy-command now returns HTTP 503 when SAFARI_PROFILE is set, preventing cross-profile command leakage. /proxy-command now returns HTTP 503 when SAFARI_PROFILE is set, preventing cross-profile command leakage. Source: granite4.1:30b@2026-05-25-audit Confidence: high |
— |
Full changelog
Fixed
- `/proxy-command` no longer leaks commands to the wrong Safari profile. Secondary MCP instances and external HTTP clients can call this endpoint to route a command through the primary instance's extension WebSocket. The endpoint sent every command straight to `sendToExtension()` without checking `SAFARI_PROFILE`, so when the host instance was configured to target a specific profile but the connected extension belonged to a different profile window (e.g. the user's personal profile happened to be the one that won the extension-connect race), the command executed in the wrong profile — silently. A real example: a skill ran 8 parallel safari-mcp instances, the MCP tools failed to register, the skill fell back to direct `POST /proxy-command` calls, and every Reddit action ran against the personal profile's Reddit session instead of the dedicated automation profile. `/proxy-command` now returns HTTP 503 with a clear message when `SAFARI_PROFILE` is set on the host, pointing callers at the `safari_*` MCP tools — those route through AppleScript when a profile is configured and stay inside the configured profile window. Secondary instances running under the same `SAFARI_PROFILE` already skipped `/proxy-command` (because `_preferAppleScript` forced the AppleScript path), so they're unaffected; the gate only blocks callers that would have crossed the profile boundary.
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About achiya-automation/safari-mcp
Native Safari browser automation for AI agents with 80+ tools. No Chrome dependency, optimized for Apple Silicon with 60% less CPU overhead.
Related context
Related tools
Earlier breaking changes
- v2.10.5 npm audit gate now fails build on high or critical advisories.
Beta — feedback welcome: [email protected]