Skip to main content
Glama
andesco

Safari Web Inspector Bridge

by andesco

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SWIB_PROXY_PORTNoStarting port for ios-webkit-debug-proxy device ports9222
SWIB_AUTO_CONNECTNoAuto-connect to the first inspectable page on startupfalse
SWIB_CONSOLE_CAPTURENoCapture console messages on connecttrue
SWIB_NETWORK_CAPTURENoCapture network requests on connecttrue

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_devicesA

List connected iOS devices with Web Inspector enabled

list_inspectable_pagesA

Enumerate all inspectable WKWebViews across connected devices

connectB

Attach to a specific inspectable page for observation and automation

get_urlA

Get the current URL of the connected page

get_domA

Read the page's DOM as HTML

get_network_logA

Retrieve captured network requests since connection or last clear

get_console_logA

Retrieve JavaScript console messages since connection or last clear

screenshotB

Capture a screenshot of the webview content

debug_protocolA

Dump the raw WebKit Inspector Protocol messages exchanged (for debugging)

navigateA

Load a URL in the connected webview

execute_javascriptB

Evaluate a JavaScript expression in the page context

click_elementA

Click a DOM element identified by CSS selector

type_textA

Type text into the currently focused element or a specified element

wait_forC

Wait for a condition before proceeding

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.5/5.0

Scored across 14 tools

Disambiguation5/5

Each tool has a clearly distinct role: enumeration (list_devices, list_inspectable_pages), connection, state retrieval (get_url, get_dom, get_network_log, get_console_log), actions (navigate, execute_javascript, click_element, type_text, wait_for), and debugging (screenshot, debug_protocol). No two tools target the same resource or action in an ambiguous way.

Naming Consistency4/5

Most tools follow a consistent verb_noun pattern (list_devices, get_url, click_element). A few single-word verbs (connect, navigate, screenshot) deviate slightly but are still clear and fit the overall imperative style. No mixed naming conventions like camelCase or inconsistent prefixes.

Tool Count5/5

14 tools is well within the ideal range for a comprehensive browser automation/inspection server. Each tool covers a necessary aspect of the workflow without redundancy or bloat.

Completeness4/5

The toolset covers the core lifecycle of inspecting and automating WKWebViews: discovery, connection, navigation, DOM access, interaction, waiting, and logging. A minor gap is lack of an explicit clear operation for network/console logs despite descriptions mentioning 'last clear', but this can be worked around with reconnection.

Maintenance

ActivityInactive
ResponsivenessNo issues