ChatGPT Interactive Components Examples
Provides production-ready examples of MCP servers that demonstrate building rich, interactive UI components for ChatGPT, including authentication flows, product search with carousels, shopping cart checkout, and membership signups with state management.
README
ChatGPT MCP Server Examples
Build interactive, branded components for ChatGPT using the Model Context Protocol (MCP)
This repository contains complete, production-ready examples of MCP servers that demonstrate how to create rich, interactive experiences within ChatGPT. Each example showcases different UI patterns, state management techniques, and integration strategies.
šÆ What You'll Learn
- How to build MCP servers that serve interactive widgets to ChatGPT
- State management across user sessions
- Dark/light mode support
- Multi-step UI flows with transitions
- API integration and data presentation
- Deployment strategies
š Live MCP Server URLs
You can connect to these live servers directly in ChatGPT:
| MCP Server | URL | Description |
|---|---|---|
| Authentication | https://chatgpt-components-0d9232341440.herokuapp.com/mcp |
Session-based authentication with 3-screen flow |
| Product Search | https://chatgpt-components-0d9232341440.herokuapp.com/mcp2 |
Interactive product carousel with Agentforce recommendations |
| Checkout | https://chatgpt-components-0d9232341440.herokuapp.com/mcp3 |
Shopping cart and checkout flow |
| Membership | https://chatgpt-components-0d9232341440.herokuapp.com/mcp4 |
Circle 360 membership signup with tier selection |
How to Connect
- Open ChatGPT ā Settings ā Connectors
- Click "Add Connector"
- Paste one of the URLs above
- Start chatting! Try: "Log me into my Target account" or "Search for fitness trackers"
š What's Included
4 Complete MCP Server Examples
1. Authentication Server (/mcp)
- 3-screen authentication flow (login ā verification ā success)
- Session management with unique session IDs
- State persistence across tool calls
- Demo credentials for testing
Example prompt: "I need to sign in to Target"
2. Product Search Server (/mcp2)
- Product carousel widget with images, prices, ratings
- Agentforce personalized recommendations
- Integration with Unwrangle API
- Detail view for individual products
- Dark/light mode support
Example prompt: "Search Target for fitness trackers"
3. Checkout Server (/mcp3)
- Add-to-cart confirmation widget
- Complete checkout flow with pre-filled payment/shipping
- Order summary and success animations
- Single-item cart enforcement
Example prompt: "Add the Fitbit to my cart and checkout"
4. Membership Server (/mcp4)
- Circle 360 membership signup
- 3-tier selection UI
- Dynamic order summary
- Processing screen with success confetti
- Demo reset endpoint for testing
Example prompt: "Sign me up for Circle 360"
šļø Repository Structure
ChatGPT Components/
āāā server.js # Main Node.js MCP server (all 4 servers)
āāā widgets/ # Interactive HTML components
ā āāā target-auth.html # Authentication widget
ā āāā product-carousel.html # Product search widget
ā āāā add-to-cart.html # Add to cart widget
ā āāā checkout.html # Checkout widget
ā āāā circle-signup.html # Membership signup widget
āāā public/ # Static pages
ā āāā auth.html # External auth page (Custom GPT Actions)
ā āāā privacy.html # Privacy policy
āāā docs/ # Documentation
ā āāā BUILDING_MCP_SERVERS.md # Tutorial: Build your own
ā āāā ARCHITECTURE.md # System design overview
ā āāā examples/ # Detailed example docs
ā āāā authentication.md
ā āāā product-search.md
ā āāā checkout.md
ā āāā membership.md
āāā package.json # Dependencies
āāā Procfile # Heroku deployment config
āāā README.md # You are here
š Getting Started
Prerequisites
- Node.js 20.x or higher
- npm 10.x or higher
- (Optional) Heroku CLI for deployment
Local Development
- Clone the repository
git clone <your-repo-url>
cd ChatGPT-Components
- Install dependencies
npm install
- Set environment variables
export UNWRANGLE_API_KEY=your_api_key_here # For product search
- Start the server
npm start
- Test in ChatGPT
- Add connector:
http://localhost:8000/mcp(or/mcp2,/mcp3,/mcp4) - Start chatting!
- Add connector:
Deploy to Heroku
heroku create your-app-name
heroku config:set UNWRANGLE_API_KEY=your_api_key_here
git push heroku main
Your MCP servers will be available at:
https://your-app-name.herokuapp.com/mcphttps://your-app-name.herokuapp.com/mcp2https://your-app-name.herokuapp.com/mcp3https://your-app-name.herokuapp.com/mcp4
š Learn More
- Building MCP Servers Tutorial - Step-by-step guide to creating your own MCP server
- Architecture Overview - How the system works under the hood
- Example Documentation - Deep dives into each example server
šØ Key Features Demonstrated
UI/UX Patterns
- ā Multi-screen flows with smooth transitions
- ā Loading states and progress indicators
- ā Success animations (checkmarks, confetti)
- ā Dark/light mode support (respects ChatGPT theme)
- ā Responsive design
- ā Form validation and error handling
Technical Patterns
- ā Session management with unique IDs
- ā State persistence across tool calls
- ā SSE (Server-Sent Events) for real-time communication
- ā Multiple MCP servers on one Node.js app
- ā External API integration
- ā Widget-to-server communication
- ā
window.openaiAPI usage
Business Logic
- ā Authentication flows
- ā Product recommendations
- ā Shopping cart management
- ā Payment/checkout flows
- ā Membership signups
š§ Customization
Each widget is self-contained in widgets/ and can be customized:
- Styling: Modify CSS within each HTML file
- Branding: Change colors, logos, and text
- Flow: Add/remove steps in multi-screen flows
- Behavior: Edit JavaScript event handlers
Server logic is in server.js:
- Tools: Add new tool definitions in each
createMcpXServerfunction - Sessions: Customize state management in
authSessions,cartStorage, etc. - APIs: Integrate your own backend services
š¤ Contributing
This repository is designed to be:
- Educational: Learn by example
- Modular: Copy what you need
- Production-ready: Use as-is or customize
Feel free to fork, modify, and build upon these examples!
š License
MIT License - feel free to use this code in your own projects!
š Support
- Issues: Open a GitHub issue
- Questions: Check the documentation
- Examples: See detailed guides in docs/examples/
š What's Next?
After exploring these examples, try:
- Building your own MCP server from scratch
- Combining multiple tools in creative ways
- Integrating with your own APIs and services
- Deploying to production
Check out BUILDING_MCP_SERVERS.md to get started!
Built with ā¤ļø using the Model Context Protocol
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
E2B
Using MCP to run code via e2b.