Skip to main content
Glama

mcp-chatgpt

Un servidor MCP (Protocolo de Contexto de Modelo) que permite a los asistentes de IA (como Google Antigravity, Claude Desktop, Cursor, VS Code Cline/Roo Code) hacer preguntas, chatear e interactuar con ChatGPT Web (https://chatgpt.com) directamente mediante automatización de navegador, perfiles de Chrome y una extensión de Chrome complementaria.


🌟 Características

  • 💬 Preguntar y chatear: Haz preguntas a ChatGPT Web sin problemas y recibe respuestas (texto formateado / markdown).

  • 🌐 Alternar búsqueda web: Activa la Búsqueda Web en vivo de ChatGPT (web_search: true) para navegación web en tiempo real y citas.

  • 🧠 Razonamiento y selección de modelo: Selecciona modelos (model: "o3-mini", "gpt-4o", "o1") y configura el esfuerzo de razonamiento (reasoning_effort: "high" | "medium" | "low").

  • 📎 Adjuntos de archivos e imágenes: Adjunta imágenes (image_paths) y documentos/código (file_paths) para análisis multimodal.

  • Salida de continuación automática: Hace clic automáticamente en "Continuar generando" / "สร้างต่อ" si las respuestas largas se truncan.

  • 💻 Extracción de código: Extrae y devuelve solo bloques de código con extract_code_only: true.

  • 👤 Selector de perfiles de Chrome: Detecta automáticamente todos los perfiles de Google Chrome en tu computadora (Predeterminado, Perfil 1, Trabajo, Personal, correos electrónicos) y te permite elegir con qué cuenta chatear.

  • 🧩 Extensión de Chrome complementaria: Incluye una extensión Manifest V3 en extension/ que se puede cargar en cualquier perfil de Chrome para chatear en tiempo real con pestañas de ChatGPT sin problemas de bloqueo de perfil.

  • 🔄 Gestión de conversaciones: Inicia chats nuevos o continúa hilos existentes usando ID de conversación / URL.

  • 💾 Sesión persistente: Mantiene el perfil del navegador y las cookies de inicio de sesión guardadas localmente, para que solo inicies sesión una vez.

  • 🖥️ Modos con ventana y sin ventana: Ejecuta en segundo plano silenciosamente (headless) o abre una ventana visible (--login / --headed) para autenticación inicial o resolución de captchas.

  • 🔌 Soporte de CDP de Chrome: Conéctate a una instancia de Google Chrome ya en ejecución mediante --remote-debugging-port.

  • 🧰 Herramientas de espacio de trabajo: Busca archivos, ejecuta compilaciones/pruebas y edita código con herramientas shell_command multiplataforma y apply_patch restringida a la raíz.

  • 🌐 Túnel MCP remoto: Punto final HTTP Streamable opcional con autenticación Bearer para Cloudflare Tunnel/ngrok u otro túnel HTTPS.


Related MCP server: agentify-desktop

🛠️ Herramientas MCP proporcionadas

Herramienta

Parámetros

Descripción

shell_command

command (cadena, obligatorio)workdir (cadena, opcional)shell (auto|powershell|bash, opcional)timeout_ms (número, opcional)

Ejecuta comandos con un directorio de trabajo bajo la raíz configurada. Selecciona automáticamente PowerShell en Windows y Bash en Linux/macOS.

apply_patch

patch (cadena, obligatorio)

Agrega, actualiza, elimina o mueve archivos bajo la raíz de shell configurada usando parches estructurados.

chatgpt_ask

message (cadena, obligatorio)web_search (booleano, opcional)model (cadena, opcional)reasoning_effort ("low"|"medium"|"high", opcional)image_paths (cadena[], opcional)file_paths (cadena[], opcional)extract_code_only (booleano, opcional)auto_continue (booleano, opcional)refresh_page (booleano, opcional)profile (cadena, opcional)new_chat (booleano, opcional)conversation_id (cadena, opcional)timeout_ms (número, opcional)

Envía un mensaje/pregunta a ChatGPT Web con controles avanzados y devuelve la respuesta del asistente.

chatgpt_reload

Ninguno

Recarga y actualiza la página actual de ChatGPT Web para recuperarse de estados bloqueados o fallos de conexión.

chatgpt_list_models

Ninguno

Lista todos los modelos de IA disponibles (GPT-5.6 Sol, GPT-5.5, o3, GPT-4o, o1) y las opciones de esfuerzo de razonamiento para esta cuenta.

chatgpt_list_conversations

limit (número, opcional)

Lista los temas e ID de conversaciones recientes directamente desde la barra lateral de ChatGPT para buscar o reanudar chats.

chatgpt_list_profiles

Ninguno

Lista todos los perfiles de Google Chrome detectados en esta computadora con ID de perfil, nombre y correo electrónico.

chatgpt_select_profile

profile (cadena, obligatorio)

Selecciona y cambia el perfil de Chrome activo (por ID como Profile 1, nombre o correo electrónico).

chatgpt_new_chat

Ninguno

Inicia una nueva sesión de chat en ChatGPT Web.

chatgpt_get_status

Ninguno

Obtiene el estado del navegador, el perfil activo, el estado del puente, la URL actual y el modelo activo.

chatgpt_login

profile (cadena, opcional)

Abre ChatGPT Web en una ventana de navegador visible para iniciar sesión.


🚀 Inicio rápido

[!ADVERTENCIA] shell_command puede ejecutar comandos arbitrarios con los mismos permisos del sistema operativo que el servidor MCP. --shell-root limita su directorio de trabajo inicial seleccionable, pero no es un sandbox del sistema operativo. Ejecuta el servidor como un usuario restringido o en un contenedor cuando conectes clientes no confiables. apply_patch sí garantiza que todas las rutas modificadas permanezcan bajo --shell-root.

Túnel MCP remoto

El stdio local sigue siendo el predeterminado. Para exponer un punto final MCP compatible con remoto, inicia el modo HTTP con un token:

mcp-chatgpt --http --http-token "change-this-token"

El punto final es http://127.0.0.1:8787/mcp. Coloca un túnel delante de él, por ejemplo:

cloudflared tunnel --url http://127.0.0.1:8787

Configura el cliente MCP remoto con la URL pública del túnel que termine en /mcp y el encabezado Authorization: Bearer change-this-token. /healthz se puede usar para una verificación de salud del túnel. Si este proceso o el túnel se detienen, las solicitudes MCP remotas no estarán disponibles.

1. Instalar y compilar

# Clone the repository
git clone https://github.com/JonusNattapong/mcp-chatgpt.git
cd mcp-chatgpt

# Install dependencies and Chromium
npm install
npx playwright install chromium

# Build TypeScript
npm run build

# Install the MCP command globally
npm install -g .

Después de la instalación, verifícalo con:

mcp-chatgpt --help

El paquete ejecuta npm run build automáticamente durante la instalación, por lo que el comando global siempre usa el código fuente TypeScript actual cuando se instala desde un checkout local.


👤 Uso de perfiles de Chrome (2 opciones)

Opción 1: Detección automática de perfil de Chrome (Directo / Headless)

Puedes seleccionar cualquier perfil de Chrome en tu sistema por su nombre de carpeta (p. ej. Default, Profile 1), nombre para mostrar o correo electrónico:

# List all Chrome profiles in your system
node -e "import('./dist/profile-manager.js').then(m => console.table(m.ProfileManager.listProfiles()))"

# Login with a specific profile
node dist/index.js --login --profile "Profile 1"

¡O pasa el parámetro profile directamente en la herramienta chatgpt_ask!


Opción 2: Extensión complementaria de Chrome (Recomendada para Chrome activo)

Si ya usas Google Chrome a diario con tu cuenta de ChatGPT iniciada, instala la extensión complementaria:

  1. Abre Google Chrome con el perfil que desees.

  2. Ve a chrome://extensions.

  3. Activa el modo de desarrollador (arriba a la derecha).

  4. Haz clic en Cargar descomprimida y selecciona la carpeta d:\Projects\Github\mcp-chatgpt\extension.

  5. Haz clic en el icono de la extensión en la barra de herramientas, establece tu etiqueta de perfil (p. ej. "Cuenta de trabajo") y haz clic en Guardar y conectar.

  6. ¡Cuando mcp-chatgpt se ejecute, enrutará las indicaciones directamente a través de tu pestaña de Chrome!


⚙️ Configuración para clientes MCP

Puedes conectar mcp-chatgpt a cualquier cliente de IA que admita el Model Context Protocol (MCP):

1. Antigravity IDE / Gemini CLI

Ubicación del archivo: ~/.gemini/config/mcp_config.json (Windows: C:\Users\<User>\.gemini\config\mcp_config.json)

{
  "mcpServers": {
    "chatgpt": {
      "command": "node",
      "args": [
        "d:/Projects/Github/mcp-chatgpt/dist/index.js"
      ]
    }
  }
}

2. Claude Desktop

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "chatgpt": {
      "command": "node",
      "args": [
        "d:/Projects/Github/mcp-chatgpt/dist/index.js"
      ]
    }
  }
}

3. Cursor IDE

Añádelo al .cursor/mcp.json de tu proyecto o en Configuración de Cursor > Funciones > MCP:

{
  "mcpServers": {
    "chatgpt": {
      "command": "node",
      "args": [
        "d:/Projects/Github/mcp-chatgpt/dist/index.js"
      ]
    }
  }
}

4. VS Code (Cline / Roo Code / Roo Clinic)

Ubicación del archivo:

  • Cline: %APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json

  • Roo Code: %APPDATA%\Code\User\globalStorage\rooveterinaryinc.roo-cline\settings\cline_mcp_settings.json

{
  "mcpServers": {
    "chatgpt": {
      "command": "node",
      "args": [
        "d:/Projects/Github/mcp-chatgpt/dist/index.js"
      ],
      "disabled": false,
      "autoApprove": []
    }
  }
}

5. Windsurf Editor (Codeium)

Ubicación del archivo: ~/.codeium/windsurf/mcp_config.json

{
  "mcpServers": {
    "chatgpt": {
      "command": "node",
      "args": [
        "d:/Projects/Github/mcp-chatgpt/dist/index.js"
      ]
    }
  }
}

6. Zed Editor

Añádelo a ~/.config/zed/settings.json:

{
  "context_servers": {
    "chatgpt": {
      "command": {
        "path": "node",
        "args": ["d:/Projects/Github/mcp-chatgpt/dist/index.js"]
      }
    }
  }
}

7. LibreChat (librechat.yaml)

Añádelo a librechat.yaml:

mcpServers:
  chatgpt:
    type: stdio
    command: node
    args:
      - d:/Projects/Github/mcp-chatgpt/dist/index.js

8. Conexión remota mediante Cloudflare Tunnel (URL remota / SSE / mcp-remote)

Si tu navegador de ChatGPT o servidor puente se ejecuta en un ordenador doméstico o VPS, y quieres que clientes de IA en otras máquinas/portátiles se conecten a él de forma segura a través de internet mediante Cloudflare Tunnel:

Paso A: Exponer el servidor puente en la máquina anfitriona

# Start Cloudflare Quick Tunnel (Free, no account required)
cloudflared tunnel --url http://127.0.0.1:18999

Esto generará una URL HTTPS pública, por ejemplo: https://alpha-bravo-charlie.trycloudflare.com


Paso B: Configurar el cliente en máquinas remotas

1. Antigravity / Gemini CLI (SSE remoto / URL)

Añádelo a ~/.gemini/config/mcp_config.json:

{
  "mcpServers": {
    "chatgpt-remote": {
      "serverUrl": "https://alpha-bravo-charlie.trycloudflare.com/sse"
    }
  }
}
2. Cursor IDE (SSE remoto)

Añádelo a .cursor/mcp.json o a la Configuración de Cursor:

{
  "mcpServers": {
    "chatgpt-remote": {
      "url": "https://alpha-bravo-charlie.trycloudflare.com/sse"
    }
  }
}
3. VS Code Cline / Roo Code (SSE remoto)

Añádelo a cline_mcp_settings.json:

{
  "mcpServers": {
    "chatgpt-remote": {
      "url": "https://alpha-bravo-charlie.trycloudflare.com/sse",
      "type": "sse",
      "disabled": false,
      "autoApprove": []
    }
  }
}
4. Claude Desktop / Cualquier cliente stdio (mediante mcp-remote)

Para clientes que solo aceptan command (stdio), usa mcp-remote para puentear la URL del túnel de Cloudflare:

{
  "mcpServers": {
    "chatgpt-remote": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://alpha-bravo-charlie.trycloudflare.com/sse"
      ]
    }
  }
}
5. LibreChat (librechat.yaml)
mcpServers:
  chatgpt-remote:
    type: sse
    url: https://alpha-bravo-charlie.trycloudflare.com/sse
6. API REST HTTP directa (cURL / Python / Node.js)

También puedes interactuar directamente con los endpoints del puente a través de Cloudflare:

# Query status
curl -s https://alpha-bravo-charlie.trycloudflare.com/status

# Ask a question
curl -X POST https://alpha-bravo-charlie.trycloudflare.com/ask \
  -H "Content-Type: application/json" \
  -d '{"message": "Hello from Cloudflare Tunnel!"}'

📖 Opciones de CLI

Usage: mcp-chatgpt [options]

Options:
  --headed                 Run browser in headed (visible) mode (default: false)
  --login                  Open browser in interactive mode to log in to ChatGPT
  --profile <name_or_id>   Select specific Chrome Profile (e.g. "Default", "Profile 1", or Name/Email)
  --chrome                 Use installed Google Chrome browser (default: true)
  --no-chrome              Use Playwright bundled Chromium instead of Google Chrome
  --user-data-dir <path>   Custom browser profile directory
  --cdp <endpoint>         Connect to an existing Chrome browser via CDP endpoint
  --bridge-port <port>     Port for Chrome Extension bridge WebSocket (default: "18999")
  --bridge-only            Run only the Chrome Extension WebSocket bridge server
  --shell-root <path>      Restrict shell and patch tools to this directory (default: current directory)
  --shell-max-timeout <ms> Maximum shell command timeout in milliseconds (default: "300000")
  --http                   Expose an MCP Streamable HTTP endpoint for a tunnel/remote client
  --http-host <host>       HTTP bind host (default: "127.0.0.1")
  --http-port <port>       HTTP port for the MCP endpoint (default: "8787")
  --http-token <token>     Bearer token required by remote MCP clients (or MCP_HTTP_TOKEN)
  --timeout <ms>           Default timeout in milliseconds (default: "120000")
  -h, --help               Display help for command

🌟 Demostración en vivo de memoria interactiva y retención de contexto

Lo siguiente es una sesión interactiva real de múltiples turnos, sin editar, ejecutada en vivo mediante mcp-chatgpt:

Turno 1: Estableciendo contexto en una sesión nueva (new_chat: true)

Solicitud:

{
  "message": "สวัสดีครับ ผมชื่อ โจ๊กเกอร์ เป็น Software Architect ชอบเขียน Go และ TypeScript กำลังพัฒนาโปรเจกต์ชื่อ MCP-ChatGPT ฝากจำข้อมูลนี้ไว้หน่อยนะครับ ตอบสั้นๆ 1 ประโยคยืนยัน",
  "new_chat": true
}

Respuesta de ChatGPT:

"Recordado: te llamas Joker, eres arquitecto de software, te gustan Go y TypeScript, y estás desarrollando el proyecto MCP-ChatGPT."

URL: https://chatgpt.com/c/6a86843c-8f30-83ec-b064-d27f7f832244


Turno 2: Recuerdo de memoria de seguimiento (conversation_id)

Solicitud:

{
  "message": "ไหนลองทบทวนดูซิว่า ผมชื่ออะไร ชอบเขียนภาษาอะไร และกำลังทำโปรเจกต์ชื่ออะไรอยู่?",
  "conversation_id": "6a86843c-8f30-83ec-b064-d27f7f832244"
}

Respuesta de ChatGPT (recordado en 6 s):

"Te llamas Joker, te gusta escribir Go y TypeScript, y estás desarrollando un proyecto llamado MCP-ChatGPT. 🫡"


🤖 Instrucción de integración y prompt de sistema para el asistente de IA

Copia y pega la siguiente instrucción directamente en tu asistente de IA (Reglas de Cursor, Prompt de sistema de Claude, Instrucciones personalizadas de Antigravity, Cline, Roo Code) para que tu IA sepa automáticamente cuándo y cómo llamar a mcp-chatgpt:

# 🛠️ Instruction: Setup and Integrate `mcp-chatgpt` MCP Server

You are integrated with the `mcp-chatgpt` MCP server, granting you direct access to ChatGPT Web capabilities (o3-mini, o1, GPT-4o, live Web Search, DALL-E, and multimodal file analysis).

### 🎯 When to Automatically Use `chatgpt_ask`:

1. **Deep Reasoning & Hard Coding Tasks**:
   - For complex architecture designs, difficult debugging, or advanced algorithms, call `chatgpt_ask` with:
     `{ "model": "o3-mini", "reasoning_effort": "high", "extract_code_only": true }`
2. **Live Web Information & Current News**:
   - When the user asks for up-to-date news, today's market data, or the latest documentation of newly updated packages, call:
     `{ "web_search": true }`
3. **Image Generation (DALL-E 3)**:
   - When the user requests an image, logo, or icon design, request it via `chatgpt_ask` and present the returned `imageUrls` directly to the user.
4. **Heavy Document & File Analysis**:
   - When analyzing CSV, Excel spreadsheets, PDFs, or large source code files, attach them via `file_paths` or `image_paths`.
5. **Continuous Conversations**:
   - Always track and pass `conversation_id` to continue in the same thread, or pass `new_chat: true` when starting an unrelated topic.
6. **Finding Past Chats**:
   - Call `chatgpt_list_conversations` to search for existing topic IDs before resuming a specific past conversation.

📄 Licencia

MIT

Install Server
F
license - not found
A
quality
B
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 Servers

View all related MCP servers

Related MCP Connectors

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

  • MCP server for AI dialogue using various LLM models via AceDataCloud

  • MCP server for Gainium — manage trading bots, deals, and balances via AI assistants

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/JonusNattapong/mcp-chatgpt'

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