luma-events-mcp
Click on "Deploy 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-mcplist 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 MCP server for the Luma Events API. Create, update, and manage events and guests.
Current Status
This server works well for managing and tweaking existing events. However, event creation has limited options—some settings like registration mode (approval required vs. open registration) aren't yet exposed. Event duplication is also not currently supported.
Contributions welcome to expand the available event settings.
Related MCP server: Pulumi Events MCP
Requirements
Python 3.12+
Luma API key (requires Luma Plus subscription)
Development
uv run mcp dev luma.pyInstallation
Add to your MCP client config:
{
"mcpServers": {
"luma-events": {
"command": "uv",
"args": [
"--directory",
"/path/to/luma",
"run",
"python",
"-m",
"luma"
],
"env": {
"LUMA_API_KEY": "your-api-key"
}
}
}
}Available Tools
9 toolsadd_hostA
Add a host to a Luma event.
Args:
event_id: The unique identifier of the event (e.g., "evt-ABC123")
email: Email address of the host to add
name: Name of the host (ignored if they already have a Luma profile)
Returns:
Result of adding host or an error message
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| Yes | |||
| event_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It discloses one useful behavior, that name is ignored if a Luma profile exists, and mentions a generic result/error return, but it does not cover permissions, duplicate-host behavior, idempotency, or side effects such as notifications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well organized: a clear purpose sentence, an Args list, and a Returns line. Every sentence provides useful information, with no filler, and the core purpose is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple three-string-parameter mutation with an output schema, the description covers the resource, all parameters with useful semantics, one edge-case behavior, and the return shape. It lacks explicit usage exclusions and deeper behavioral caveats, but an agent can select and invoke the tool correctly for the stated purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates well by adding an example format for event_id, clarifying email's role, and explaining the behavior of name for existing Luma profiles. It does not specify email validation or explicitly note name's optionality, but the provided semantics are sufficient for correct invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a specific verb-object statement, 'Add a host to a Luma event,' which clearly identifies the action and resource. This distinguishes it from sibling tools such as list_events, get_guests, and update_event, none of which perform host addition.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives or provide when-not-to-use guidance. The intended usage is only implied by the tool's purpose and name, so the agent must infer that this is the tool for adding hosts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_eventB
Create a new Luma event.
Args:
name: The title of the event
start_at: Start time in ISO 8601 format (e.g., "2024-12-31T23:59:00Z")
location: Event location with place_id (Google Maps) and optional description
end_at: End time in ISO 8601 format (optional)
description_md: Event description in Markdown format (optional)
cover_url: URL for the event cover image (optional)
Returns:
The created event data or an error message
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| end_at | No | ||
| location | Yes | ||
| start_at | Yes | ||
| cover_url | No | ||
| description_md | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the return value ('created event data or an error message') but does not disclose whether creation is idempotent, whether authentication or specific permissions are required, whether the operation is reversible, or what side effects occur. The verb 'create' implies mutation but adds no depth beyond that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the one-line purpose, followed by a cleanly organized Args list and a Returns line. Every section earns its place and there is no fluff. It is appropriately sized for a six-parameter tool, though the per-parameter descriptions are minimal rather than richly detailed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
All six parameters and the return value are covered, and an output schema exists so return-format detail is unnecessary. However, for a mutation tool with zero annotations and several query-like siblings, the description lacks sibling routing, auth/prerequisite information, and side-effect disclosure, leaving an agent to guess when this is the correct call and what the consequences are.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description fully compensates by documenting all six parameters with meaningful semantics: name is the title, start_at/end_at get ISO 8601 format with a concrete example, location is explained as a place_id from Google Maps with optional description, and optionality flags are provided for the four optional fields. This goes well beyond the bare schema names, though the descriptions are terse and only start_at gets a full example.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The first sentence 'Create a new Luma event.' names a specific verb (create) and resource (Luma event), which makes the purpose immediately clear. It also implies differentiation from sibling tools like list_events, get_event, and update_event by the verb alone, even though those siblings are not explicitly named.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as update_event for modifying an existing event or list_events for viewing. The use case is only implied by the verb 'create'; there are no prerequisites, no exclusions, and no mention of sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_all_past_guestsA
Get all unique guests from all past events.
Returns:
De-duplicated list of Guest objects (by email)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral burden. It clearly discloses the de-duplication key (email), the source scope (all past events), and the return shape (list of Guest objects). It does not cover edge cases like empty results or ordering, but for a zero-parameter read tool this is solid.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short lines, no filler. The core behavior is front-loaded and the return format is stated separately and clearly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a parameterless read-only lookup with an output schema available, the description provides everything an agent needs: what the tool returns and how results are deduplicated. Nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so schema coverage is effectively complete and there is nothing for the description to add. Baseline 4 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (get), resource (guests), and scope (all past events), and adds the de-duplication behavior. The description makes clear this tool is different from generic guest-listing siblings like get_guests.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The scope is implied by context: use this when you need unique guests from past events. However, there is no explicit statement of when not to use it or what alternatives like get_guests or list_events are better for.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_eventA
Get details about a Luma event.
Args:
event_id: The unique identifier of the event (e.g., "evt-ABC123")
Returns:
The event data or an error message
| Name | Required | Description | Default |
|---|---|---|---|
| event_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It states the input (event_id) and the return ('event data or an error message'), but does not explicitly confirm it is read-only, describe error conditions, or mention any side effects. The 'Get' wording implies safety, and the error-message note adds transparency, so this is adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-organized: a one-line purpose, an Args section, and a Returns section. Every sentence earns its place, and the key purpose is front-loaded. There is no unnecessary detail or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter get operation with an output schema, the description covers the essential invocation details: what the tool does, what identifier to pass, and what to expect back. It does not address API-specific behaviors like auth or rate limits, but those are less critical for a simple read-by-id tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides only the field name and type with no description, so the description's Args section is essential. It explains that event_id is the unique identifier and gives a concrete example format ('evt-ABC123'), adding real meaning beyond the schema. It does not restate that the parameter is required, but the schema already marks it required.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Get details about a Luma event', clearly stating a specific verb and resource. It differentiates this from guest-related getters (get_guest, get_guests) by focusing on the event, though it does not explicitly contrast with list_events or the mutation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrasing 'Get details about a Luma event' implies this tool is for retrieving a single event's details by ID, which provides some usage context. However, it does not mention when to use list_events instead, nor does it explicitly exclude alternatives like get_guest or get_guests.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_guestA
Get a specific guest for a Luma event.
Args:
event_id: The unique identifier of the event (e.g., "evt-ABC123")
guest_id: The unique identifier of the guest
Returns:
Guest data or an error message
| Name | Required | Description | Default |
|---|---|---|---|
| event_id | Yes | ||
| guest_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It only mentions that guest data or an error message is returned; it does not state read-only intent, auth requirements, not-found behavior, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and well-structured: a clear leading purpose sentence, followed by Args and Returns sections with no filler. Every sentence contributes useful information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple retrieval tool with two required parameters and an output schema, the description covers the inputs and return. It lacks usage guidance and behavioral detail, but it is complete enough to invoke the tool correctly for its core purpose.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It does add the semantic roles ('unique identifier of the event' and 'unique identifier of the guest') and an example format for event_id, but guest_id remains under-specified with no example or format hint.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: get a specific guest for a Luma event. This clearly distinguishes it from sibling tools like get_guests or get_event, since it is scoped to one guest.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies when to use the tool: when a single guest is needed. However, it never explicitly contrasts it with sibling alternatives such as get_guests for listing all guests or get_all_past_guests, so an agent must infer the routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_guestsB
Get all guests for a Luma event.
Args:
event_id: The unique identifier of the event (e.g., "evt-ABC123")
Returns:
List of guests or an error message
| Name | Required | Description | Default |
|---|---|---|---|
| event_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It states return type ('List of guests or an error message') but discloses nothing about permissions, scope of 'all' (current vs past), pagination, or side effects. The ambiguous scope is especially relevant given the get_all_past_guests sibling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
At one summary line plus args/returns, the description is compact and well-structured. The most important information (what the tool does) is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter getter, the description covers the essentials: action, parameter, example, return. But it remains terse and does not clarify the distinction with get_all_past_guests or any constraints on guest lists, leaving an agent to guess about behavioral boundaries.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema provides only the property name and type with 0% coverage, so the description's argument section is the main documentation. It explains event_id as 'unique identifier of the event' and gives a concrete example format 'evt-ABC123', which adds real meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a clear verb-resource pair: 'Get all guests for a Luma event' and highlights the plural 'all guests' scope, which separates it from get_guest. It does not explicitly contrast with get_all_past_guests, leaving a small sibling distinction gap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool over siblings. The description does not mention that get_all_past_guests should be used for past events or get_guest for a single guest, so an agent gets no selection help.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_eventsA
List all events for the default calendar.
Returns:
List of events or an error message
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description bears the transparency burden. It discloses that this is a listing operation returning a list or an error message, which covers the basic behavior, but it omits potential details such as pagination, ordering, authentication expectations, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two compact sentences with the core operation front-loaded and a minimal return-type statement. Every sentence earns its place and there is no redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter tool, the description gives the scope ('default calendar'), the action, and the return shape. An output schema exists to carry event-field details, so the main remaining ambiguity — what 'default calendar' means in context — is minor at this level of complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters and schema coverage is effectively 100%. Per the baseline rule for zero-parameter tools, this is a 4; there is no parameter meaning left for the description to add.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'List all events for the default calendar.' The word 'all' and the scoping to a default calendar distinguish it clearly from siblings like get_event, create_event, and update_event.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The primary use case is implied by the action phrase, but the description does not explicitly say when to choose this tool over get_event for a single event or how it relates to create_event/update_event. No alternatives or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
send_invitesB
Send invites to guests for a Luma event.
Args:
event_id: The unique identifier of the event (e.g., "evt-ABC123")
guests: List of Guest objects with email (required) and name (optional)
Returns:
Result of sending invites or an error message
| Name | Required | Description | Default |
|---|---|---|---|
| guests | Yes | ||
| event_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full behavioral burden. It only states 'Send invites' and returns a generic 'Result of sending invites or an error message,' without disclosing side effects, idempotency, required event state, or failure behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact and front-loaded with a one-sentence summary followed by structured Args/Returns sections. It avoids filler, though the Returns sentence is somewhat generic and low-information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter tool, the description maps both parameters and gives a basic return expectation, which is enough for a straightforward call. However, missing behavioral context and usage guidance leave the tool only partially contextualized for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, but the description compensates by explaining that event_id is the unique event identifier with an example, and by stating that guests are Guest objects with required email and optional name. It repeats some of the schema's structure but adds limited extra meaning beyond the example.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description opens with 'Send invites to guests for a Luma event,' a specific verb+resource that clearly states the tool's purpose. This distinguishes it from the read-only sibling tools such as list_events and get_guests, and from add_host/update_event.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use guidance, exclusions, or alternative tool routing is provided. An agent must infer from the wording that sending invites is the intended operation, but the description does not clarify how it compares to add_host or other event-related tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_eventA
Update an existing Luma event.
Args:
event_id: The unique identifier of the event to update (api_id)
name: New title for the event (optional)
description_md: New description in Markdown format for the event (optional)
start_at: New start time in ISO 8601 format (optional)
end_at: New end time in ISO 8601 format (optional)
cover_url: New URL for the event cover image (optional)
location: New event location (optional)
Returns:
The updated event data or an error message
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| end_at | No | ||
| event_id | Yes | ||
| location | No | ||
| start_at | No | ||
| cover_url | No | ||
| description_md | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so the description carries full burden. It discloses the update action and return ('updated event data or an error message'), but doesn't state whether this is a partial patch, what permissions are needed, or side effects on existing data. These are meaningful gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One-line purpose, compact Args list, brief Returns line. No filler; all listed info adds value beyond the schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers all parameters and return behavior, and an output schema exists for return shape. But lacks usage guidance, explicit patch semantics, and permission/error context; with no annotations, this leaves gaps for an agent deciding to call it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Despite 0% schema coverage, the description explains every parameter: event_id as api_id, name, description_md as Markdown, start_at/end_at as ISO 8601, cover_url as URL. It adds format and optionality meaning beyond schema titles. Location gets only 'New event location' without GeoAddress detail, so not perfect.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States 'Update an existing Luma event' – a specific verb and resource. The word 'existing' differentiates it from create_event, and update vs get/list makes sibling distinctions evident. No ambiguity about what operation occurs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or alternative guidance. It doesn't mention that create_event is for new events or that get_event/list_events are for reads; usage is only implied by 'Update an existing'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
v0.1.0- First observed
add_host - First observed
create_event - First observed
get_all_past_guests - First observed
get_event - First observed
get_guest - First observed
get_guests - First observed
list_events - First observed
send_invites - First observed
update_event
TDQS
Scored across 9 tools
Each tool targets a distinct resource and action: events (list/get/create/update), guests (get/get_all/get for event), hosts (add), and invitations (send). No two tools appear to do the same thing, and singular/plural guest tools are clearly differentiated.
All tool names follow a consistent verb_noun pattern in snake_case, such as list_events, create_event, update_event, and send_invites. The naming style is uniform and predictable across the entire server.
Nine tools is a well-scoped count for an event management server. Each tool covers a meaningful operation without unnecessary redundancy or bloat.
The tool surface covers the core event lifecycle (create, read, update, list) and guest-related workflows (view guests, send invites, add hosts). Minor gaps exist, such as no delete/cancel event or remove host, but these are workarounds rather than dead ends.
Maintenance
Related MCP Connectors
Eventify MCP server — manage events, attendees, sessions, speakers, sponsors, and analytics.
A MCP server that works with Google Calendar to manage event listing, reading, and updates.
The official MCP Server for the Mux API
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides comprehensive event management and ticketing capabilities through the Eventbrite API v3.22MIT
- FlicenseNot gradedqualityBmaintenanceMCP server for managing events on Meetup.com and Luma via AI assistants like Claude.2-
- FlicenseAqualityDmaintenanceA simple MCP server for event scheduling and automation.12-
- AlicenseAqualityAmaintenanceAn MCP server for managing Luma events, including listing, creating, updating events and guest registrations with privacy-conscious summaries.23102MIT