Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add HayoDev/safari-devtools-mcp --skill safari-devtoolsgit clone --depth 1 https://github.com/HayoDev/safari-devtools-mcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/hayodev/safari-devtools-mcp/safari-devtools)<a href="https://agentmods.dev/skills/hayodev/safari-devtools-mcp/safari-devtools"><img src="https://agentmods.dev/badge/skills/hayodev/safari-devtools-mcp/safari-devtools/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/hayodev/safari-devtools-mcp/safari-devtools"><img src="https://agentmods.dev/badge/skills/hayodev/safari-devtools-mcp/safari-devtools.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.00513 |
| Opus 5.5 | $0.00000 | $0.00205 |
| Sonnet 5.5 | $0.00000 | $0.00103 |
| Haiku 4.5 | $0.00000 | $0.00051 |
Grade A, and why
safari-devtools scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 45 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Safari DevTools MCP — Getting Started
Use this skill when onboarding to the Safari DevTools MCP server or when unsure which tools to use.
Available tool categories
- Snapshots:
take_snapshotgives you a DOM/a11y tree with element UIDs you can pass to other tools. Always take a fresh snapshot before interacting. - Navigation:
navigate_page,new_page,list_pages,select_pagefor page lifecycle control. - Input:
click,fill,type_text,press_key,drag,hover,select_option,upload_filefor element interaction. Identify elements by theiruidfrom the latest snapshot. - Debugging:
list_console_messages,list_network_requestsfor runtime diagnostics. Useget_console_message/get_network_requestfor details. - Screenshots:
take_screenshotfor visual state. Prefertake_snapshotfor programmatic inspection. - Page content:
get_page_content(title + text),get_html_source,extract_links,extract_meta. - CSS:
get_computed_stylefor styling information on any element. - Storage:
get_cookies,set_cookie,delete_cookie,get_storage,set_storage,delete_storagefor cookie and Web Storage inspection. - Scroll:
scroll,scroll_to_elementfor viewport control.
Recommended workflow
- Navigate to the target URL with
navigate_page. - Snapshot the page with
take_snapshotto see the DOM tree. - Interact using UIDs from the snapshot:
click,fill, etc. - Re-snapshot after interaction — the DOM may have changed.
- Debug with
list_console_messagesandlist_network_requeststo check for errors or failed requests.
Safari-specific notes
- Safari only supports one WebDriver session at a time.
- Tab management uses AppleScript — macOS accessibility permissions may be required.
- There is no headless mode. Safari will open visibly on screen.
- Screenshots are PNG only.
- Console and network capture start when the session is created — messages before that point are not captured (network has partial historical data via the Performance API).
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 45 lines · 0 tokens per session scan A 4151ef06028f
safari-devtools is a skill published in the GitHub repository HayoDev/safari-devtools-mcp (2 stars, last pushed 6mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 513 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
claude-for-safari
Control the user's real Safari browser on macOS through AppleScript, page JavaScript, screenshots, and carefully verified System Events input. Use when an agent needs to inspect or operate the user's existing Safari tabs and login sessions, including reading pages, navigating, clicking, filling non-sensitive forms…
kane-cli
End-to-end (E2E) test generation and execution with KaneCLI. Generate tests from a PRD, specification, or user-provided description via the assurance commands (use-cases, acceptance criteria, scenarios, runnable test.md tests; never write test cases by hand). Execute them on desktop web (Chrome, the default), Android…
naive-user
Drive the live app as an uninformed first-time user. Hover, click, and type in a real browser, observe what actually happens, and report the gaps (bugs, broken expectations, UX surprises, accessibility issues) before deploy. Source-blind: forms expectations from the screen plus web conventions, never from source.…
react-sentinel-debug
Use React-Sentinel when a task needs live browser or React runtime inspection rather than static code reading alone.
browser-control
Full browser control skill for AI agents. Multi-channel web access (search, fetch, Jina, CDP) with real Chrome session inheritance. Read, click, fill, upload, screenshot — including pages behind authentication. Three-layer safety system. Sub-agent parallel dispatch. Site experience memory. Auto-detects macOS, Windows…
browse
Browser control with mode routing. /browse = auto-detect, /browse here = foreground (operate on the page user is looking at), /browse bg = background (CDP, no user disruption). Supports parallel sub-agent dispatch in bg mode.