Response ChatGPT App
Runs the StateSet Response workspace inside ChatGPT — a React widget rendered by ChatGPT Apps, backed by a Node MCP server that exposes thestateset-response-chat tool.
This guide builds the widget, runs the server, and connects it.
ChatGPT reaches the MCP server over SSE, so the endpoint has to be publicly resolvable — a
localhost URL won’t work. Step 3 covers exposing it.
1) Build the widget assets
stateset-response.html/js/css inside assets/.
2) Run the MCP server
3) Expose the MCP server
Use a tunnel to expose the SSE endpoint:<public-url>/mcp.
Confirm the server is actually serving MCP before wiring ChatGPT to it — a
connector that fails here gives no useful error:
event: line means the server is ready. JSON or a 404 means the MCP route
is not mounted — usually the server is running but on a different path or port
than the one you exposed.
4) Add the connector in ChatGPT
- Open ChatGPT → Settings → Developer Mode → Connectors.
- Click Add connector, choose MCP via SSE.
- Name it
Stateset Response. - Paste
<public-url>/mcpas the endpoint. - Save and confirm the connector is online.
5) Test the app
Troubleshooting
- Re-run
pnpm run buildif assets are missing. - Verify the tunnel is reachable and SSE is stable.
- Confirm API credentials when using live data.
Related Documentation
- App README
Next steps
Deploy the ChatGPT app
Hosting this on managed Kubernetes instead of locally.
MCP servers
The wider set of servers StateSet publishes.
Agent Gate
Requiring a proof before a tool call runs.
ResponseCX platform
The platform the widget talks to.