Playwright SSE MCP Server

by torohash
Verified

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides containerized environment for running the Playwright MCP server, allowing integration with other services through Docker networks and environment variables for deployment flexibility.

  • Offers specific configuration options for running the Playwright MCP server in Linux environments, including special network addressing considerations.

  • Provides persistence options for the server, allowing automatic startup on system reboot through a dedicated persistent mode.

dramaturgo-sse-mcp-servidor

Este es un servicio que proporciona Playwright como un servidor MCP (Protocolo de contexto de modelo). Al utilizar este servidor, puede utilizar las funciones de Playwright desde los clientes MCP.

Prerrequisitos

  • Docker instalado
  • Docker-compose instalado
  • Se ha creado una red Docker llamada mcp-network.

Si la red mcp no existe, puedes crearla con el siguiente comando:

docker network create mcp-network

Cómo configurar y empezar

  1. Clonar o descargar el repositorio
  2. Ejecute el siguiente comando en el directorio raíz del proyecto:
docker compose up --build

Esto iniciará el servidor en el puerto predeterminado 3002. Una vez completado el arranque, verá el siguiente mensaje:

playwright-sse-mcp-server | Server is running on port 3002

Configuración de un puerto personalizado

Si desea iniciar el servidor en un puerto distinto del puerto predeterminado (3002), configure PORT :

PORT=4000 docker compose up --build

Esto iniciará el servidor en el puerto que especifique (4000 en este ejemplo):

playwright-sse-mcp-server | Server is running on port 4000

Cómo utilizar

Conexiones desde contenedores que participan en la misma red mcp

Desde otros contenedores que participan en la misma red mcp, puede conectarse al servidor con la siguiente URL (donde PORT es el puerto de inicio del servidor):

playwright-sse-mcp-server:${PORT}/sse

Si está utilizando los puertos predeterminados:

playwright-sse-mcp-server:3002/sse

Esto le permite aprovechar la funcionalidad MCP de Playwright.

Conexión desde el lado del host

Desde la máquina host, puede conectarse al servidor con la siguiente URL (donde PORT es el puerto de ejecución del servidor):

localhost:${PORT}/sse

Si está utilizando los puertos predeterminados:

localhost:3002/sse

Conectando desde Roo Code

Servidores MCP -> Editar configuración de MCP -> Complete lo siguiente ( PORT es el puerto de inicio del servidor):

{ "mcpServers": { "playwright-sse-mcp-server-local": { "url": "http://localhost:${PORT}/sse" } } }

Si está utilizando los puertos predeterminados:

{ "mcpServers": { "playwright-sse-mcp-server-local": { "url": "http://localhost:3002/sse" } } }

*A partir del 27 de marzo de 2025, Cline no es compatible con SSE y no se puede utilizar.

Conexión desde Roo Code en un entorno de contenedor

Desde un contenedor de código Roo que se ejecuta en la misma red Docker, configure el MCP de la siguiente manera:

{ "mcpServers": { "playwright-sse-mcp-server-local": { "url": "http://playwright-sse-mcp-server:3002/sse" } } }

Ejemplo de configuración de docker-compose.yml :

services: # Roo Code コンテナ roo-code: # 略 networks: mcp-network: external: true

Con esta configuración, puede conectarse al contenedor playwright-sse-mcp-server desde el contenedor Roo Code y utilizar la función de operación del navegador. Al utilizar el nombre del contenedor ( playwright-sse-mcp-server ) como nombre de host, es posible la resolución de nombres dentro de la red Docker.

Conexión desde Roo Code en un entorno de contenedor de desarrollo (a través del host)

Si desea ejecutar Roo Code en un contenedor de desarrollo y conectarse a este servidor MCP a través de su máquina host sin unirse mcp-network , configure el MCP de la siguiente manera:

Para Docker Desktop (Mac/Windows):

{ "mcpServers": { "playwright-sse-mcp-server-local": { "url": "http://host.docker.internal:<PORT>/sse" } } }

Para Linux (ejemplo: usando la IP de la puerta de enlace del puente):

{ "mcpServers": { "playwright-sse-mcp-server-local": { "url": "http://172.17.0.1:<PORT>/sse" } } }

Nota:

  • Reemplace <PORT> con el número de puerto que su servidor MCP expone en su host (predeterminado: 3002).
  • Para Linux, reemplace 172.17.0.1 con su dirección IP de host real o la dirección IP de puerta de enlace de la red del puente Docker. Consulte la sección Conectarse desde un contenedor de desarrollo (a través del host) para obtener más información.

Conexión desde un contenedor de desarrollo (a través del host)

Si necesita acceder a este servidor MCP desde un contenedor de desarrollo que no es parte de mcp-network (por ejemplo, cuando es difícil cambiar la red debido a un proyecto existente), puede conectarse a través de la máquina host.

Con este método, se especifica la dirección IP o el nombre DNS especial de la "máquina host" desde la perspectiva de su contenedor de desarrollo y el puerto que el servidor MCP expone en el host (establecido por ports en compose.yml , el valor predeterminado es 3002).

URL de destino:

http://<host_ip_or_dns_name>:<PORT>/sse

Reemplace <PORT> con el número de puerto en el que se ejecuta el servidor MCP.

Cómo determinar <host_ip_or_dns_name> :

  • Docker Desktop (Mac/Windows): puede utilizar el nombre DNS especial host.docker.internal .
    • Ejemplo: http://host.docker.internal:3002/sse
  • Linux:
    • Dirección IP del host: utilice la dirección IP asignada a una interfaz de red en la máquina host (por ejemplo, la que se encuentra con los comandos ifconfig o ip addr ).
      • Ejemplo: http://192.168.1.10:3002/sse (la dirección IP puede variar según su entorno)
    • Puerta de enlace de red del puente Docker: puede utilizar la dirección IP de la puerta de enlace de la red del puente predeterminado de Docker ( bridge ), que normalmente es 172.17.0.1 . Puedes comprobarlo con docker network inspect bridge .
      • Ejemplo: http://172.17.0.1:3002/sse

Tenga en cuenta:

  • Dependiendo de la configuración del firewall de su host, es posible que su contenedor de desarrollo no tenga permitido acceder a los puertos del host.
  • Verifique el número de puerto a utilizar con docker compose ps o en compose.yml .

Uso conveniente

Es tedioso ir al directorio del proyecto y ejecutar el comando docker compose cada vez. Puede iniciar y detener fácilmente su servidor desde cualquier lugar utilizando los siguientes métodos:

Método de script de shell

Este proyecto contiene scripts de shell para iniciar y detener el servidor y ver registros fácilmente.

  1. Clonar o descargar el proyecto:
# 任意のディレクトリにクローン git clone https://github.com/torohash/playwright-sse-mcp-server.git /path/to/installation
  1. Agregue la siguiente línea a .bashrc (o .zshrc o cualquier archivo de configuración de shell que esté usando) para incluir el script de shell:
# Playwright MCP Server export PLAYWRIGHT_MCP_HOME="/path/to/installation" source "$PLAYWRIGHT_MCP_HOME/scripts/playwright-mcp.sh" # 具体例(絶対パス利用) export PLAYWRIGHT_MCP_HOME="$HOME/mcps/playwright-sse-mcp-server" # 実際のパスに置き換えてください source "$PLAYWRIGHT_MCP_HOME/scripts/playwright-mcp.sh"
  1. Reinicie su shell o recargue el archivo de configuración:
source ~/.bashrc

Ahora puedes usar el siguiente comando desde cualquier lugar:

Uso básico

  • playwright-mcp-start : inicia el servidor con la configuración predeterminada (puerto 3002, sin reinicio)
  • playwright-mcp-stop - Detener el servidor
  • playwright-mcp-logs - Ver registros del servidor

Uso del modo persistente

El modo persistente garantizará que el servidor se inicie automáticamente al reiniciar el sistema:

playwright-mcp-start -p # または playwright-mcp-start --persistent

Usando un puerto personalizado

playwright-mcp-start -P 4000 # または playwright-mcp-start --port 4000

Combinando el modo de persistencia con puertos personalizados

playwright-mcp-start -P 4000 -p # または playwright-mcp-start --port 4000 --persistent

Cómo especificar una política de reinicio específica

playwright-mcp-start -r always # または playwright-mcp-start --restart always

Obtener ayuda

playwright-mcp-start -h # または playwright-mcp-start --help

Este método es más fácil de usar porque le brinda más flexibilidad para cambiar la configuración mediante las opciones de bandera. Además, al separar los scripts de shell en archivos separados, su archivo .bashrc será más simple y fácil de mantener.

Personalización del script de shell

El script de shell se encuentra en scripts/playwright-mcp.sh . Puede editar este archivo para personalizarlo según sus necesidades.

variables ambientales

El script de shell utiliza las siguientes variables de entorno:

  • PLAYWRIGHT_MCP_HOME : El directorio de instalación del proyecto. Si no se configura, se detectará automáticamente desde la ubicación del script.

Por ejemplo, puede especificar una ruta personalizada configurando una variable de entorno como esta:

export PLAYWRIGHT_MCP_HOME="/path/to/custom/installation"

Notas

  • Este servidor ejecuta Playwright en modo sin cabeza
  • El servidor se comunica con el cliente MCP mediante SSE (eventos enviados por el servidor)
-
security - not tested
F
license - not found
-
quality - not tested

Un servicio que proporciona la funcionalidad de automatización del navegador Playwright a través del Protocolo de Contexto de Modelo (MCP), lo que permite a los clientes utilizar las funciones de Playwright a través de conexiones SSE.

  1. 前提条件
    1. セットアップと起動方法
      1. カスタムポートの設定
    2. 使用方法
      1. 同じmcp-networkに参加しているコンテナからの接続
      2. ホスト側からの接続
      3. Roo Codeからの接続
      4. 開発コンテナからの接続(ホスト経由)
    3. 便利な使用方法
      1. シェルスクリプトを使用した方法
      2. シェルスクリプトのカスタマイズ
    4. 注意事項
      ID: g7db39ipsk