Skip to main content
Glama
ch-yousafali

Multilogin Browser MCP

by ch-yousafali

Multilogin Browser MCP

Un servicio FastAPI que impulsa los perfiles de navegador antidetección Multilogin X mediante CDP y los expone a agentes de IA a través de un servidor HTTP MCP de streaming.

Funciones

  • Gestión de perfiles — listar, buscar, crear y eliminar perfiles de Multilogin (se admite la creación de varios por lotes sin un límite artificial).

  • Sesiones de navegador — iniciar un perfil, conectar Playwright mediante CDP y gestionar el ciclo de vida de la sesión.

  • Catálogo de acciones del navegador — navegar, hacer clic, escribir, evaluar JavaScript, capturas de pantalla, pestañas, cookies, desplazamientos, flotación del cursor y más.

  • Interfaz dual — API REST para integraciones y MCP para frameworks de agentes.

  • Vigilante de sesiones — TTL máximo de 15 minutos y limpieza por tiempo de espera inactivo.

  • Listo para Railway — impulsado por PORT y .env.

Related MCP server: BrowserPilot

Requisitos

  • Python 3.12+

  • Aplicación / agente de escritorio Multilogin ejecutándose localmente (expone el lanzador en https://launcher.mlx.yt:45001, que resuelve a 127.0.0.1)

  • Un token de automatización de Multilogin o nombre de usuario y contraseña

Instalación

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

No se requiere playwright install — nos conectamos mediante CDP al navegador que Multilogin inicia.

Configuración

Copia el ejemplo y completa los valores:

cp .env.example .env
# Option A: automation token (recommended for servers)
MULTILOGIN_AUTOMATION_TOKEN=your_token

# Option B: username + password
# MULTILOGIN_USERNAME=you@example.com
# MULTILOGIN_PASSWORD=your_password

# Optional overrides
# MULTILOGIN_API_URL=https://api.multilogin.com
# MULTILOGIN_LAUNCHER_URL=https://launcher.mlx.yt:45001
# PORT=8000
# SESSION_MAX_TTL_SECONDS=900
# SESSION_IDLE_TIMEOUT_SECONDS=300

Ejecutar

python main.py
# or
uvicorn app.main:app --host 0.0.0.0 --port 8000 --reload
  • Documentación REST: http://localhost:8000/docs

  • Endpoint MCP: http://localhost:8000/mcp/ (POST; GET /mcp redirige aquí)

API REST

Método

Ruta

Propósito

GET

/api/v1/profiles/

Listar/buscar perfiles

POST

/api/v1/profiles/search

Buscar perfiles

GET

/api/v1/profiles/statuses

Perfiles en ejecución (lanzador)

POST

/api/v1/sessions/

Iniciar una sesión (arrancar perfil + conectar)

GET

/api/v1/sessions/

Listar sesiones activas

GET

/api/v1/sessions/{id}

Estado de la sesión/caducidad

DELETE

/api/v1/sessions/{id}

Close sesión + detener perfil

GET

/api/v1/browser/actions

Listar acciones disponibles del navegador

POST

/api/v1/browser/sessions/{id}/action

Ejecutar una acción en una sesión

Flujo de ejemplo

# 1. list profiles
curl http://localhost:8000/api/v1/profiles/

# 2. launch a session
curl -X POST http://localhost:8000/api/v1/sessions/ \
  -H 'content-type: application/json' \
  -d '{"profile_id":"<pid>","folder_id":"<fid>"}'

# 3. drive it
curl -X POST http://localhost:8000/api/v1/browser/sessions/<sid>/action \
  -H 'content-type: application/json' \
  -d '{"action":"navigate","params":{"url":"https://example.com"}}'

# 4. close (auto-closes after 15 min anyway)
curl -X DELETE http://localhost:8000/api/v1/sessions/<sid>

Herramientas MCP

Apunta cualquier cliente MCP con streaming HTTP a http://localhost:8000/mcp/.

Descubrimiento

  • list_profiles

  • search_profiles

Gestión de perfiles

  • create_profile — crear un perfil

  • create_profiles — crear cualquier número de perfiles en una sola llamada (sin límite artificial)

  • remove_profiles

Sesiones

  • launch_session

  • session_status

  • list_sessions

  • close_session

Navegador

  • browser_action — ejecutar cualquier acción por nombre

  • list_browser_actions — ver el catálogo completo

El catálogo completo de acciones incluye: navigate, click, type_text, press_key, get_text, get_html, get_url, screenshot, wait_for, evaluate_js, list_tabs, switch_tab, new_tab, close_tab, go_back, go_forward, reload, scroll, hover, select_option, set_checked, upload_file, cookies.

Configuración de ejemplo del cliente

{
  "mcpServers": {
    "multilogin-browser": {
      "url": "http://localhost:8000/mcp/"
    }
  }
}

Despliegue

Railway

  1. Haz push del repositorio.

  2. Configura las variables de entorno de .env en Railway.

  3. Establece el comando de inicio como python main.py (o uvicorn app.main:app --host 0.0.0.0 --port $PORT).

Nota sobre el lanzador

El lanzador de escritorio de Multilogin actualmente resuelve a 127.0.0.1. Para hosts remotos (por ejemplo, Railway), el lanzador debe ejecutarse en el mismo host o ser accesible mediante redirección de puertos, túnel o VPN.

Licencia

MIT

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables AI to control browsers via natural language for web automation, testing, and data scraping. Supports Chrome-based browsers and integrates with any MCP-compatible AI tool.
    17
    2
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to control a CamoFox anti-detect browser via MCP tools, supporting navigation, clicking, typing, and more through a REST API wrapper.
    4
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides a real browser that bypasses bot detection (Cloudflare, Turnstile) for AI agents, enabling navigation, clicking, typing, screenshots, and data collection through MCP tools.
    450 npm
    MIT