Chatgpt Webui
FreeNot checkedMCP server that drives chatgpt.com via web UI automation using a session token, enabling long-running tasks, deep research, and image generation.
About
MCP server that drives chatgpt.com via web UI automation using a session token, enabling long-running tasks, deep research, and image generation.
README
mcp server for querying chatgpt (chatgpt.com) via webui session token (the image above was generated with this!)
quick start
install from npm:
npm i -g chatgpt-webui-mcp
manual run:
CHATGPT_SESSION_TOKEN="your_token_here" chatgpt-webui-mcp
from source:
npm install
npm run build
CHATGPT_SESSION_TOKEN="your_token_here" node dist/index.js
important: this uses chatgpt's internal webui api with a session cookie. for personal/local tinkering only - not affiliated with openai.
overview
chatgpt-webui-mcp is a standalone MCP server that drives chatgpt.com via camofox (UI automation).
it is built for long-running tasks (gpt-5.2 pro runs that take 1h+), deep research, and image generation mode.
getting your session token
- open https://chatgpt.com and log in
- open devtools
- application -> cookies ->
https://chatgpt.com - copy the value of
__Secure-next-auth.session-token
configuration
because this server uses stdio or sse, you configure it as a local command (or remote url) and pass the token via env.
mcp client config (claude desktop, opencode, etc)
{
"mcpServers": {
"chatgpt-webui": {
"command": "node",
"args": ["/absolute/path/to/chatgpt-webui-mcp/dist/index.js"],
"timeout": 7200000,
"env": {
"CHATGPT_SESSION_TOKEN_FILE": "/path/to/session-token.txt",
"CHATGPT_BROWSER_BASE_URL": "http://127.0.0.1:9377",
"CHATGPT_WAIT_TIMEOUT_MS": "7200000"
}
}
}
}
legacy CHATGPT_CAMOFOX_* env vars are still supported for compatibility.
CHATGPT_TRANSPORT=httpcloak is intentionally unsupported (use camofox).
when model/thinking are omitted, requests default to gpt-5-2 (auto), not pro.
opencode workflow (the natural language style)
if you want to type commands like:
with chatgpt webui on gpt 5.2 pro extended thinking: <prompt>do deepresearch with chatgpt webui on <topic>
use this tool:
| tool | what it does |
|---|---|
chatgpt_webui_command |
parses your sentence into the right call and runs it |
example:
{
"name": "chatgpt_webui_command",
"arguments": {
"command": "with chatgpt webui on gpt 5.2 pro extended thinking: write a 1-page memo about X",
"mode": "auto"
}
}
long runs (recommended)
use the unified tools:
| tool | description |
|---|---|
chatgpt_webui_prompt |
main tool. mode=auto chooses wait vs background |
chatgpt_webui_run |
check/wait for background runs (run_id) |
why: deep research and gpt-5.2 pro can take a long time and may exceed a single client timeout. mode=auto returns a run_id for long jobs.
image generation
set create_image=true to switch chatgpt into image generation mode before sending the prompt.
notes:
image_urlsis best-effort (derived from page links + visited urls) and may be empty depending on how chatgpt renders images in the webui.- fallback screenshot output is returned in
image_data_url(notimage_urls) when enabled and size-capped. - enable fallback with
CHATGPT_IMAGE_SCREENSHOT_FALLBACK=1. - cap fallback size with
CHATGPT_IMAGE_SCREENSHOT_MAX_BYTES(default2097152, 2 MiB). - for reliable retrieval, you can also use the conversation_id and open the chatgpt UI.
self-test
# env
CHATGPT_SESSION_TOKEN="your_token_here" npm run self-test
# cli flag
npm run self-test -- --token "your_token_here"
# file
echo "your_token_here" > ~/.config/chatgpt-webui-mcp/session-token.txt
npm run self-test -- --token-file ~/.config/chatgpt-webui-mcp/session-token.txt
remote deployment over tailscale (optional)
if you want background runs to survive for a long time, run this server as an always-on SSE service.
- copy templates from this repo:
deploy/systemd/chatgpt-webui-mcp.env.exampledeploy/systemd/chatgpt-webui-mcp-sse.shdeploy/systemd/chatgpt-webui-mcp.service
- install and enable service (user service):
mkdir -p ~/.config ~/.config/systemd/user ~/.local/bin ~/.local/share/chatgpt-webui-mcp
cp deploy/systemd/chatgpt-webui-mcp.env.example ~/.config/chatgpt-webui-mcp.env
cp deploy/systemd/chatgpt-webui-mcp-sse.sh ~/.local/bin/chatgpt-webui-mcp-sse.sh
cp deploy/systemd/chatgpt-webui-mcp.service ~/.config/systemd/user/chatgpt-webui-mcp.service
chmod 600 ~/.config/chatgpt-webui-mcp.env
chmod 755 ~/.local/bin/chatgpt-webui-mcp-sse.sh
systemctl --user daemon-reload
systemctl --user enable --now chatgpt-webui-mcp.service
- point opencode (cloud host) to the endpoint:
{
"mcp": {
"chatgpt-webui": {
"type": "remote",
"url": "http://<tailscale-ip>:8791/sse",
"enabled": true,
"timeout": 7200000,
"oauth": false
}
}
}
tools
| tool | description |
|---|---|
chatgpt_webui_session |
validate token and return session payload |
chatgpt_webui_models |
list available models |
chatgpt_webui_command |
natural-language command wrapper |
chatgpt_webui_prompt |
unified prompt tool (wait/background) |
chatgpt_webui_run |
check/wait for background runs |
chatgpt_webui_ask |
direct wait-style prompt tool (legacy/simple) |
project structure
chatgpt-webui-mcp/
├── deploy/
│ └── systemd/
│ ├── chatgpt-webui-mcp.env.example
│ ├── chatgpt-webui-mcp-sse.sh
│ └── chatgpt-webui-mcp.service
├── src/
│ ├── index.ts # MCP server
│ └── chatgpt-webui-client.ts # WebUI automation client
├── package.json
├── tsconfig.json
├── .env.example
├── .gitignore
├── LICENSE
├── INSTALL.md
└── README.md
license
mit
author
Install Chatgpt Webui in Claude Desktop, Claude Code & Cursor
unyly install chatgpt-webui-mcpInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add chatgpt-webui-mcp -- npx -y chatgpt-webui-mcpFAQ
Is Chatgpt Webui MCP free?
Yes, Chatgpt Webui MCP is free — one-click install via Unyly at no cost.
Does Chatgpt Webui need an API key?
No, Chatgpt Webui runs without API keys or environment variables.
Is Chatgpt Webui hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Chatgpt Webui in Claude Desktop, Claude Code or Cursor?
Open Chatgpt Webui on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
LibreOffice Tools
Enables AI agents to read, write, and edit Office documents via LibreOffice with token-efficient design. Supports multiple formats including DOCX, XLSX, PPTX, a
by passerbyflutterdannote/figma-use
Full Figma control: create shapes, text, components, set styles, auto-layout, variables, export. 80+ tools.
by dannoteLogo.dev
Search and retrieve company logos by brand or domain. Customize size, format, and theme to match your design needs. Accelerate design, prototyping, and content
by NOVA-3951PIX4Dmatic
Enables GUI automation for controlling PIX4Dmatic on Windows through MCP. Supports launching, focusing, capturing screenshots, sending hotkeys, clicking UI elem
by jangjo123Compare Chatgpt Webui with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All design MCPs
