Safari mcp workflow
Skill gaelic-ghost/socket/plugins/apple-dev-skills/skills/safari-mcp-workflow
Inspect a scoped live site in Safari through Safari Technology Preview's local MCP server. Use for Safari-specific DOM, console, network, screenshot, accessibility, performance, interaction, responsive, or print-media evidence.From its SKILL.md
npx -y skills add gaelic-ghost/socket --skill safari-mcp-workflowAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 6 stars6 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
5.7 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
Safari MCP Workflow
Purpose
Use Safari MCP for evidence from a live Safari Technology Preview tab. It owns browser-runtime observation and authorized interaction, not Safari extension architecture, app-to-Safari control, Web Inspector extension design, or cross-browser certification.
When To Use
- Use for Safari-specific rendering, DOM, console, network, screenshot, interaction, accessibility, performance, responsive, or print-media investigation.
- Use when a local web app needs Safari evidence before a fix is proposed or accepted.
- Use
safari-extension-control-workflowfor Safari Web Extension, Safari App Extension, SafariServices, or Web Inspector extension architecture. - Use
xcode-testing-workflowfor XCTest, XCUITest, simulator, or Xcode-run validation. - Use
explore-apple-swift-docsfor Apple documentation lookup that does not need a live tab.
Single-Path Workflow
- Scope the target before connecting: name the origin, tab, requested state, permitted interactions, and any sensitive data boundary. Do not inspect unrelated tabs.
- Preflight Safari Technology Preview 247 or later, its
safaridriverexecutable, and Safari's Enable remote automation and external agents setting (shown as Allow remote automation in some builds). Readreferences/setup-and-privacy.md. - Register Safari MCP only with explicit approval. Use the documented local
safaridriver --mcpcommand; do not bundle a server, silently alter global MCP configuration, or claim a connection before listing its tools. - Establish page state with tab, URL, loading, and
get_page_contentevidence before evaluating JavaScript or taking a screenshot. Use its nodeuidvalues when an interaction must target a specific element. Then collect the smallest useful combination of console, network, DOM, JavaScript, and screenshot evidence. - Perform only the authorized interaction sequence; batch related reversible steps through
page_interactionswith a stated purpose and the relevant nodeuidwhen that makes the recorded sequence clearer. Do not submit forms, purchase, delete, change account state, or reveal secrets without a fresh user confirmation immediately before the effect. - For accessibility, inspect semantic markup, labels, ARIA, keyboard reachability, and relevant visual contrast evidence. Report findings as focused checks, not a compliance certification.
- For performance, use bounded page metrics and network timings. State whether the evidence is a one-run observation, not a benchmark or regression guarantee.
- Re-check the requested outcome after each change with independent evidence. Read
references/evidence-and-validation.mdfor the reporting contract. - Return the target, Safari Technology Preview version, observed evidence, authorized actions, unresolved uncertainty, and one focused handoff.
Inputs
target: required origin, URL, or already selected tab.goal: required bug, behavior, accessibility, performance, or visual expectation.interaction_scope: optionalread-only,reversible, or an explicitly named state-changing action.data_boundary: optional authenticated, private, payment, or other sensitive-page restriction.viewport: optional CSS-pixel viewport or media type.- Defaults: use read-only inspection, one scoped tab, minimal data collection, and Safari-specific claims only.
Outputs
status:success,handoff, orblocked.evidence: selected tab/URL, Safari Technology Preview version, tool results, screenshots when useful, and observed-versus-expected behavior.actions: every interaction performed and whether it changed state.next_step: one concrete fix, retest, or workflow handoff.
Guards and Stop Conditions
- Do not expose or log credentials, cookies, tokens, AutoFill data, private text, or unrelated browsing activity.
- Do not treat Safari MCP as a Safari extension API, an arbitrary native-control surface, or cross-browser proof.
- Do not present a screenshot alone as behavioral proof; pair it with DOM, state, console, network, or interaction evidence as appropriate.
- Stop with
blockedwhen Safari Technology Preview, the driver, the required Safari setting, or an authorized target is unavailable. - Stop and ask immediately before any irreversible or account-, payment-, privacy-, or publication-affecting action.
Fallbacks and Handoffs
- Recommend
safari-extension-control-workflowfor Safari integration and extension decisions. - Recommend
xcode-testing-workflowfor Xcode-owned tests and UI automation. - Recommend
apple-ui-accessibility-workflowfor Apple native UI accessibility work. - Recommend
explore-apple-swift-docsfor current Apple or WebKit documentation.
Customization
Use references/customization-flow.md. The first version has no runtime-enforced settings: origin, interaction, and privacy boundaries must be chosen for each live session.
References
Workflow References
references/setup-and-privacy.mdreferences/evidence-and-validation.mdreferences/customization-flow.md
Authoritative Sources
Script Inventory
scripts/customization_config.py
What ships with it: 6 files
9.9 KB alongside SKILL.md, 1 of them executable
agents/
- openai.yaml430 B
references/
scripts/
- customization_config.pyruns5.0 KB