ChatGPT Developer Mode Setup
Connect Universal Crypto MCP to ChatGPT using Developer Mode.
Prerequisites
- ChatGPT Pro, Plus, Business, Enterprise, or Education account
- Developer Mode enabled
- Universal Crypto MCP server running (local or deployed)
Quick Start
1. Start the HTTP Server
The server will start on http://localhost:3001 by default.
2. Enable Developer Mode in ChatGPT
- Go to ChatGPT Settings
- Click Advanced settings
- Enable Developer mode
3. Create an App
- In ChatGPT Settings → Apps, click Create app
- Enter your MCP server URL:
- Local:
http://localhost:3001/mcp - Deployed:
https://your-server.com/mcp - Select No Authentication (or configure OAuth if needed)
- Click Create
4. Use in Conversations
- Start a new conversation
- Click the Plus menu in the composer
- Select Developer mode
- Choose your Universal Crypto MCP app
- Start chatting!
Server Endpoints
| Endpoint | Method | Description |
|---|---|---|
/mcp |
POST | Main MCP protocol endpoint |
/mcp |
GET | SSE stream for notifications |
/mcp |
DELETE | Terminate session |
/health |
GET | Health check |
/ |
GET | Server info |
Example Prompts
Get Crypto News
Check Token Balance
Using Universal Crypto MCP's "get_token_balance" tool, check the USDT
balance for 0x... on Ethereum mainnet.
Analyze Token Security
Get Gas Prices
Swap Quote
Tool Categories
Read-Only Tools (No Confirmation)
These tools are marked with readOnlyHint: true and won't require confirmation:
get_balance- Check wallet balanceget_token_info- Get token detailsget_token_balance- Check token balanceresolve_ens- Resolve ENS namesget_gas_price- Current gas pricesget_crypto_news- Fetch newsget_swap_quote- DEX price quotesdetect_honeypot- Security analysisget_block- Block information
Write Tools (Requires Confirmation)
These tools perform transactions and require confirmation:
transfer_tokens- Send tokensswap_tokens- Execute swapsapprove_token- Token approvalsdeploy_contract- Deploy contractsstake_eth_lido- Stake ETH
Deployment Options
Option 1: Local Development
Use the ngrok URL in ChatGPT: https://xxxx.ngrok.io/mcp
Option 2: Deploy to Cloud
Vercel
Railway
Docker
FROM oven/bun:1
WORKDIR /app
COPY package.json bun.lockb ./
RUN bun install --frozen-lockfile
COPY . .
RUN bun run build
EXPOSE 3001
CMD ["bun", "start:http"]
Environment Variables
| Variable | Description | Required |
|---|---|---|
PORT |
Server port (default: 3001) | No |
PRIVATE_KEY |
Wallet private key | For transactions |
LOG_LEVEL |
DEBUG, INFO, WARN, ERROR | No |
Troubleshooting
"No valid session found"
The session expired or wasn't initialized. ChatGPT will automatically retry.
Tool not found
- Refresh the app in ChatGPT Settings → Apps → Your App → Refresh
- Check the server is running:
curl http://localhost:3001/health
Connection refused
- Ensure the server is running:
bun dev:http - Check firewall settings
- For local development, use ngrok or similar tunnel
CORS errors
The server includes CORS headers by default. If deploying behind a proxy, ensure CORS headers are preserved.
Security Considerations
⚠️ Important Security Notes:
- Private Keys: Never expose private keys in public deployments
- Write Actions: Always review transaction details before confirming
- Public Deployment: Consider adding authentication for production
- Rate Limiting: Add rate limiting for public endpoints
Recommended: Read-Only Mode
For public deployments, consider running in read-only mode by not setting PRIVATE_KEY:
This disables all write operations (transfers, swaps, etc.).
Protocol Details
MCP Session Flow
1. ChatGPT → POST /mcp (initialize)
2. Server → Returns session ID
3. ChatGPT → POST /mcp (tool calls)
4. Server → Returns tool results
5. (Optional) GET /mcp for SSE notifications
6. DELETE /mcp to end session
Supported MCP Features
- ✅ Tools (read and write)
- ✅ Prompts
- ✅ Resources
- ✅ Session management
- ✅ Streamable HTTP transport
- ✅ SSE notifications
Credits
Built by nich (github.com/nirholas)