Happenings Connect
social.happeningsPublished by happenings.socialOfficial publisherv1.2.0Updated Oct 24, 2026
Run your Happenings pages from your AI through the page CLI: events, tickets, sales and members.
The publisher's own server: Happenings Page CLI
Overview
A remote MCP server that lets an AI run an organiser's Happenings pages — events, tickets, sales and members — within the user's page role.
- What you can do
- Read page information and get help with the Happenings page CLI through read-only tools (hap_help, hap_read). Run page commands through hap_run, covering events, tickets, sales and members. Sign-in selects which pages the assistant can reach, and every command stays limited by the person's role on each page.
- When to use it
- For organisers who already run Happenings pages and want an AI assistant to look up or act on events, tickets, sales and members without leaving the chat. Useful for routine page work such as checking this week's activity, sales or members.
- Requirements
- A remote endpoint at the Happenings Connect URL, added by URL only. OAuth 2.1 with PKCE sign-in is required; no local runtime, environment variables or headers are needed. A Happenings organiser account with pages to connect.
Installation
In SourceWeft
- Open Happenings Connect in the dashboard and add it to a workspace.
- Connect the required credentials. They are stored privately and never shown on public pages.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/social.happenings%2Fconnect/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config. The client completes OAuth sign-in on first connect.
{
"mcpServers": {
"happenings-connect": {
"type": "http",
"url": "https://api.happenings.social/mcp"
}
}
}README
Happenings for your AI
Connects any MCP-capable AI to the Happenings pages an organiser runs, and
teaches it how to run a page well (HAP-4513). Organisers set it up from Connect,
under Settings, then AI (/beta/settings/ai).
The two parts
- The connector:
https://api.happenings.social/mcp. The page-level Happenings CLI as a remote MCP server (streamable HTTP), behind OAuth 2.1 with PKCE, dynamic client registration and RFC 9207iss. Adding it takes only the URL; signing in picks the pages, and every command stays limited by the person's role on each page. Tools:hap_helpandhap_read(read-only) andhap_run. - The skill:
skill/happenings.mdis the single source.node build.mjsgenerates every client's copy from it; a backoffice test fails when one is stale.
Per client
Every client above uses the remote URL with OAuth; none needs a local stdio
fallback. OAuth callbacks allowlisted for them: Claude
(https://claude.ai/api/mcp/auth_callback), ChatGPT
(https://chatgpt.com/connector_platform_oauth_redirect and
/connector/oauth/{id}), VS Code (https://vscode.dev/redirect,
https://insiders.vscode.dev/redirect), Cursor's fallback
(cursor://anysphere.cursor-mcp/oauth/callback) and loopback
(http://localhost:*, 127.0.0.1) for Cursor, Claude Code, Gemini CLI, Codex
and Windsurf.
Bundles (one step for both)
This folder is laid out to be published as its own public repository, which serves two bundles at once:
-
Claude Code plugin marketplace:
.claude-plugin/marketplace.jsonandplugins/happenings(the.mcp.jsonconnector, the skill and four commands:/happenings:this-week,:sales,:new-event,:members).claude plugin marketplace add <owner>/<repo> && claude plugin install happenings@happenings -
Gemini CLI extension:
gemini-extension.jsonandGEMINI.md.gemini extensions install https://github.com/<owner>/<repo> -
Claude plugin as a file:
happenings-plugin.zip, built bybuild.mjsfromplugins/happeningsand served by Connect at/downloads/ai/happenings-plugin.zip. One download holds the connector (.mcp.json), the skill and the four commands, for adding in Claude without a terminal. It is hosted on our own site and does not depend on the public repository. Connect shows it as "Both in one step" when Claude is picked. The public site serves the same bytes at/skills/happenings-plugin.zip(web/apps/user-web/scripts/sync-skills.mjscopies it at build time) and links it from/mcpand/guide/mcp.
The monorepo is private, so the first two work only from the published copy of
this folder. Set
HAPPENINGS_AI_REPO=<owner>/<repo> on the backoffice Worker and Connect shows
both commands; until then it shows the separate connector and skill steps.
A Claude Desktop extension (.mcpb) is not built: Desktop already takes the
remote connector by URL, and .mcpb targets local servers.
MCP Registry
Happenings Connect is listed in the official MCP Registry
(registry.modelcontextprotocol.io) as social.happenings/connect
(https://api.happenings.social/mcp); the entry is registry/connect.server.json.
Directories that read the registry pick it up from there. The earlier entries
social.happenings/page-tools and social.happenings/page-cli are deprecated:
/mcp became Happenings Connect on 2026-10-14 and /page/mcp is its former
address. The operator connector is not listed.
The social.happenings namespace is proven by a TXT record on
happenings.social (v=MCPv1; k=ed25519; p=…). The private key was not kept.
To publish a change, bump version in the entry, then:
Editing the skill
- Edit
skill/happenings.md. node integrations/ai/build.mjs- Commit the regenerated files (here and in
web/apps/backoffice/public/downloads/ai/).
The same applies after editing a plugin command or manifest, since the plugin
zip is built from them. A new command file must be added to
PLUGIN_SOURCE_FILES in variants.mjs; a test fails if it is not. Bump
version in plugins/happenings/.claude-plugin/plugin.json and
.claude-plugin/marketplace.json together when the plugin changes.
Source: README.md at commit e498045
Tools
0Version history
1- v1.2.0LatestOct 14, 2026
Score
75% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Declare a license in the repository or the registry entry.
Other Happenings integrations
Happenings Page CLI
social.happeningsOfficial publisher
Remote MCP connector that gives an AI assistant the Happenings page-admin CLI for the event pages an organiser runs, limited by their role.
Happenings
social.happenings
Remote MCP connector that lets an AI assistant read and run a Happenings organiser page: events, tickets, sales, members, posts and articles.