Playwright Server
Um servidor que fornece ferramentas Playwright para automação de navegador e raspagem web.
Documentação
Servidor MCP playwright-server
\Um servidor MCP com ferramentas playwright\
Componentes
Recursos
O servidor implementa um sistema simples de armazenamento de notas com:
- Esquema de URI personalizado note:// para acessar notas individuais
- Cada recurso de nota possui nome, descrição e tipo MIME text/plain
Prompts
O servidor fornece um único prompt:
- summarize-notes: Cria resumos de todas as notas armazenadas
- Argumento opcional "style" para controlar o nível de detalhe (breve/detalhado)
- Gera prompt combinando todas as notas atuais com a preferência de estilo
Ferramentas
O servidor implementa as seguintes ferramentas:
playwright_navigate: Navega para uma URL especificada. Esta operação criará automaticamente uma nova sessão se não houver sessão ativa.- Requer um argumento
url(string).
- Requer um argumento
playwright_screenshot: Tira uma captura de tela da página atual ou de um elemento específico.- Requer um argumento
name(string) para o nome do arquivo da captura de tela. - Argumento opcional
selector(string) para especificar um seletor CSS para o elemento a ser capturado. Se nenhum seletor for fornecido, uma captura de tela de página inteira é tirada.
- Requer um argumento
playwright_click: Clica em um elemento na página usando um seletor CSS.- Requer um argumento
selector(string) para especificar o seletor CSS do elemento a ser clicado.
- Requer um argumento
playwright_fill: Preenche um campo de entrada.- Requer um argumento
selector(string) para especificar o seletor CSS do campo de entrada. - Requer um argumento
value(string) para especificar o valor a ser preenchido.
- Requer um argumento
playwright_evaluate: Executa código JavaScript no console do navegador.- Requer um argumento
script(string) para especificar o código JavaScript a ser executado.
- Requer um argumento
playwright_click_text: Clica em um elemento na página pelo seu conteúdo de texto.- Requer um argumento
text(string) para especificar o conteúdo de texto do elemento a ser clicado.
- Requer um argumento
playwright_get_text_content: Obtém o conteúdo de texto de todos os elementos visíveis.playwright_get_html_content: Obtém o conteúdo HTML da página.- Requer um argumento
selector(string) para especificar o seletor CSS do elemento.
- Requer um argumento
Configuração
[TODO: Adicionar detalhes de configuração específicos da sua implementação]
Início Rápido
Instalação
Claude Desktop
No MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json
No Windows: %APPDATA%/Claude/claude_desktop_config.json
Desenvolvimento/Configuração de Servidores Não Publicados
``` "mcpServers": { "playwright-server": { "command": "uv", "args": [ "--directory", "C:\Users\xxxxx\Documents\project\python\mcp\playwright-server", "run", "playwright-server" ] } } ```Configuração de Servidores Publicados
``` "mcpServers": { "playwright-server": { "command": "uvx", "args": [ "playwright-server" ] } } ```Desenvolvimento
Compilação e Publicação
Para preparar o pacote para distribuição:
- Sincronizar dependências e atualizar o arquivo de bloqueio:
uv sync
- Compilar distribuições do pacote:
uv build
Isso criará distribuições de origem e wheel no diretório dist/.
- Publicar no PyPI:
uv publish
Nota: Você precisará definir as credenciais do PyPI por meio de variáveis de ambiente ou flags de comando:
- Token:
--tokenouUV_PUBLISH_TOKEN - Ou nome de usuário/senha:
--username/UV_PUBLISH_USERNAMEe--password/UV_PUBLISH_PASSWORD
Depuração
Como os servidores MCP executam via stdio, a depuração pode ser desafiadora. Para a melhor experiência de depuração, recomendamos fortemente usar o MCP Inspector.
Você pode iniciar o MCP Inspector via npm com este comando:
npx @modelcontextprotocol/inspector uv --directory C:\Users\YUNYING\Documents\project\python\mcp\playwright-server run playwright-server
Ao iniciar, o Inspector exibirá uma URL que você pode acessar no seu navegador para começar a depurar.