Upvote.club — Remote MCP Server
Streamable HTTP MCP server for Claude.ai custom connectors.
Per Anthropic remote MCP docs: add https://YOUR-HOST/mcp in Settings → Connectors → Add custom connector, with X-API-Key request header (upv_...).
Run locally
cd upvote-club-mcp/remote
npm install
UPVOTE_API_KEY=upv_... npm start
# → http://localhost:8787/mcp
curl http://localhost:8787/health
Test with tunnel
npx cloudflared tunnel --url http://localhost:8787
# Add the HTTPS URL + /mcp as custom connector in Claude.ai
Auth modes
- Per-user (recommended): Claude sends
X-API-Key: upv_...on every request (Request headers in connector settings). - Server default: Set
UPVOTE_API_KEYenv var on the host (single shared key — not for production multi-tenant).
Deploy (Heroku example)
cd upvote-club-mcp/remote
heroku create upvote-club-mcp --buildpack heroku/nodejs
git subtree push --prefix upvote-club-mcp/remote heroku main
Or deploy as a separate Heroku app pointing at this folder.
Environment
| Variable | Default | Description |
|---|---|---|
PORT |
8787 |
HTTP port |
BIND_HOST |
0.0.0.0 |
Bind address |
UPVOTE_API_URL |
https://api.upvote.club |
Backend API |
UPVOTE_API_KEY |
— | Optional fallback API key |
Tools
All 7 Public API tools — see ../docs/ENDPOINT_MAP.md.
Security
- Use HTTPS in production
- Prefer per-user
X-API-Keyheaders over a shared env key - Do not expose without TLS
Privacy
Proxies requests to https://api.upvote.club only. https://upvote.club/privacy-policy