hub-mcp
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
hub-mcp
A remote MCP server that lets Claude agents use Hub Culture as the signed-in member: profile, people, friends, hubs, events, pavilions and messages; the Ven wallet, rates and purchases; and Zeke.
Members add it in Claude under Settings → Connectors → Add custom connector with the URL https://<your host>/mcp, then sign in with their HubID. Claude Code works too: claude mcp add --transport http hub-culture https://<your host>/mcp.
How sign-in works
Claude ──/authorize (PKCE)──▶ hub-mcp consent page ──▶ HubID /oauth/authorization
│ member signs in, approves
Claude ◀──code── hub-mcp /hubid/callback ◀──?access_token=<HubID JWT>
Claude ──/token──▶ hub-mcp access + refresh tokens (opaque)
Claude ──/mcp + Bearer──▶ hub-mcp ──Private-Key + member's JWT──▶ HubID / Zeke / paymentshub-mcp is its own OAuth 2.1 server. It provides what MCP clients expect: metadata, dynamic client registration, PKCE (S256), refresh-token rotation and revocation.
HubID still owns identity. Its sign-in flow is implicit-style and returns a JWT, so hub-mcp wraps it.
Clients never see the HubID JWT. It's stored encrypted (AES-256-GCM), and tokens are stored only as hashes.
The HubID JWT is refreshed as needed with
PUT /token. HubID allows refreshes for 14 days after a login, so members sign in again every 14 days.Only allow-listed redirect URIs can register. By default those are Claude's callbacks and loopback addresses (
ALLOWED_REDIRECT_URIS).There's a consent page before HubID. It names the client and lists what it will be able to do. HubID skips its own consent screen after the first approval.
Related MCP server: Basecamp MCP Server
Scopes and tools
A token only lists the tools its scopes allow. claude.ai asks for no specific scopes, so it gets DEFAULT_SCOPES (all of them, by default).
Scope | Tools |
|
|
|
|
|
|
|
|
|
|
* Only when PAYMENTS_URL is set. ** Only when ZEKE_URL is set.
Personal data is trimmed. Other members come back with only their public basics. HubID's user objects also carry emails, banking and profile fields, and those are dropped.
No admin access. The payments interchange is always called as role
buyer, and no admin or moderation endpoints are exposed.
Services it calls
Service | Repo | Auth |
HubID API ( | hub/HubID | Connector app's |
Ven rates ( | hub/Ven.vc-Core-Laravel | Public |
Payments interchange | hub-culture/payments-interchange | HMAC-signed as Hub does ( |
Zeke ( | hub-culture/zeke-ai-server | System bearer token; the member's JWT goes in |
Setup
The full go-live checklist, with owners and checks, is in DEPLOY.md.
Register a HubID app. In https://hubculture.com/admin/apps/, create an app for the connector titled "Claude" (HubID shows the title on its sign-in page). Put its id and keys in
HUBID_CLIENT_ID,HUBID_PUBLIC_KEYandHUBID_PRIVATE_KEY.Deploy behind HTTPS. Copy
.env.exampleto.envand fill it in. Run Redis, thendocker build -t hub-mcp . && docker run --env-file .env -p 8080:8080 hub-mcp.Connect. In Claude, add
https://<host>/mcpas a custom connector. An org owner can also add it for the whole organization.
Development
npm install
npm test # end-to-end: full OAuth flow and tool calls against fake HubID, payments and Zeke
npm run dev # needs a .env (or exported variables)
npx @modelcontextprotocol/inspector # point it at http://localhost:8080/mcpNot in this version
Pavilion admin, event moderation, health and ULTRA endpoints.
Mandala agent identities. Agents act as the member who signed in.
Webhooks.
A sandbox. HubID has no test environment yet (the Mandala v2 spec proposes
sandbox.id.hubculture.com), so every call is live.
This server cannot be deployed
Maintenance
Related MCP Connectors
OAuth 2.1 short-link tools for AI agents with scoped tokens, approvals, audit logs, and revocation.
Context and control for any AI. Agent identity, scoped access, and proof across tools.
- platform7nOAuthtech.p7n
Connect Claude to your Platform7n workspaces: chat, links, work and decks. One-click OAuth.
Connect AI agents to 1000+ apps with managed authentication and tool-calling.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables Claude to authenticate with GitHub OAuth and access tools for user information, calculations, and GitHub repositories.5MIT
- AlicenseNot gradedqualityDmaintenanceEnables Claude to interact with Basecamp API for project and to-do management via OAuth authentication.79 npmMIT
- AlicenseAqualityBmaintenanceEnables Claude, Cursor, or any MCP client to query your own recovery scores, sleep, strain cycles, workouts, profile, and body measurements through every WHOOP API v2 read endpoint. Tools return records exactly as WHOOP sends them, with paging and date-range filtering, and refresh tokens automatically after a one-time login.1112 npm1MIT
- AlicenseBqualityBmaintenanceEnables MCP clients such as Claude Desktop and Claude Code to give an agent its own verifiable identity, then ask and answer questions, publish and discuss library content, follow threads, exchange messages, and manage a public profile on a network reserved for AI agents. Exposes these capabilities as stdio tools, with content from other agents marked as data rather than instructions.4187 PyPIMIT