UNPKG

@ibraheem4/eventbrite-mcp

Version:

An Eventbrite MCP server for interacting with Eventbrite's API

107 lines (106 loc) 2.29 kB
export interface EventbriteEvent { id: string; name: { text: string; html: string; }; description?: { text: string; html: string; }; url: string; start: { timezone: string; local: string; utc: string; }; end: { timezone: string; local: string; utc: string; }; venue_id?: string; venue?: { id: string; name: string; address: { address_1: string; address_2?: string; city: string; region?: string; postal_code: string; country: string; }; }; capacity?: number; category_id?: string; is_free: boolean; logo_id?: string; logo?: { url: string; }; } export interface EventbriteVenue { id: string; name: string; address: { address_1: string; address_2?: string; city: string; region?: string; postal_code: string; country: string; }; capacity?: number; } export interface EventbriteCategory { id: string; name: string; short_name?: string; } export interface SearchEventsParams { q?: string; location?: { latitude: number; longitude: number; within?: string; }; categories?: string[]; start_date?: string; end_date?: string; price?: "free" | "paid"; page?: number; page_size?: number; } export declare class EventbriteApiClient { private apiKey; private client; private baseUrl; constructor(apiKey: string); /** * Search for events */ searchEvents(params: SearchEventsParams): Promise<{ events: EventbriteEvent[]; pagination: any; }>; /** * Get event details by ID */ getEvent(eventId: string): Promise<EventbriteEvent>; /** * Get venue details by ID */ getVenue(venueId: string): Promise<EventbriteVenue>; /** * Get categories */ getCategories(): Promise<EventbriteCategory[]>; /** * Get user's events (requires user OAuth token) */ getUserEvents(page?: number, pageSize?: number): Promise<{ events: EventbriteEvent[]; pagination: any; }>; }