trackmcp
Back to directory
blackwhite084

playwright-plus-python-mcp

View on GitHub

<a href="https://glama.ai/mcp/servers/c50bsocgzb"><img width="380" height="200" src="https://glama.ai/mcp/servers/c50bsocgzb/badge" alt="Playwright Server MC...

154 stars PythonDeveloper Kits Updated Jan 7, 2025

Documentation

playwright-server MCP server

\A MCP server with playwright tools\

Components

Resources

The server implements a simple note storage system with:

  • Custom note:// URI scheme for accessing individual notes
  • Each note resource has a name, description and text/plain mimetype

Prompts

The server provides a single prompt:

  • summarize-notes: Creates summaries of all stored notes
    • Optional "style" argument to control detail level (brief/detailed)
    • Generates prompt combining all current notes with style preference

Tools

The server implements the following tools:

  • `playwright_navigate`: Navigates to a specified URL. This operation will automatically create a new session if there is no active session.
    • Requires a `url` argument (string).
  • `playwright_screenshot`: Takes a screenshot of the current page or a specific element.
    • Requires a `name` argument (string) for the screenshot file name.
    • Optional `selector` argument (string) to specify a CSS selector for the element to screenshot. If no selector is provided, a full-page screenshot is taken.
  • `playwright_click`: Clicks an element on the page using a CSS selector.
    • Requires a `selector` argument (string) to specify the CSS selector for the element to click.
  • `playwright_fill`: Fills out an input field.
    • Requires a `selector` argument (string) to specify the CSS selector for the input field.
    • Requires a `value` argument (string) to specify the value to fill.
  • `playwright_evaluate`: Executes JavaScript code in the browser console.
    • Requires a `script` argument (string) to specify the JavaScript code to execute.
  • `playwright_click_text`: Clicks an element on the page by its text content.
    • Requires a `text` argument (string) to specify the text content of the element to click.
  • `playwright_get_text_content`: Get the text content of all visiable elements.
  • `playwright_get_html_content`: Get the HTML content of the page.
    • Requires a `selector` argument (string) to specify the CSS selector for the element.

Configuration

[TODO: Add configuration details specific to your implementation]

Quickstart

Install

Claude Desktop

On MacOS: `~/Library/Application\ Support/Claude/claude_desktop_config.json`

On Windows: `%APPDATA%/Claude/claude_desktop_config.json`

Development/Unpublished Servers Configuration

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

Published Servers Configuration

code
"mcpServers": {
    "playwright-server": {
      "command": "uvx",
      "args": [
        "playwright-server"
      ]
    }
  }

Development

Building and Publishing

To prepare the package for distribution:

1. Sync dependencies and update lockfile:

bash
uv sync

2. Build package distributions:

bash
uv build

This will create source and wheel distributions in the `dist/` directory.

3. Publish to PyPI:

bash
uv publish

Note: You'll need to set PyPI credentials via environment variables or command flags:

  • Token: `--token` or `UV_PUBLISH_TOKEN`
  • Or username/password: `--username`/`UV_PUBLISH_USERNAME` and `--password`/`UV_PUBLISH_PASSWORD`

Debugging

Since MCP servers run over stdio, debugging can be challenging. For the best debugging

experience, we strongly recommend using the MCP Inspector.

You can launch the MCP Inspector via `npm` with this command:

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

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

Frequently asked questions

What is playwright-plus-python-mcp?

playwright-plus-python-mcp is <a href="https://glama.ai/mcp/servers/c50bsocgzb"><img width="380" height="200" src="https://glama.ai/mcp/servers/c50bsocgzb/badge" alt="Playwright Server MC...

How do I install playwright-plus-python-mcp?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is playwright-plus-python-mcp open source?

Yes — it is hosted on GitHub at https://github.com/blackwhite084/playwright-plus-python-mcp and has 154 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP