Skip to main content
Glama
Eventbrite MCP Server

Eventbrite MCP Server

Eventbrite MCP Server

A Model Context Protocol (MCP) server that provides natural language access to the Eventbrite API. This server allows you to create, manage, and interact with Eventbrite events using conversational AI.

Features

  • Create Events: Create new events with natural language descriptions

  • List Events: View and filter your events

  • Update Events: Modify existing event details

  • Publish Events: Make draft events live

  • Cancel Events: Cancel events when needed

  • Venue Management: Create and manage venues

  • Category Support: Browse and use Eventbrite categories

Related MCP server: EventHorizon MCP Server

Setup

1. Get Eventbrite API Credentials

  1. Go to Eventbrite Developer Portal

  2. Create an account or sign in

  3. Create a new app to get your API key

  4. Note your Organization ID (optional, for listing organization events)

2. Environment Variables

Create a .env file in this directory or set the following environment variables:

EVENTBRITE_API_KEY=your_eventbrite_api_key_here
EVENTBRITE_ORGANIZATION_ID=your_organization_id_here  # Optional

3. Install Dependencies

cd src/mcp-servers/eventbrite
npm install

4. Build (Optional)

If you want to compile TypeScript:

npm run build

Usage

Running the Server

# Development mode with auto-reload
npm run dev

# Production mode
npm start

MCP Client Configuration

Add this server to your MCP client configuration (e.g., Claude Desktop):

{
  "mcpServers": {
    "eventbrite": {
      "command": "node",
      "args": ["/path/to/cyber-guard/src/mcp-servers/eventbrite/index.js"],
      "env": {
        "EVENTBRITE_API_KEY": "your_api_key_here",
        "EVENTBRITE_ORGANIZATION_ID": "your_org_id_here"
      }
    }
  }
}

Available Tools

create_event

Create a new event on Eventbrite.

Parameters:

  • name (required): Event name

  • start_date (required): Start date/time in ISO 8601 format

  • end_date (required): End date/time in ISO 8601 format

  • description: Event description (HTML allowed)

  • timezone: Event timezone (default: UTC)

  • currency: Currency code (default: USD)

  • online_event: Whether it's an online event (default: false)

  • listed: Whether to list publicly (default: true)

  • capacity: Maximum attendees

  • venue_name: Venue name (for in-person events)

  • venue_address: Venue address

  • venue_city: Venue city

  • venue_region: Venue state/region

  • venue_postal_code: Venue postal code

  • venue_country: Venue country (2-letter code)

  • category_id: Eventbrite category ID

  • subcategory_id: Eventbrite subcategory ID

list_events

List your events with optional filtering.

Parameters:

  • status: Filter by status (live, draft, canceled, etc.)

  • order_by: Sort order (start_asc, start_desc, created_asc, created_desc)

  • page: Page number for pagination

get_event

Get detailed information about a specific event.

Parameters:

  • event_id (required): The event ID

update_event

Update an existing event.

Parameters:

  • event_id (required): The event ID

  • name: New event name

  • description: New description

  • start_date: New start date/time

  • end_date: New end date/time

  • timezone: New timezone

publish_event

Publish a draft event to make it live.

Parameters:

  • event_id (required): The event ID

cancel_event

Cancel an event.

Parameters:

  • event_id (required): The event ID

list_categories

List available Eventbrite categories.

create_venue

Create a new venue.

Parameters:

  • name (required): Venue name

  • address: Street address

  • city: City

  • region: State/region

  • postal_code: Postal code

  • country: Country (2-letter code)

Example Natural Language Commands

Once connected to an MCP client, you can use natural language like:

  • "Create a tech meetup event next Friday at 7 PM called 'AI and the Future'"

  • "List all my upcoming events"

  • "Update the description of event 123456789"

  • "Publish the draft event with ID 987654321"

  • "Create a venue called 'Tech Hub' in San Francisco"

  • "Show me all available event categories"

Error Handling

The server includes comprehensive error handling for:

  • Missing API credentials

  • Invalid event data

  • Network errors

  • Eventbrite API errors

Development

Project Structure

src/mcp-servers/eventbrite/
├── index.ts          # Main server implementation
├── package.json      # Dependencies and scripts
├── tsconfig.json     # TypeScript configuration
└── README.md         # This file

Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Test thoroughly

  5. Submit a pull request

License

MIT License - see the main project license for details.

Support

For issues related to:

Available Tools

13 tools
cancel_eventC

Cancel an event

Inputs: event_id (required).

create_eventC

Create a new event on Eventbrite

Inputs: name (required), end_date (required), start_date (required), listed, +13 more.

create_venueB

Create a new venue

Inputs: name (required), city, region, address, +2 more.

create_webhookC

Create a webhook for Eventbrite events

Inputs: actions (required), endpoint_url (required), event_id.

delete_canceled_eventsB

Delete all events that are marked as canceled

Inputs: confirm (required).

delete_eventA

Delete an event (permanently removes the event)

Inputs: event_id (required).

delete_webhookB

Delete a webhook

Inputs: webhook_id (required).

get_eventB

Get details of a specific event

Inputs: event_id (required).

list_categoriesA

List available event categories

Inputs: no named parameters.

list_eventsB

List events for the authenticated user or organization

Inputs: page, status, order_by.

list_webhooksB

List all webhooks for the organization

Inputs: no named parameters.

publish_eventA

Publish a draft event to make it live

Inputs: event_id (required).

update_eventC

Update an existing event

Inputs: event_id (required), name, end_date, timezone, +2 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 13 tools

    Disambiguation4/5

    Tools are mostly distinct, with clear purposes. Minor overlap exists between cancel_event (changes status to canceled) and delete_event (permanent removal), and delete_canceled_events is a bulk operation. Overall, an agent can differentiate them.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern in snake_case (e.g., get_event, create_event, list_events). Verbs are uniform and predictable, making it easy to infer tool function.

    Tool Count5/5

    13 tools is appropriate for an event management server, covering core event operations (CRUD, status changes), categories, venues, and webhooks. The scope is well-defined without unnecessary bloat.

    Completeness3/5

    Event CRUD and status management are complete, but venue tools lack update/delete, webhooks lack update, and there are no tools for tickets, orders, or attendees. These gaps may hinder complex workflows.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      Integrates with the EventHorizon Django platform to manage events, registrations, and user profiles through natural language, including creating/updating events, handling attendee registrations, and viewing hosted events.
      13
      2
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables management of Cvent events, registrations, attendees, sessions, contacts, surveys, reports, custom objects, and webhooks via natural language through the Cvent REST API.
      MIT
    • F
      license
      C
      quality
      B
      maintenance
      Enables interaction with the Swapcard event platform API, providing tools to manage events, people, sessions, exhibitors, documents, custom fields, meetings, webhooks, and analytics through natural language.
      32
      -