Skyvern

Browser automation over MCP: drive cloud browsers, fill forms, extract data and run saved Skyvern agents

Official · Skyvern Python Remote (hosted) · Streamable HTTPLocal · stdio Browser automationAI and ML

60 popularity score ★ 23k

Connect your client

Remote (hosted)

Add in one click

Opens the app, which asks before it adds the server.

Or add it by command or config

Claude Codeterminal; then run /mcp in Claude Code to sign in
claude mcp add --transport http skyvern https://api.skyvern.com/mcp/ --scope user
Cursor~/.cursor/mcp.json
{
"mcpServers" : {
"Skyvern" : {
"type" : "streamable-http" ,
"url" : "https://api.skyvern.com/mcp/"
}
}
}
Codexterminal
codex mcp add skyvern --url https://api.skyvern.com/mcp/
ChatGPTSettings → Connectors → Add connector (MCP)
https://api.skyvern.com/mcp/
Claude (desktop and web)custom connector in Claude on the web or Claude Desktop
https://api.skyvern.com/mcp/
windsurf~/.codeium/windsurf/mcp_config.json
{
"mcpServers" : {
"Skyvern" : {
"type" : "streamable-http" ,
"url" : "https://api.skyvern.com/mcp/" ,
"headers" : { "x-api-key" : "<SKYVERN_API_KEY>" }
}
}
}
Local (PyPI)

Add in one click

Opens the app, which asks before it adds the server. Then replace each <NAME> in its settings with your value.

Or add it by command or config

It needs SKYVERN_BASE_URL, SKYVERN_API_KEY. Replace each <NAME> with your value.

FirstTerminal
pip install "skyvern[server]"
skyvern quickstart
Claude CodeTerminal
claude mcp add skyvern -e SKYVERN_BASE_URL=<SKYVERN_BASE_URL> -e SKYVERN_API_KEY=<SKYVERN_API_KEY> -- '<ABSOLUTE_PATH_TO_PYTHON>' -m skyvern run mcp
Claude Desktopclaude_desktop_config.json
{
  "mcpServers": {
    "skyvern": {
      "command": "<ABSOLUTE_PATH_TO_PYTHON>",
      "args": [
        "-m",
        "skyvern",
        "run",
        "mcp"
      ],
      "env": {
        "SKYVERN_BASE_URL": "<SKYVERN_BASE_URL>",
        "SKYVERN_API_KEY": "<SKYVERN_API_KEY>"
      }
    }
  }
}
Cursor~/.cursor/mcp.json
{
  "mcpServers": {
    "skyvern": {
      "command": "<ABSOLUTE_PATH_TO_PYTHON>",
      "args": [
        "-m",
        "skyvern",
        "run",
        "mcp"
      ],
      "env": {
        "SKYVERN_BASE_URL": "<SKYVERN_BASE_URL>",
        "SKYVERN_API_KEY": "<SKYVERN_API_KEY>"
      }
    }
  }
}
VS Code.vscode/mcp.json
{
  "servers": {
    "skyvern": {
      "type": "stdio",
      "command": "<ABSOLUTE_PATH_TO_PYTHON>",
      "args": [
        "-m",
        "skyvern",
        "run",
        "mcp"
      ],
      "env": {
        "SKYVERN_BASE_URL": "<SKYVERN_BASE_URL>",
        "SKYVERN_API_KEY": "<SKYVERN_API_KEY>"
      }
    }
  }
}
Codex~/.codex/config.toml
[mcp_servers.skyvern]
command = "<ABSOLUTE_PATH_TO_PYTHON>"
args = ["-m", "skyvern", "run", "mcp"]

[mcp_servers.skyvern.env]
SKYVERN_BASE_URL = "<SKYVERN_BASE_URL>"
SKYVERN_API_KEY = "<SKYVERN_API_KEY>"
Gemini CLITerminal
gemini mcp add --scope user -e SKYVERN_BASE_URL=<SKYVERN_BASE_URL> -e SKYVERN_API_KEY=<SKYVERN_API_KEY> skyvern '<ABSOLUTE_PATH_TO_PYTHON>' -- -m skyvern run mcp

Settings 3

SKYVERN_BASE_URL Required: Address of your self-hosted Skyvern server for local mode, e.g. http://localhost:8000.
SKYVERN_API_KEY Required: API key for your Skyvern instance (local key when self-hosting).
SKYVERN_TELEMETRY Optional: Set to false to turn off the default usage telemetry.

What it does

Skyvern is a browser-automation platform; its MCP server hands an assistant 117 tools (counted in the v1.0.56 tool registry, matching the docs) for opening a browser, moving through pages, filling forms, reading data back as JSON and taking screenshots. Actions can be given as CSS selectors, as plain-language descriptions that a model resolves on the page, or both.

Beyond single pages it reaches the rest of a Skyvern account: stored logins with 2FA (including 1Password and Bitwarden vaults), saved agents (workflows) that can be created, run, scheduled and monitored, browser profiles, saved cookie state, and network and console inspection.

Most people connect to Skyvern's hosted endpoint, where the browsers run in Skyvern Cloud and use account credits. A stdio mode (python -m skyvern run mcp) is meant for people who self-host Skyvern and points the server at their own instance; in that mode the browser runs on their machine, so localhost sites work.

Because 117 tools take a lot of a client's context, the server offers scopes: operate (30 tools, run existing agents, no browser), build (62), browser (54) and lean (33), chosen with a /mcp/x/<scope> URL, an X-Skyvern-Scope header, or --scope locally. The MCP registry entry still lists version 1.0.23 and an x-api-key header as required, while the docs show OAuth sign-in for most clients and the code is at v1.0.56.

What it needs

To run it yourselfPython 3.11+

Hosted: a Skyvern account (app.skyvern.com) with credits; sign in with OAuth or use an API key from Settings → API keys. Codex CLI needs 0.125.0 or later, Cursor 0.43 or later; Claude Desktop on Linux needs Node.js 20+ for mcp-remote. Local stdio: a running self-hosted Skyvern server (skyvern quickstart or skyvern run server, with an LLM provider configured), Python 3.11+ and pip install "skyvern[server]" in the same environment, plus a local API key.

Limits

The hosted server runs browsers in Skyvern Cloud and stops working when the account is out of credits. Anti-bot measures, the proxy network and CAPTCHA solving are only in the managed cloud, not in the AGPL code. The Grok Build plugin connects the browser scope only (54 tools), without run_task, extract, validate, agent or credential tools. The README lists Python 3.11-3.13 while the MCP docs allow 3.11-3.14. A static x-api-key header stops OAuth sign-in in Claude Code, Cursor and Codex; remove it to sign in. Skyvern collects usage telemetry by default; set SKYVERN_TELEMETRY to opt out.

Who it suits

Suits people who want an assistant to work on real websites (logins, forms, multi-step flows, scraping into JSON) and then keep the result as a saved, scheduled Skyvern agent. The hosted endpoint needs no install, but every page you visit is processed on Skyvern's servers and runs cost credits. Self-hosting keeps the browser and data on your own machine but means running the full Skyvern server with your own LLM key. For a client with a small context, use a scope such as lean or browser instead of all 117 tools.

Tools 60 of 117

skyvern_browser_session_create
Start a cloud (or self-hosted) browser session
skyvern_browser_session_close
Close a browser session
skyvern_browser_session_list
List open browser sessions
skyvern_browser_session_get
Show details of one browser session
skyvern_browser_session_connect
Attach to an existing browser session
skyvern_browser_profile_create
Save a reusable browser profile
skyvern_browser_profile_list
List saved browser profiles
skyvern_browser_profile_delete
Delete a browser profile
skyvern_navigate
Open a URL in the current tab
skyvern_act
Carry out an action described in plain language
skyvern_run_task
Run a one-off autonomous task; the most expensive path
skyvern_observe
Describe the actionable elements on the page
skyvern_execute
Run actions chosen after an observe step
skyvern_click
Click an element by selector or description
skyvern_type
Type text into a field
skyvern_select_option
Choose a value in a dropdown
skyvern_hover
Hover over an element
skyvern_drag
Drag an element to a target
skyvern_scroll
Scroll the page or an element
skyvern_press_key
Send a key press
skyvern_file_upload
Upload a file into a page's file input
skyvern_wait
Wait for a time or for a condition
skyvern_find
Locate elements matching a query
skyvern_extract
Pull structured JSON from the page using a model
skyvern_validate
Check a yes/no condition on the page
skyvern_screenshot
Capture a screenshot of the page
skyvern_login
Sign in to a site with a stored credential, including 2FA
skyvern_evaluate
Run JavaScript in the page
skyvern_clipboard_read
Read the browser clipboard
skyvern_clipboard_write
Write to the browser clipboard
skyvern_tab_new
Open a new tab
skyvern_tab_list
List open tabs
skyvern_tab_switch
Switch to another tab
skyvern_tab_close
Close a tab
skyvern_frame_switch
Move into an iframe
skyvern_frame_list
List iframes on the page
skyvern_state_save
Save cookies and storage of a session
skyvern_state_load
Restore saved cookies and storage
skyvern_get_html
Return an element's HTML
skyvern_console_messages
Read the browser console log
skyvern_network_requests
List network requests the page made
skyvern_network_route
Intercept or mock matching network requests
skyvern_har_start
Begin recording a HAR file
skyvern_handle_dialog
Accept or dismiss a page dialog
skyvern_credential_list
List stored credentials
skyvern_credential_delete
Remove a stored credential
skyvern_onepassword_items
List items from a connected 1Password vault
skyvern_bitwarden_items
List items from a connected Bitwarden vault
skyvern_workflow_create
Create a saved agent (workflow)
skyvern_workflow_update
Change an agent's definition
skyvern_workflow_run
Start a run of an agent
skyvern_workflow_status
Check the status of a run
skyvern_workflow_list
List agents in the account
skyvern_workflow_delete
Delete an agent
skyvern_workflow_cancel
Cancel a running agent
skyvern_schedule_create
Schedule an agent to run on a timetable
skyvern_schedule_list
List schedules
skyvern_schedule_delete
Delete a schedule
skyvern_script_get_code
Show the cached code generated for an agent
skyvern_folder_create
Create a folder to group agents

Similar servers