Luma Events MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Luma Events MCP Serverlist my upcoming events"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Luma Events MCP Server
An open-source Model Context Protocol (MCP) server for managing Luma events from MCP-compatible AI clients.
The server connects to the calendar associated with your Luma API key. It can list and inspect events, create or update events after explicit confirmation, inspect guest registrations, and return privacy-conscious registration summaries.
Features
Verify the configured Luma API connection.
List approved or pending calendar events.
Retrieve complete details for an event.
Create events after explicit user confirmation.
Update event details and registration settings after explicit confirmation.
List guests for event operations.
Count registration states and check-ins without returning guest identities.
Paginate automatically when producing registration summaries.
Write operations are guarded by a required confirmed value. MCP clients should
show the proposed event details to the user and obtain explicit approval before
calling a write tool.
Related MCP server: luma-events-mcp
Screenshots
Discover available capabilities

List upcoming events

Analyze guest attendance
Guest identities have been redacted from this public example.

Available tools
verify_connection
Checks the API key and returns the authenticated Luma user.
list_events
Lists calendar events. Supports date ranges, approval status, pagination limits, and pagination cursors.
get_event
Returns complete details for a single event.
create_event
Creates an event after explicit confirmation. Supports event names, dates, timezones, descriptions, capacity, online meeting URLs, physical locations, visibility, registration, waitlist, and guest-list settings.
update_event
Updates selected event fields after explicit confirmation.
list_guests
Lists event guests, optionally filtered by approval status. This tool may return personal information and should only be used for legitimate event operations.
registration_summary
Returns totals by registration state and the number of checked-in guests without exposing names or email addresses.
Requirements
Node.js 20 or newer
A Luma calendar with API access
A Luma API key
An MCP-compatible client such as Cursor or Codex
Getting a Luma API key
Generate a calendar API key by following the Luma API documentation. The key determines which calendar the server can access.
Treat the key as a secret. Never commit it, include it in screenshots, or place it directly in a tracked MCP configuration file.
Installation
Clone the repository and enter this plugin directory:
git clone https://github.com/Blackie360/luma-events-mcp.git
cd luma-events-mcpInstall dependencies and build the server:
corepack enable
pnpm install
pnpm buildThe production entry point is generated at dist/index.js.
Configuration
The server requires the following environment variable:
export LUMA_API_KEY="your-luma-api-key"An optional API base URL can be supplied for testing or compatible proxies:
export LUMA_API_BASE="https://public-api.luma.com"The server does not load .env files automatically. For local development, you
can create an ignored .env file and load it into your shell before running the
server:
set -a
source .env
set +aExample .env:
LUMA_API_KEY=your-luma-api-keyRunning locally
Build and start the stdio MCP server:
pnpm build
pnpm startThe process communicates over standard input and output, so it normally appears idle when started directly. An MCP client is expected to launch and communicate with it.
Connecting an MCP client
Configure your client to run the built server with Node.js. Use absolute paths unless the client supports a working-directory option.
{
"mcpServers": {
"luma-events": {
"command": "node",
"args": ["/absolute/path/to/plugins/luma-events/dist/index.js"]
}
}
}Make LUMA_API_KEY available to the environment that launches your MCP client,
or use the client's secure secret/environment-variable configuration. Restart
the client after updating its environment or MCP configuration.
This repository also includes:
.mcp.jsonfor clients that support plugin-provided MCP configuration..codex-plugin/plugin.jsonwith Codex plugin metadata.
After connecting, ask the client to run verify_connection before using the
other tools.
Example prompts
"Verify my Luma connection."
"Show my upcoming Luma events."
"Show the details for the next event."
"Summarize registrations for my next event."
"Prepare an event for Friday at 5 PM, but do not create it until I confirm."
"Close registration for this event after showing me the proposed change."
Development
Run the TypeScript compiler checks:
pnpm checkBuild the project:
pnpm buildRun the test suite:
pnpm testThe test suite covers write confirmation, API error reporting, registration pagination, and privacy-conscious summaries.
Project structure
.
├── .codex-plugin/plugin.json # Codex plugin metadata
├── .mcp.json # Plugin MCP server configuration
├── src/index.ts # MCP server and Luma API integration
├── src/index.test.ts # Node.js tests
├── package.json # Scripts and dependencies
└── tsconfig.json # TypeScript configurationSecurity and privacy
Never commit
LUMA_API_KEYor any.envfile.Review requested changes before confirming write operations.
Use
list_guestsonly when guest-level data is necessary.Prefer
registration_summarywhen only aggregate counts are required.Keep dependencies updated and report vulnerabilities privately to the maintainers.
Contributing
Contributions are welcome:
Fork the repository.
Create a focused branch.
Add or update tests for your change.
Run
pnpm checkandpnpm test.Open a pull request explaining the change and its motivation.
Please avoid including API keys, guest information, or other private event data in issues, tests, commits, or pull requests.
API
The server uses Luma's official API at https://public-api.luma.com. API keys
are scoped to the calendar and permissions configured in Luma.
License
This project is available under the MIT License.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Blackie360/luma-events-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server