Skip to main content
Glama
ziux

Playwright Server MCP

by ziux

Playwright Server MCP

一个基于Playwright的MCP服务器,提供浏览器自动化能力

组件

资源

服务器实现了简单的笔记存储系统:

  • 自定义note://URI方案用于访问单个笔记

  • 每个笔记资源具有名称、描述和text/plain MIME类型

提示

服务器提供单个提示功能:

  • summarize-notes: 创建所有存储笔记的摘要

    • 可选"style"参数控制详细程度(brief/detailed)

    • 生成结合所有当前笔记与样式偏好的提示

工具

服务器实现以下Playwright相关工具:

会话与导航

  • playwright_new_session: 创建新的浏览器会话并打开浏览器窗口

    • 可选url参数(字符串),指定初始访问网址,不填则只打开浏览器

  • playwright_navigate: 导航到指定网址

    • 需要url参数(字符串),如不包含http或https前缀将自动添加https://

    • 如果没有活跃的浏览器会话,会自动创建一个新会话

页面交互与获取内容

  • playwright_screenshot: 对当前页面或特定元素进行截图

    • 需要name参数(字符串),截图文件名称,不需要包含扩展名

    • 可选selector参数(字符串),CSS选择器用于指定要截图的页面元素,不填则截取整个页面

  • playwright_evaluate: 在浏览器控制台中执行JavaScript代码

    • 需要script参数(字符串),需要在浏览器中执行的JavaScript代码

  • playwright_get_text_content: 获取当前页面中所有可见元素的文本内容

    • 无需参数

    • 智能过滤重复内容,只返回有意义的文本

  • playwright_get_html_content: 获取页面中指定元素的HTML内容

    • 需要selector参数(字符串),CSS选择器用于定位需要获取HTML内容的页面元素

高级交互操作

  • playwright_action: 支持丰富的元素选择与交互方式

    • 必需参数:

      • by: 选择元素方式,支持get_by_text、get_by_placeholder、get_by_label、get_by_role等

      • by_value: 选择元素的值

      • action: 操作类型,如fill、click、dblclick、hover、check等

    • 可选参数:

      • value: 操作的值

      • force: 是否强制执行动作

      • delay: 按键之间的延迟(毫秒)

      • 以及更多专用参数,参见代码文档

Related MCP server: MCP Playwright Server

配置

系统要求

  • Python 3.10+

  • Playwright 1.44+

快速开始

安装

Claude Desktop配置

MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json Windows: %APPDATA%/Claude/claude_desktop_config.json

"mcpServers": {
  "playwright-server": {
    "command": "uv",
    "args": [
      "--directory",
      "C:\\Users\\xxxxx\\Documents\\project\\python\\mcp\\playwright-server",
      "run",
      "playwright-server"
    ]
  }
}
"mcpServers": {
  "playwright-server": {
    "command": "uvx",
    "args": [
      "playwright-server"
    ]
  }
}

开发

构建与发布

准备发布包:

  1. 同步依赖并更新锁定文件:

uv sync
  1. 构建包分发:

uv build

这将在dist/目录中创建源代码和wheel分发。

  1. 发布到PyPI:

uv publish

注意: 您需要通过环境变量或命令参数设置PyPI凭据:

  • 令牌: --tokenUV_PUBLISH_TOKEN

  • 或用户名/密码: --username/UV_PUBLISH_USERNAME--password/UV_PUBLISH_PASSWORD

调试

由于MCP服务器通过stdio运行,调试可能具有挑战性。为获得最佳调试体验,我们强烈推荐使用MCP Inspector

您可以通过npm使用以下命令启动MCP Inspector:

npx @modelcontextprotocol/inspector uv --directory C:\Users\xxxxx\Documents\project\python\mcp\playwright-server run playwright-server

启动后,Inspector将显示一个URL,您可以在浏览器中访问该URL开始调试。

使用示例

基本网页访问与截图

# 创建会话并导航到指定网址
await playwright_navigate(url="example.com")

# 截取整个页面
await playwright_screenshot(name="fullpage")

# 截取特定元素
await playwright_screenshot(name="logo", selector=".logo")

高级交互操作

# 点击文本匹配的按钮
await playwright_action(by="get_by_text", by_value="登录", action="click")

# 填充表单字段
await playwright_action(by="get_by_placeholder", by_value="用户名", action="fill", value="test@example.com")

# 检查元素是否可见
await playwright_action(by="get_by_test_id", by_value="submit-button", action="is_visible")

Available Tools

6 tools
playwright_actionC

根据给定的locator 和action 执行操作

ParametersJSON Schema
NameRequiredDescriptionDefault
actionYes操作类型,可选项: fill,click,dblclick,hover,tap,check,uncheck,select_option,press,type,focus,blur,drag_to,screenshot,get_text,count,is_visible,is_enabled,is_hidden,is_disabled,is_checked,get_attribute,evaluate,wait_for,press_sequentially,clear,scroll_into_view,set_input_files,select_text,dispatch_event,get_inner_text,get_inner_html,get_content,all_inner_texts,all_text_contents
attribute_nameNo要获取的属性名称,用于get_attribute操作
buttonNo鼠标按钮,用于点击操作,可选: 'left', 'right', 'middle'
byYes选择元素方式,遵循playwright的选择器原则,可选项: get_by_text,get_by_placeholder,get_by_label,get_by_role,get_by_alt_text,get_by_title,get_by_test_id,get_by_css,locator
by_valueYes选择元素的值
delayNo按键之间的延迟(毫秒)
event_dataNo事件数据,JSON格式的字符串,用于dispatch_event操作
event_nameNo要分发的事件名称,用于dispatch_event操作
exactNo是否精确匹配文本
filenameNo截图保存的文件名,用于screenshot操作
filesNo要上传的文件路径,用于set_input_files操作,多个文件用逗号分隔
forceNo是否强制执行动作,无视actionability检查
has_textNo元素必须包含的文本
modifiersNo修饰键,用于键盘操作,可选: 'Alt', 'Control', 'Meta', 'Shift'
no_wait_afterNo是否不等待动作完成后的导航
optionsNo选择框的选项,用于select_option操作,JSON格式的字符串,可以包含 value, label, index
positionNo相对于元素的点击位置,格式为: 'x,y'
scriptNo要在元素上执行的JavaScript代码,用于evaluate操作
selectorNo拖拽目标元素的选择器,用于drag_to操作
stateNo等待的元素状态,用于wait_for操作,可选: 'attached', 'detached', 'visible', 'hidden'
strictNo是否严格匹配元素(如果找到多个元素是否报错)
timeoutNo操作超时时间(毫秒)
valueNo操作的值

TDQS

C2.1/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure but fails to do so. It doesn't mention that this is a mutation tool (e.g., for clicking, filling forms), its potential side effects, error handling, or performance characteristics. The description is too generic to inform the agent about behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise with a single sentence that directly states the tool's function. It's front-loaded and wastes no words, making it efficient for quick scanning, though this brevity contributes to its lack of detail in other dimensions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex tool with 23 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain the tool's role in browser automation, the expected outcomes, or how it integrates with sibling tools. The high parameter count and lack of behavioral context make this description incomplete for effective agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with detailed parameter descriptions in the input schema. The tool description adds no additional parameter semantics beyond what's already documented in the schema, such as explaining how parameters interact or providing examples. Given the high schema coverage, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description '根据给定的locator 和action 执行操作' (Execute an action based on given locator and action) is a tautology that restates the tool name 'playwright_action' without specifying what kind of actions it performs or what resources it operates on. It mentions 'locator' and 'action' but doesn't clarify this is for browser automation or web page interaction, making it vague and minimally informative.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines1/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like playwright_navigate, playwright_evaluate, or playwright_get_text_content. It lacks any context about prerequisites, typical use cases, or distinctions from sibling tools, leaving the agent with no usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

playwright_evaluateC

在浏览器控制台中执行JavaScript代码并返回执行结果

ParametersJSON Schema
NameRequiredDescriptionDefault
scriptYes需要在浏览器中执行的JavaScript代码

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool executes JavaScript and returns results, but lacks details on execution context (e.g., page scope, timing), error handling, security implications, or performance considerations. For a tool that interacts with a browser, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's function without unnecessary words. It's front-loaded with the core action and outcome, making it easy to parse. Every part of the sentence contributes to understanding the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of browser JavaScript execution and the lack of annotations and output schema, the description is incomplete. It doesn't address potential risks (e.g., script injection), execution environment details, or what the return values might look like (e.g., types of results). For a tool with no structured safety or output information, more context is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description doesn't add parameter-specific information beyond what the input schema provides. The schema has 100% coverage with a clear description for the 'script' parameter. Since the schema does the heavy lifting, the baseline score of 3 is appropriate, as the description doesn't compensate with additional semantics like script format examples or constraints.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '在浏览器控制台中执行JavaScript代码并返回执行结果' (Execute JavaScript code in the browser console and return the execution result). This specifies both the verb (execute JavaScript) and resource (browser console), though it doesn't explicitly differentiate from sibling tools like playwright_action or playwright_get_html_content, which may also involve browser interactions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention scenarios where this is preferred over other sibling tools (e.g., playwright_get_html_content for DOM extraction) or any prerequisites, such as needing an active browser session. This leaves the agent without contextual usage cues.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

playwright_get_html_contentC

获取页面中指定元素的HTML内容

ParametersJSON Schema
NameRequiredDescriptionDefault
selectorYesCSS选择器,用于定位需要获取HTML内容的页面元素

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden but offers minimal behavioral context. It states what the tool does but doesn't disclose whether it's read-only/destructive, requires authentication, has rate limits, returns errors for invalid selectors, or what format the HTML content returns (full element vs inner HTML). The description doesn't contradict annotations since none exist, but provides inadequate behavioral transparency for a tool interacting with a browser/page.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient Chinese sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized for a simple tool with one parameter and is front-loaded with the core functionality. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete for a tool that retrieves content from a page. It doesn't explain what happens if the selector doesn't match, whether it returns inner/outer HTML, if it waits for elements to load, or the return format. For a Playwright tool interacting with dynamic pages, more context about behavior and output is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with one parameter clearly documented in the schema. The description adds no additional parameter semantics beyond what the schema provides ('CSS选择器,用于定位需要获取HTML内容的页面元素'). It doesn't explain selector syntax examples, multiple element handling, or timeout behavior. Baseline 3 is appropriate since the schema adequately covers the single parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('获取' meaning 'get') and resource ('HTML内容' meaning 'HTML content') with specific targeting ('指定元素' meaning 'specified element'). It distinguishes from sibling playwright_get_text_content by specifying HTML vs text content. However, it doesn't explicitly differentiate from playwright_evaluate which might also retrieve content.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like playwright_get_text_content or playwright_evaluate. There's no mention of prerequisites (e.g., needing an active session), performance considerations, or error conditions. The agent must infer usage from the tool name and description alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

playwright_get_text_contentB

获取当前页面中所有可见元素的文本内容,智能过滤重复内容

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions '智能过滤重复内容' (intelligently filter duplicate content), which adds some behavioral context about output processing. However, it lacks critical details: whether this requires a page to be loaded, what 'visible' means (e.g., viewport vs. DOM), error handling, performance implications, or output format. For a tool with no annotations, this is insufficient disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence in Chinese: '获取当前页面中所有可见元素的文本内容,智能过滤重复内容'. It is front-loaded with the core purpose and adds a useful behavioral note ('智能过滤重复内容') without redundancy. Every word earns its place, making it appropriately concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations, no output schema, and moderate complexity (involving page interaction and text processing), the description is incomplete. It doesn't explain what 'visible' entails, how duplicates are filtered, the return format (e.g., string, array), or error cases. For a tool that likely interacts with a browser/page, more context is needed for safe and effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool has 0 parameters, and schema description coverage is 100% (empty schema). The description doesn't need to explain parameters, so it meets the baseline of 4 for zero-parameter tools. No additional parameter information is required or provided.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '获取当前页面中所有可见元素的文本内容' (get text content of all visible elements on the current page). It specifies the verb ('获取' - get) and resource ('文本内容' - text content), and distinguishes from sibling tools like playwright_get_html_content by focusing on text rather than HTML. However, it doesn't explicitly differentiate from playwright_evaluate which might also retrieve text content.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage context: it should be used when you need text content from visible elements on a page, and the '智能过滤重复内容' (intelligently filter duplicate content) suggests it's preferable when dealing with redundant text. However, it doesn't explicitly state when NOT to use it or name alternatives among siblings (e.g., playwright_get_html_content for HTML, playwright_evaluate for custom JavaScript).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

playwright_navigateA

浏览器导航到指定网址,如果没有活跃的浏览器会话,会自动创建一个新会话

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes需要访问的网址,如不包含http或https前缀将自动添加https://

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses key behavioral traits: automatic session creation if none exists, which is useful context beyond basic navigation. However, it lacks details on error handling, timeout behavior, or what happens after navigation (e.g., page load completion), leaving gaps for a mutation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is appropriately sized and front-loaded: a single, efficient sentence in Chinese that states the core action and key behavioral trait. Every part earns its place with no wasted words, making it highly concise and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (navigation with session management), no annotations, and no output schema, the description is minimally adequate. It covers the main action and a critical behavioral aspect (session creation), but lacks details on return values, error cases, or interaction with siblings, leaving room for improvement.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with the parameter 'url' fully documented in the schema. The description adds no additional parameter semantics beyond what the schema provides (e.g., no extra syntax or format details). According to the rules, baseline is 3 when schema coverage is high (>80%).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '浏览器导航到指定网址' (browser navigates to specified URL). It uses a specific verb ('导航到' - navigate to) and resource ('指定网址' - specified URL). However, it doesn't explicitly distinguish from sibling tools like 'playwright_action' or 'playwright_new_session', which prevents a score of 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides implied usage guidance: '如果没有活跃的浏览器会话,会自动创建一个新会话' (if there's no active browser session, it will automatically create a new one). This suggests when to use it (for navigation with session handling) but doesn't explicitly compare to alternatives like 'playwright_new_session' or specify when not to use it, keeping it at a 3.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

playwright_new_sessionB

创建新的浏览器会话,打开一个浏览器窗口并可选择性地访问指定网址

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNo需要访问的初始网址,可选参数,不填则只打开浏览器

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions creating a session and optionally visiting a URL, but doesn't describe what type of browser is opened (e.g., headless vs. headed), session lifecycle (e.g., how long it persists, how to close it), authentication needs, or performance implications. For a session creation tool with zero annotation coverage, this leaves significant behavioral gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that clearly states the core functionality: session creation, window opening, and optional URL navigation. There's no wasted verbiage or redundant information, making it appropriately front-loaded and concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (session creation with optional navigation), no annotations, no output schema, and 100% schema coverage for the single parameter, the description is minimally adequate. It covers the basic purpose but lacks details about session management, browser configuration, or integration with sibling tools, leaving room for improvement in completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema description coverage is 100%, with the single parameter 'url' well-documented in the schema as '需要访问的初始网址,可选参数,不填则只打开浏览器' (initial URL to visit, optional parameter, if not filled then only opens browser). The description adds no additional parameter semantics beyond what's already in the schema, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '创建新的浏览器会话,打开一个浏览器窗口并可选择性地访问指定网址' (Create a new browser session, open a browser window and optionally visit a specified URL). It specifies the verb ('创建新的浏览器会话' - create new browser session) and resource ('浏览器窗口' - browser window), but doesn't explicitly differentiate from sibling tools like 'playwright_navigate' which might also involve URL navigation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools like 'playwright_navigate' (for navigation within existing sessions) or 'playwright_action' (for performing actions), nor does it specify prerequisites or appropriate contexts for session creation versus using existing sessions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 6 tool updatesv1.0.0
    • First observedplaywright_action
    • First observedplaywright_evaluate
    • First observedplaywright_get_html_content
    • First observedplaywright_get_text_content
    • First observedplaywright_navigate
    • First observedplaywright_new_session

TDQS

B3.1/5.0
Disambiguation4/5

Most tools have distinct purposes: navigation, session creation, HTML/text extraction, JavaScript evaluation, and action execution. However, 'playwright_action' is somewhat broad and could potentially overlap with more specific actions, but descriptions help clarify boundaries.

Naming Consistency5/5

All tools follow a consistent 'playwright_' prefix with snake_case naming, using descriptive nouns or verbs like 'navigate', 'evaluate', and 'get_html_content'. This pattern is predictable and readable throughout the set.

Tool Count5/5

With 6 tools, this is well-scoped for a Playwright automation server. Each tool serves a clear purpose in browser interaction, from session management to content retrieval, without feeling bloated or insufficient.

Completeness3/5

The set covers core browser automation tasks like navigation, session handling, and content extraction, but lacks explicit CRUD operations for elements (e.g., create/update/delete) and advanced interactions like waiting or screenshots. Agents can work around this, but notable gaps exist.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    Not graded
    maintenance
    A MCP server that provides browser automation tools, allowing users to navigate websites, take screenshots, click elements, fill forms, and execute JavaScript through Playwright.
    8
    2
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables AI-powered browser automation, web scraping, and testing using Playwright across Chromium, Firefox, and WebKit. It allows users to perform actions like navigation, clicking, typing, and taking screenshots through natural language interfaces.
    15
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    A universal browser automation MCP server using Playwright, enabling programmatic control of Chrome with 63 tools for navigation, interaction, media control, and CDP-based diagnostics.
    63
    24
    2
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A comprehensive browser automation MCP server using Playwright, offering 50+ tools for page control, element interaction, content extraction, and more across multiple browser engines.
    21
    1
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ziux/playwright-plus-python-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server