Skip to main content
Glama
rajurayhan

sulus-web-mcp

by rajurayhan

sulus-web-mcp

MCP de Playwright sin estado para investigación web en vivo. Los agentes obtienen tres herramientas — browse_page, extract_links, search_page — cada una abre una URL, extrae texto y cierra el contexto del navegador. No hay herramientas de clic, escritura o inicio de sesión.

Construido para Sulus Agents (conectores MCP de ai-phone-system) y el resto del ecosistema (Cursor, MCPConnect). Laravel no puede ejecutar Chromium en el mismo proceso; este servicio es el MCP HTTP al que llaman esos agentes.

Tools

Tool

Cuándo usarlo

Qué devuelve

browse_page

Necesita el contenido de una página pública

Título, URL final, markdown limpio (o solo enlaces/título)

extract_links

Necesita enlaces salientes

Lista markdown de href + texto

search_page

Necesita extractos que coincidan con una consulta

Hasta N fragmentos alrededor de la consulta

Cada llamada es autocontenida (navegar + extraer). Eso coincide con el cliente conector de ai-phone-system, que envía tools/list / tools/call con sin sesión MCP.

Requisitos

  • Node.js 20+

  • Playwright Chromium (npx playwright install chromium después de npm install)

Configuración

cd /Users/macbook/Workshop/Sulus.ai/sulus-web-mcp
npm install
npx playwright install chromium
cp .env.example .env
# set MCP_SHARED_SECRET
npm run build

HTTP (Agentes, equipo, producción)

npm run start:http
# or: npm run dev:http

Salud: GET /health
MCP: POST /mcp (JSON-RPC, Streamable HTTP)

Variable

Descripción

MCP_SHARED_SECRET

Token Bearer requerido en /mcp

MCP_HOST / MCP_PORT / MCP_PATH

Bind (por defecto 0.0.0.0:3000/mcp)

MCP_ALLOWED_HOSTS

Valores permitidos del encabezado Host

ALLOW_INSECURE_HTTP

Establecer true solo para pruebas locales http://

ALLOW_HOSTS / DENY_HOSTS

Listas de hosts opcionales

NAVIGATION_TIMEOUT_MS

Por defecto 25000 (mantenerse por debajo del tiempo de espera de 60s de los agentes)

BROWSER_MAX_CONCURRENT

Por defecto 3

RATE_LIMIT_PER_MINUTE

Por token bearer, por defecto 30

MAX_OUTPUT_CHARS

Por defecto 18000 (los agentes truncan a 20k)

Los registros son una línea JSON por navegación (origen+ruta de url, estado, ms). Los cuerpos de las páginas nunca se registran.

Docker

cp .env.example .env
docker compose up -d --build

Usa la imagen oficial de Playwright (incluye Chromium). Se requiere shm_size: 1gb.

stdio (Cursor local)

npm run start

.cursor/mcp.json:

{
  "mcpServers": {
    "sulus-web": {
      "command": "node",
      "args": ["dist/index.js"],
      "cwd": "/Users/macbook/Workshop/Sulus.ai/sulus-web-mcp"
    }
  }
}

HTTP desde Cursor (después del despliegue):

{
  "mcpServers": {
    "sulus-web": {
      "url": "https://browse.sulus.ai/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_SHARED_SECRET"
      }
    }
  }
}

Conectar desde agentes de ai-phone-system

  1. Despliega este servicio detrás de HTTPS.

  2. En MCP Connectors, agrega un servidor personalizado:

    • URL: https://browse.sulus.ai/mcp

    • Autenticación: Bearer, token = MCP_SHARED_SECRET

  3. Habilita el conector en el agente.

El manejador HTTP responde a tools/list y tools/call sin initialize / Mcp-Session-Id, que es lo que envía ExternalMcpClientService. El HTTP Streamable con sesión aún funciona para Cursor.

Seguridad

  • Solo HTTPS (a menos que ALLOW_INSECURE_HTTP=true)

  • Bloquea localhost, RFC1918, enlace local, CGNAT, hosts de metadatos de nube

  • Resuelve DNS y rechaza respuestas privadas

  • Aborta solicitudes en la página a URLs bloqueadas

  • Nuevo contexto de navegador por llamada — sin compartir cookies

  • Sin herramientas de relleno de formularios / clic / carga de archivos

Scripts

npm run typecheck
npm test
npm run build
-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • Web research for agents: quality-scored Google search, webpage extraction, and deep research.

  • LLM-ready web search + instant answers + URL-to-clean-text fetch for agents and RAG.

  • Read a URL as clean markdown, screenshot a website, url to PDF. Web access for agents, no signup.

View all MCP Connectors

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/rajurayhan/sulus-web-mcp'

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