Skip to main content
Glama
Playwright MCP Server

Playwright MCP Server

Official
by microsoft

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

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
browser_closeB

Close the page

browser_resizeB

Resize the browser window

browser_console_messagesC

Returns all console messages

browser_handle_dialogC

Handle a dialog

browser_emulate_mediaA

Emulate CSS media features for the page, for example switch between the light and dark color scheme. Omitted parameters are left unchanged; null clears an override.

browser_evaluateC

Evaluate JavaScript expression on page or element

browser_file_uploadB

Upload one or multiple files

browser_dropA

Drop files or MIME-typed data onto an element, as if dragged from outside the page. At least one of "paths" or "data" must be provided.

browser_findA

Search the accessibility snapshot of the current page for text or a regular expression. Returns matching snapshot nodes with a few lines of surrounding context (like search snippets), each shown under its path from the root of the tree, which is cheaper than capturing the whole snapshot when you only need to locate an element and its ref.

browser_fill_formB

Fill multiple form fields

browser_press_keyB

Press a key on the keyboard

browser_typeB

Type text into editable element

browser_navigateC

Navigate to a URL

browser_navigate_backA

Go back to the previous page in the history

browser_network_requestsA

Returns a numbered list of network requests since loading the page. Use browser_network_request with the number to get full details.

browser_network_requestA

Returns full details (headers and body) of a single network request, or a single part if part is set. Use the number from browser_network_requests.

browser_run_code_unsafeA

Run a Playwright code snippet. Unsafe: executes arbitrary JavaScript in the Playwright server process and is RCE-equivalent.

browser_take_screenshotA

Take a screenshot of the current page. You can't perform actions based on the screenshot, use browser_snapshot for actions.

browser_snapshotA

Capture accessibility snapshot of the current page, this is better than screenshot

browser_clickB

Perform click on a web page

browser_dragA

Perform drag and drop between two elements

browser_hoverA

Hover over element on page

browser_select_optionB

Select an option in a dropdown

browser_tabsC

List, create, close, or select a browser tab.

browser_wait_forA

Wait for text to appear or disappear or a specified time to pass. When both text and textGone are provided, waits for the first one to happen

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.3/5.0

Scored across 25 tools

Disambiguation4/5

Most tools target clearly distinct actions (click, type, hover, drag, navigate, select_option), and pairs like network_requests/network_request and snapshot/take_screenshot are disambiguated in their descriptions. The main blur is browser_evaluate vs browser_run_code_unsafe, both of which execute JavaScript in overlapping scopes.

Naming Consistency4/5

All tools share a consistent browser_ prefix and almost all follow a verb_noun pattern (browser_navigate, browser_click, browser_take_screenshot). A few are noun-only or noun-phrase (browser_snapshot, browser_console_messages, browser_network_requests), which is a minor deviation but still readable.

Tool Count4/5

25 tools is on the heavy edge, but each maps to a distinct browser capability (navigation, input, tabs, dialogs, network/console inspection, capture, emulation), so the surface is justified rather than padded. It is slightly over the comfortable range for an agent to hold in working memory.

Completeness4/5

Coverage is strong across navigation, interaction, forms, tabs, dialogs, network/console inspection, and capture. Minor gaps exist for cookie/storage-state management, scrolling, and explicit download handling, but these are workable via evaluate or other tools.

Maintenance

ActivityActive
ResponsivenessSyncing