Eventbrite MCP by usefulapi
by usefulapi.io · remote · no sign-in to list tools · v1.16.3 · published by io.usefulapi
Manage Eventbrite events, ticket classes, venues and discounts; read attendees, orders and reports.
26 tools: 10 can delete or cancel things, 1 change things and 15 only read.
Scanned Oct 21, 2026
- Deletes or cancels10Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things1Claude Code: ask: see these tools
- Only reads15Claude Code: allow: see these tools
2 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http eventbrite https://eventbrite.usefulapi.io/mcpFindings
Matches of fixed checks, with the text they matched.
The description contains "every other tool", wording about other tools or servers.
What this check looks forMatched text
description: "...ganizations you are a member of. Almost every other tool needs an organization_id from here. Eve..."
The server marks "eventbrite_list_discounts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true}; The name "eventbrite_list_discounts" says "list": a word for reading.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
26 tools
Deletes or cancels 10Claude Code: deny
eventbrite_copy_eventDuplicate an event (tickets, payment options, refund policy, tax settings) into a new event with a new ID, optionally with a new name and dates.No findings
Why it is in this group
- The name "eventbrite_copy_event" says "copy": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Duplicate an event (tickets, payment options, refund policy, tax settings) into a new event with a new ID, optionally with a new name and dates. Eventbrite: POST /events/{event_id}/copy/.
Annotations the server declares
- title: Copy an event
- destructiveHint: true
eventbrite_create_discountCreate a promo code (type=coded), a public discount (type=public, single event) or an access code that unlocks hidden tickets (type=access).No findings
Why it is in this group
- The name "eventbrite_create_discount" says "create": a word for a change.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Create a promo code (type=coded), a public discount (type=public, single event) or an access code that unlocks hidden tickets (type=access). Scope: event_id (+ticket_class_ids) for one event, ticket_group_id for a group, neither for all the organization's events. Eventbrite: POST /organizations/{organization_id}/discounts/.
Annotations the server declares
- title: Create a discount or access code
- destructiveHint: true
eventbrite_create_eventCreate a new event as a DRAFT (not visible or on sale until eventbrite_publish_event).No findings
Why it is in this group
- The name "eventbrite_create_event" says "create": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Create a new event as a DRAFT (not visible or on sale until eventbrite_publish_event). Add tickets with eventbrite_create_ticket_class before publishing. Eventbrite: POST /organizations/{organization_id}/events/.
Annotations the server declares
- title: Create a draft event
- destructiveHint: true
eventbrite_create_ticket_classAdd a ticket type to an event.No findings
Why it is in this group
- The name "eventbrite_create_ticket_class" says "create": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Add a ticket type to an event. Paid: set cost like "USD,2500" and capacity. Free: free=true and capacity. Eventbrite: POST /events/{event_id}/ticket_classes/.
Annotations the server declares
- title: Create a ticket class
- destructiveHint: true
eventbrite_create_venueSave a new venue under an organization, to use as an event's venue_id.No findings
Why it is in this group
- The name "eventbrite_create_venue" says "create": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Save a new venue under an organization, to use as an event's venue_id. Eventbrite: POST /organizations/{organization_id}/venues/.
Annotations the server declares
- title: Create a venue
- destructiveHint: true
eventbrite_publish_eventMake a draft event live so tickets go on sale.No findings
Why it is in this group
- The name "eventbrite_publish_event" says "publish": a word for a change that another call does not undo.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Make a draft event live so tickets go on sale. Needs a name, organizer, at least one ticket class and valid payment options. Undo with eventbrite_unpublish_event while there are no orders. Eventbrite: POST /events/{event_id}/publish/.
Annotations the server declares
- title: Publish an event
- destructiveHint: true
eventbrite_unpublish_eventTake a published event back to unpublished.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Take a published event back to unpublished. Only allowed while it has no pending or completed orders (or, for paid events, once completed and paid out). Eventbrite: POST /events/{event_id}/unpublish/.
Annotations the server declares
- title: Unpublish an event
- destructiveHint: true
eventbrite_update_discountChange a discount or access code (amount, uses, dates, scope); only the fields you pass are sent.No findings
Why it is in this group
- The name "eventbrite_update_discount" says "update": a word for a change.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Change a discount or access code (amount, uses, dates, scope); only the fields you pass are sent. Eventbrite: POST /discounts/{discount_id}/.
Annotations the server declares
- title: Update a discount
- destructiveHint: true
eventbrite_update_eventChange fields of an existing event; only the fields you pass are sent.No findings
Why it is in this group
- The name "eventbrite_update_event" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Change fields of an existing event; only the fields you pass are sent. Changing start/end needs timezone too. Eventbrite: POST /events/{event_id}/.
Annotations the server declares
- title: Update an event
- destructiveHint: true
eventbrite_update_ticket_classChange a ticket type (name, price, capacity, sales window, visibility); only the fields you pass are sent.No findings
Why it is in this group
- The name "eventbrite_update_ticket_class" says "update": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Change a ticket type (name, price, capacity, sales window, visibility); only the fields you pass are sent. The price cannot change after tickets are sold. Eventbrite: POST /events/{event_id}/ticket_classes/{ticket_class_id}/.
Annotations the server declares
- title: Update a ticket class
- destructiveHint: true
Changes things 1Claude Code: ask
eventbrite_list_discountsSearch an organization's discounts and access codes, with quantity_sold.1 finding
Why it is in this group
- The name "eventbrite_list_discounts" says "list": a word for reading.
- The input takes a statement or command to run (input.code), which can change anything it can reach.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "eventbrite_list_discounts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true}; The name "eventbrite_list_discounts" says "list": a word for reading.
Description, as the server wrote it Search an organization's discounts and access codes, with quantity_sold. scope=event needs event_id; multi_events = cross-event discounts; user = all of the organization's. Eventbrite: GET /organizations/{organization_id}/discounts/.
Annotations the server declares
- title: List discounts
- readOnlyHint: true
Only reads 15Claude Code: allow
eventbrite_get_attendeeFetch one attendee of an event, including check-in state (checked_in, barcodes[].status), answers and cost breakdown.No findings
Why it is in this group
- The name "eventbrite_get_attendee" says "get": a word for reading.
Description, as the server wrote it Fetch one attendee of an event, including check-in state (checked_in, barcodes[].status), answers and cost breakdown. Eventbrite: GET /events/{event_id}/attendees/{attendee_id}/.
Annotations the server declares
- title: Get an attendee
- readOnlyHint: true
eventbrite_get_attendee_reportAttendee report for one or more events: number of attendees and orders per time bucket, optionally grouped.No findings
Why it is in this group
- The name "eventbrite_get_attendee_report" says "get": a word for reading.
Description, as the server wrote it Attendee report for one or more events: number of attendees and orders per time bucket, optionally grouped. Eventbrite: GET /reports/attendees/.
Annotations the server declares
- title: Get an attendee report
- readOnlyHint: true
eventbrite_get_capacityFetch the event capacity tier: capacity_total, capacity_sold, capacity_pending, quantity_total and capacity holds.No findings
Why it is in this group
- The name "eventbrite_get_capacity" says "get": a word for reading.
Description, as the server wrote it Fetch the event capacity tier: capacity_total, capacity_sold, capacity_pending, quantity_total and capacity holds. Eventbrite: GET /events/{event_id}/capacity_tier/.
Annotations the server declares
- title: Get an event's capacity
- readOnlyHint: true
eventbrite_get_eventFetch one event: name, summary, start/end, status, capacity, venue_id, listing settings.No findings
Why it is in this group
- The name "eventbrite_get_event" says "get": a word for reading.
Description, as the server wrote it Fetch one event: name, summary, start/end, status, capacity, venue_id, listing settings. Use expand=venue,ticket_classes for more. Eventbrite: GET /events/{event_id}/.
Annotations the server declares
- title: Get an event
- readOnlyHint: true
eventbrite_get_event_descriptionFetch the fully rendered HTML description of an event (summary plus the page modules).No findings
Why it is in this group
- The name "eventbrite_get_event_description" says "get": a word for reading.
Description, as the server wrote it Fetch the fully rendered HTML description of an event (summary plus the page modules). Eventbrite: GET /events/{event_id}/description/.
Annotations the server declares
- title: Get an event's full description
- readOnlyHint: true
eventbrite_get_meFetch the Eventbrite user the token belongs to (name, emails).No findings
Why it is in this group
- The name "eventbrite_get_me" says "get": a word for reading.
Description, as the server wrote it Fetch the Eventbrite user the token belongs to (name, emails). A cheap way to confirm the token works. Eventbrite: GET /users/me/.
Annotations the server declares
- title: Get my user
- readOnlyHint: true
eventbrite_get_orderFetch one order.No findings
Why it is in this group
- The name "eventbrite_get_order" says "get": a word for reading.
Description, as the server wrote it Fetch one order. Use expand=attendees,event to include its tickets and event. Eventbrite: GET /orders/{order_id}/.
Annotations the server declares
- title: Get an order
- readOnlyHint: true
eventbrite_get_sales_reportSales report for one or more events: gross, net, fees, royalty and quantity per time bucket, optionally grouped (by ticket, payment method, country, ...).No findings
Why it is in this group
- The name "eventbrite_get_sales_report" says "get": a word for reading.
Description, as the server wrote it Sales report for one or more events: gross, net, fees, royalty and quantity per time bucket, optionally grouped (by ticket, payment method, country, ...). Eventbrite: GET /reports/sales/.
Annotations the server declares
- title: Get a sales report
- readOnlyHint: true
eventbrite_list_attendeesList attendees (one per sold ticket) of one event OR of all of an organization's events.No findings
Why it is in this group
- The name "eventbrite_list_attendees" says "list": a word for reading.
Description, as the server wrote it List attendees (one per sold ticket) of one event OR of all of an organization's events. Each attendee carries checked_in, cancelled, refunded, status, ticket_class_name, profile and barcodes (status unused/used). Pass exactly one of event_id / organization_id. Eventbrite: GET /events/{event_id}/attendees/ or GET /organizations/{organization_id}/attendees/.
Annotations the server declares
- title: List attendees
- readOnlyHint: true
eventbrite_list_eventsList the events of an organization, filterable by status, name and past/upcoming.No findings
Why it is in this group
- The name "eventbrite_list_events" says "list": a word for reading.
Description, as the server wrote it List the events of an organization, filterable by status, name and past/upcoming. Eventbrite: GET /organizations/{organization_id}/events/.
Annotations the server declares
- title: List an organization's events
- readOnlyHint: true
eventbrite_list_inventory_tiersList the inventory tiers of a tiered or reserved-seating event, with quantity_total, quantity_sold, quantity_pending and linked ticket_class_ids.No findings
Why it is in this group
- The name "eventbrite_list_inventory_tiers" says "list": a word for reading.
Description, as the server wrote it List the inventory tiers of a tiered or reserved-seating event, with quantity_total, quantity_sold, quantity_pending and linked ticket_class_ids. Eventbrite: GET /events/{event_id}/inventory_tiers/.
Annotations the server declares
- title: List an event's inventory tiers
- readOnlyHint: true
eventbrite_list_ordersList orders of one event OR of all of an organization's events: buyer name/email, status, costs.No findings
Why it is in this group
- The name "eventbrite_list_orders" says "list": a word for reading.
Description, as the server wrote it List orders of one event OR of all of an organization's events: buyer name/email, status, costs. Pass exactly one of event_id / organization_id. Eventbrite: GET /events/{event_id}/orders/ or GET /organizations/{organization_id}/orders/.
Annotations the server declares
- title: List orders
- readOnlyHint: true
eventbrite_list_organizationsList the organizations you are a member of.1 finding
Why it is in this group
- The name "eventbrite_list_organizations" says "list": a word for reading.
Findings
- Warn
The description contains "every other tool", wording about other tools or servers.
What this check looks forMatched text
description: "...ganizations you are a member of. Almost every other tool needs an organization_id from here. Eve..."
Description, as the server wrote it List the organizations you are a member of. Almost every other tool needs an organization_id from here. Eventbrite: GET /users/me/organizations/.
Annotations the server declares
- title: List my organizations
- readOnlyHint: true
eventbrite_list_ticket_classesList the ticket types of an event with price, capacity, quantity_sold and sales window.No findings
Why it is in this group
- The name "eventbrite_list_ticket_classes" says "list": a word for reading.
Description, as the server wrote it List the ticket types of an event with price, capacity, quantity_sold and sales window. Eventbrite: GET /events/{event_id}/ticket_classes/.
Annotations the server declares
- title: List an event's ticket classes
- readOnlyHint: true
eventbrite_list_venuesList the saved venues of an organization, with address and capacity.No findings
Why it is in this group
- The name "eventbrite_list_venues" says "list": a word for reading.
Description, as the server wrote it List the saved venues of an organization, with address and capacity. Eventbrite: GET /organizations/{organization_id}/venues/.
Annotations the server declares
- title: List an organization's venues
- readOnlyHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.16.3. Values in angle brackets are yours to fill in.
claude mcp add --transport http eventbrite https://eventbrite.usefulapi.io/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__eventbrite__eventbrite_get_me",
"mcp__eventbrite__eventbrite_list_organizations",
"mcp__eventbrite__eventbrite_list_events",
"mcp__eventbrite__eventbrite_get_event",
"mcp__eventbrite__eventbrite_get_event_description",
"mcp__eventbrite__eventbrite_list_ticket_classes",
"mcp__eventbrite__eventbrite_list_venues",
"mcp__eventbrite__eventbrite_list_attendees",
"mcp__eventbrite__eventbrite_get_attendee",
"mcp__eventbrite__eventbrite_list_orders",
"mcp__eventbrite__eventbrite_get_order",
"mcp__eventbrite__eventbrite_get_capacity",
"mcp__eventbrite__eventbrite_list_inventory_tiers",
"mcp__eventbrite__eventbrite_get_sales_report",
"mcp__eventbrite__eventbrite_get_attendee_report"
],
"ask": [
"mcp__eventbrite__eventbrite_list_discounts"
],
"deny": [
"mcp__eventbrite__eventbrite_create_event",
"mcp__eventbrite__eventbrite_update_event",
"mcp__eventbrite__eventbrite_copy_event",
"mcp__eventbrite__eventbrite_publish_event",
"mcp__eventbrite__eventbrite_unpublish_event",
"mcp__eventbrite__eventbrite_create_ticket_class",
"mcp__eventbrite__eventbrite_update_ticket_class",
"mcp__eventbrite__eventbrite_create_venue",
"mcp__eventbrite__eventbrite_create_discount",
"mcp__eventbrite__eventbrite_update_discount"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as eventbrite. Review it before you use it.