- Step-by-step OAuth client registration - OpenAPI schema import instructions - Actions authentication config - Troubleshooting table - Tool availability status
120 lines
3.1 KiB
Markdown
120 lines
3.1 KiB
Markdown
# ChatGPT Custom GPT — Hermes MCP Setup Guide
|
|
|
|
**Server:** `https://hermes.squaremcp.com`
|
|
|
|
---
|
|
|
|
## What you'll build
|
|
|
|
A Custom GPT in ChatGPT that can:
|
|
- Send emails via your 7 accounts
|
|
- Search and edit your Obsidian vault notes
|
|
- Send WhatsApp messages (when credentialed)
|
|
- Post to LinkedIn
|
|
- Send Telegram messages
|
|
- Post to Discord servers
|
|
- Post to Instagram (when credentialed)
|
|
|
|
---
|
|
|
|
## Step 1: Register an OAuth client
|
|
|
|
Hermes MCP uses OAuth 2.0 for ChatGPT authentication.
|
|
|
|
Run this curl to register a ChatGPT client:
|
|
|
|
```bash
|
|
curl -X POST "https://hermes.squaremcp.com/oauth/register" \
|
|
-H "Content-Type: application/json" \
|
|
-d '{
|
|
"client_name": "ChatGPT Custom GPT",
|
|
"redirect_uris": ["https://chat.openai.com/aip/[YOUR_GPT_ID]/oauth/callback"]
|
|
}'
|
|
```
|
|
|
|
**Save the response:**
|
|
- `client_id`
|
|
- `client_secret`
|
|
|
|
---
|
|
|
|
## Step 2: Get the OpenAPI schema
|
|
|
|
Your server's OpenAPI spec is live at:
|
|
|
|
```
|
|
https://hermes.squaremcp.com/openapi.json
|
|
```
|
|
|
|
ChatGPT will import this to know which endpoints are available.
|
|
|
|
---
|
|
|
|
## Step 3: Create the Custom GPT
|
|
|
|
1. Go to [chatgpt.com](https://chatgpt.com) → **Explore GPTs** → **Create**
|
|
2. Configure:
|
|
- **Name:** `Hermes Assistant`
|
|
- **Description:** `Your personal AI assistant with access to email, notes, and social media`
|
|
|
|
### Actions setup
|
|
|
|
3. Click **Actions** → **Import from URL**
|
|
4. Paste: `https://hermes.squaremcp.com/openapi.json`
|
|
5. Click **Authentication** → **OAuth**
|
|
- **Client ID:** (from Step 1)
|
|
- **Client Secret:** (from Step 1)
|
|
- **Authorization URL:** `https://hermes.squaremcp.com/oauth/authorize`
|
|
- **Token URL:** `https://hermes.squaremcp.com/oauth/token`
|
|
- **Scope:** `email profile`
|
|
- **Token Exchange Method:** `Default (POST request)`
|
|
|
|
6. Click **Update** to save the OAuth config
|
|
|
|
### Privacy settings
|
|
|
|
7. Scroll to **Privacy** → toggle off if you don't want OpenAI training on your data
|
|
|
|
---
|
|
|
|
## Step 4: Test the GPT
|
|
|
|
Ask your GPT:
|
|
- "Send an email to team@fetcherpay.com saying the meeting is at 2pm"
|
|
- "Search my Obsidian notes for 'funding strategy'"
|
|
- "Post 'Hello world' to my LinkedIn"
|
|
- "Send a Telegram message to Garfield"
|
|
|
|
---
|
|
|
|
## Troubleshooting
|
|
|
|
| Issue | Fix |
|
|
|-------|-----|
|
|
| "Authentication failed" | Re-register the OAuth client with the correct redirect URI |
|
|
| "Tool not found" | Check that the endpoint is listed in `/openapi.json` |
|
|
| "Unauthorized" | The GPT's token expired — re-authenticate in ChatGPT settings |
|
|
|
|
---
|
|
|
|
## Current tool availability
|
|
|
|
| Tool | Status |
|
|
|------|--------|
|
|
| Email (7 accounts) | ✅ Ready |
|
|
| Obsidian vault | ✅ Ready |
|
|
| LinkedIn profile/posts | ✅ Ready (token deployed) |
|
|
| Telegram messaging | ✅ Ready (token deployed) |
|
|
| Discord messaging | ⚠️ Needs bot token |
|
|
| Instagram posts | ⚠️ Needs Business Account setup |
|
|
| WhatsApp messaging | ⚠️ Needs Cloud API number |
|
|
|
|
---
|
|
|
|
## Next: Discord bot token
|
|
|
|
If you want Discord working in ChatGPT too, create a bot:
|
|
1. [discord.com/developers/applications](https://discord.com/developers/applications) → New Application
|
|
2. Bot tab → Copy Token
|
|
3. Deploy: `kubectl set env deployment/hermes-mcp -n fetcherpay DISCORD_DEFAULT_BOT_TOKEN="your-token"`
|