Skip to content

Fuel Any Agent

Gasoline is an open-source MCP server that implements the Model Context Protocol — a standard for connecting AI assistants to external tools. Any MCP-compatible tool can tap into your browser state. Zero dependencies. Localhost only.

ToolConfig LocationGuide
Claude Code.mcp.json (project root)Setup →
Cursor~/.cursor/mcp.jsonSetup →
Windsurf~/.codeium/windsurf/mcp_config.jsonSetup →
Claude DesktopOS-specific config fileSetup →
Zed~/.config/zed/settings.jsonSetup →
Gemini CLI~/.gemini/settings.jsonSetup →
OpenCode~/.config/opencode/opencode.jsonSetup →
Antigravity~/.gemini/antigravity/mcp_config.jsonSetup →
VS Code + Continue~/.continue/config.jsonBelow

Gasoline runs as a dual-mode server by default:

  • HTTP server — background daemon for the browser extension
  • stdio transport — MCP JSON-RPC over stdin/stdout
  • Auto-managed — your AI tool starts and stops the server

Gasoline exposes 5 tools — each with multiple sub-modes controlled by a single parameter.

ToolWhat it doesKey sub-modes
observePassive browser stateerrors, logs, network_waterfall, network_bodies, websocket_events, websocket_status, actions, vitals, page, tabs, screenshot, timeline, error_bundles, saved_videos, recordings, recording_actions, playback_results, log_diff_report
analyzeActive analysisdom, performance, accessibility, security_audit, third_party_audit, error_clusters, history, link_health, link_validation, page_summary, api_validation, annotations, annotation_detail, draw_history, draw_session
generateCode and report generationreproduction, test, pr_summary, sarif, har, csp, sri, visual_test, annotation_report, annotation_issues, test_from_context, test_heal, test_classify
configureSession managementstore, load, noise_rule, clear, health, streaming, recording_start, recording_stop, playback, log_diff, telemetry, diff_sessions, audit_log, describe_capabilities
interactBrowser controlnavigate, click, type, select, check, key_press, execute_js, highlight, refresh, back, forward, new_tab, upload, draw_mode_start, screen_recording_start, screen_recording_stop, paste, save_state, load_state, get_readable, get_markdown, navigate_and_wait_for, fill_form_and_submit, run_a11y_and_export_sarif

Read passive browser state. Use the what parameter to select:

ModeReturns
errorsConsole errors with deduplication and noise filtering
error_bundlesPre-assembled debugging context per error (error + network + actions + logs)
logsAll console output (configurable level and limit)
network_waterfallResource timing from PerformanceObserver
network_bodiesRequest/response payloads for API debugging
websocket_eventsWebSocket messages — filter by connection ID, direction
websocket_statusActive WebSocket connections with message rates
actionsUser interactions (click, input, navigate, scroll, select)
vitalsCore Web Vitals — FCP, LCP, CLS, INP
pageCurrent page URL and title
tabsAll browser tabs with URLs and titles
screenshotViewport screenshot
timelineMerged session timeline (actions + network + errors)
saved_videosRecorded browser session videos
recordingsRecording metadata
recording_actionsActions captured during a recording
playback_resultsResults from a recording playback
log_diff_reportCompare error states between recordings

Trigger active analysis. Use the what parameter to select:

ModeReturns
domLive DOM queries with CSS selectors
performancePerformance snapshots with regression detection
accessibilityWCAG audit (axe-core)
error_clustersDeduplicated error grouping
historyNavigation history
security_auditSecurity checks (credentials, PII, headers, cookies)
third_party_auditThird-party script and origin analysis
link_healthBrowser-based link checker with CORS detection
link_validationServer-side URL validation
page_summaryPage structure summary
api_validationAPI contract validation from captured traffic
annotationsDraw mode annotations from user feedback
annotation_detailFull computed styles for an annotation
draw_historyList past draw mode sessions
draw_sessionGet a specific draw session

Generate artifacts from your session. Use the format parameter:

FormatOutput
reproductionPlaywright script reproducing user actions
testPlaywright test with network/error assertions
pr_summaryMarkdown performance impact summary
sarifSARIF accessibility report (standard format)
harHTTP Archive export
cspContent Security Policy from observed origins
sriSubresource Integrity hashes for scripts/stylesheets
visual_testVisual regression test from annotation session
annotation_reportReport from draw mode annotations
annotation_issuesExtracted issues from annotations
test_from_contextTest generated from error/interaction/regression context
test_healRepair broken Playwright selectors
test_classifyClassify test failures

Manage session state and settings. Use the action parameter:

ActionEffect
store / loadPersistent key-value storage (save/load/list/delete/stats)
noise_ruleManage noise filtering rules (add/remove/list/auto_detect)
clearClear buffers (network, websocket, actions, logs, all)
healthServer health and memory stats
streamingEnable/disable real-time event streaming
recording_startStart capturing a browser session
recording_stopStop recording
playbackReplay a recording
log_diffCompare error states between recordings
telemetryConfigure telemetry metadata mode
diff_sessionsCapture and compare session snapshots
audit_logView MCP tool usage history
describe_capabilitiesList available actions and capabilities

Control the browser. Use the action parameter:

ActionEffect
navigateNavigate to a URL
clickClick an element (CSS or semantic selector)
typeType text into an element
selectSelect a dropdown option
checkCheck/uncheck a checkbox
key_pressPress a key (Enter, Tab, Escape, etc.)
execute_jsRun JavaScript in the page context
highlightHighlight a DOM element
refreshRefresh the current page
back / forwardBrowser history navigation
new_tabOpen a new tab
uploadFile upload for native file dialogs
draw_mode_startActivate visual annotation overlay
screen_recording_start / screen_recording_stopStart/stop video recording
pastePaste text at current focus
save_state / load_stateSave and restore browser state snapshots
get_readable / get_markdownExtract page content as readable text or markdown
navigate_and_wait_forNavigate to URL and wait for a selector to appear
fill_form_and_submitFill multiple form fields and submit in one action
run_a11y_and_export_sarifRun accessibility audit and export SARIF in one step

If port 7890 is occupied:

{
"mcpServers": {
"gasoline": {
"command": "npx",
"args": ["gasoline-mcp", "--port", "7891"]
}
}
}

Update the extension’s Server URL in Options to match.

Add to ~/.continue/config.json:

{
"experimental": {
"modelContextProtocolServers": [
{
"transport": {
"type": "stdio",
"command": "npx",
"args": ["-y", "gasoline-mcp"]
}
}
]
}
}
  1. Restart your AI tool
  2. Gasoline server ignites automatically
  3. Extension popup shows “Connected”
  4. Ask your AI: “What browser errors do you see?”