mcpField
R
realevents

realevents

Local
github.com/ykastelnikProductivity1Updated 2w ago

About realevents

realevents is an MCP server for creating and managing events on RealEvents from an AI assistant. Its tools cover public event discovery, RSVPs and organizer controls, including guest lists, capacity, event details and comments.

Key features

  1. 01Browse and filter public events
  2. 02Create and update event pages
  3. 03Manage RSVPs and guest lists
  4. 04View event attendance statistics
  5. 05Duplicate or cancel events
  6. 06Read and post event comments

Use cases

  1. 01Find public events by date or format
  2. 02Create an event with a timezone
  3. 03Track RSVPs and remaining capacity
  4. 04Manage guest conversations on an event

MCP support

Exposes public event discovery, registration and organizer management tools to MCP-compatible AI assistants. Public tools require no token; organizer tools require the event's manage token.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"ykastelnik-realevents": {
"command": "npx",
"args": [
"-y",
"realevents-mcp"
]
}
}
}
Run commandnpx -y realevents-mcp

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmrealevents-mcp1.4.0

Tools

13

Saved tool list · updated 2w ago

ParameterTypeRequiredDescription
titlestringYesEvent title (e.g. 'Bordeaux Tech Meetup')
formatenumNoEvent format. Default: in_personin_person | virtual | hybrid
locationstringNoPhysical location (for in_person or hybrid events)
timezonestringNoIANA timezone the event happens in, e.g. 'Europe/Paris'. Defaults to UTC. Always set this to the organizer's local zone: otherwise a start time like 19:00 is stored as 19:00 UTC and shows at the wrong local hour on the page.
descriptionstringNoEvent description (supports HTML)
virtual_linkstringNoVirtual meeting link (for virtual or hybrid events)
max_attendeesintegerNoMaximum number of attendees (no limit if not set)
start_datetimestringYesStart date and time, ISO 8601 (e.g. '2026-06-15T19:00:00'). Interpreted in the event's timezone, so prefer a local time WITHOUT a trailing Z and pass `timezone`.
organizer_emailstringNoOrganizer email to receive the manage link by email

Details

From the project README

RealEvents MCP Server

Create and manage events on RealEvents from any MCP-compatible AI assistant.

CI CodeQL npm version npm downloads License: MIT

Documentation and install snippets: https://realevents.co/mcp

Install

{
  "mcpServers": {
    "realevents": {
      "command": "npx",
      "args": ["-y", "realevents-mcp"]
    }
  }
}

For Claude Desktop on macOS, the config file is at ~/Library/Application Support/Claude/claude_desktop_config.json. For other clients, see their MCP documentation.

Agent skill

skills/realevents/SKILL.md teaches an assistant when and how to use these tools: creating an event with the right timezone, handing back the manage link, and the head-count and guest-list rules below. Copy the skills/realevents folder into your client's skills directory (for Claude Code, ~/.claude/skills/) alongside the server config above.

Tools

Public, no token needed:

ToolDescription
list_public_eventsBrowse upcoming public events. Filter by format, date range or search term.
get_eventGet an event's public details by slug. Follows old links after a slug change.
register_for_eventRSVP for an attendee: going, maybe or not going, with plus-ones and a note.
create_eventCreate a new event page. Returns the public link and the manage link.

Organizer tools, all requiring the manage token:

ToolDescription
get_manage_eventFull event details plus the guest list.
list_registrationsThe guest list on its own, optionally filtered to confirmed / maybe / declined.
get_event_statsPage views, head-count, remaining capacity, view-to-attendance rate.
update_eventChange any event detail or setting.
duplicate_eventCopy the event into a new draft one week later.
cancel_eventMark the event cancelled. The page stays online.
set_coverSet the cover image from a public image URL.
list_commentsRead the guest conversation: questions, replies and reactions.
post_commentPost to the thread as the organizer. Visible to every guest who RSVPed.

Comments only work on events where the organizer has switched them on (update_event with allow_comments: true). Until then both comment tools return a message saying exactly that.

Cover images

set_cover takes a public image URL, not a file. MCP tool arguments are JSON text, so an assistant cannot hand a local image to the server; if the picture is on the user's computer, the manage page's upload does the job better anyway (drag and drop, preview, crop). Around 1200px wide or more looks best - set_cover says so when the image is smaller rather than silently accepting a thumbnail.

Timezones

create_event takes a timezone (an IANA name such as Europe/Paris) alongside start_datetime. Set it. The start time is interpreted in that zone, and the zone defaults to UTC, so creating an event for 19:00 without one produces a page that reads 19:00 UTC: the wrong hour for everyone outside it.

Prefer a local time with no trailing Z:

start_datetime: "2026-06-15T19:00:00"
timezone:       "Europe/Paris"
Attendance is counted in people

An event's attendance figure is a head-count: confirmed guests plus everyone they bring. A guest arriving with three others takes four of the available places, so a party can be refused on an event that still shows free rows. When that happens the error states how many places are left, so the call can be retried with a smaller party rather than reported as a failure.

Plus-ones only attach to a confirmed answer, and are capped by the event's own plus_ones_limit (0 disables them). When the organizer collects names rather than a headcount, every declared guest needs one. get_event reports both settings.

Manage token

Events created with create_event return a manage_token. Save it: it is the only way to manage the event later.

To set a default token so you don't have to pass it on every call:

{
  "mcpServers": {
    "realevents": {
      "command": "npx",
      "args": ["-y", "realevents-mcp"],
      "env": {
        "REALEVENTS_MANAGE_TOKEN": "your-token"
      }
    }
  }
}

Security

Signed with npm Provenance, built from this repository via GitHub Actions. Every published version is traceable back to the exact commit and workflow run that built it.

Links

For maintainers: publishing checklist

Before publishing a new version:

  1. Bump version in package.json
  2. Verify mcpName: "io.github.ykastelnik/realevents" is still present
  3. Bump version and packages[0].version in server.json to match
  4. Tag vX.Y.Z and push: the publish.yml workflow handles the npm publish
  5. Locally: ./mcp-publisher publish to sync the MCP Registry listing

License

MIT

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.