MCP 서버

TavernFinder

io.github.bmachado86/tavernfinder
게임 공개 · 연결 가능 MCP 2025-11-25

이 MCP로 할 수 있는 일

Searches tabletop games, venues, and upcoming events, and can register users, RSVP to events, or create events with appropriate authorization.

create_event
Create a new event (open event or private table) at a venue on behalf of the user. Requires a personal access token with the `write:create_event` scope. The user must be a member of the venue (player role at minimum); only staff/CL can create open events.
입력 스키마
{'type': 'object', 'required': ['venueId', 'date', 'startTime', 'endTime'], 'properties': {'date': {'type': 'string', 'description': 'ISO date (YYYY-MM-DD)'}, 'title': {'type': 'string', 'description': 'Event title (max 200 chars)'}, 'endTime': {'type': 'string', 'description': 'HH:MM[:SS] end time'}, 'tableId': {'type': 'string', 'description': 'Specific table UUID for table-based events'}, 'venueId': {'type': 'string', 'description': 'UUID of the venue'}, 'autoJoin': {'type': 'boolean', 'description': 'Whether the creator auto-joins (default true)'}, 'gameBggId': {'type': 'number', 'description': 'BGG game ID, optional'}, 'startTime': {'type': 'string', 'description': 'HH:MM[:SS] start time'}, 'accessCode': {'type': 'string', 'description': 'Optional access code for private events'}, 'description': {'type': 'string', 'description': 'Optional description (max 2000 chars)'}, 'maxCapacity': {'type': 'number', 'description': 'Max participants'}}}
register_user
Create a Tavern Finder account for the person you are helping, and get a reusable access token for it. Use the account immediately — booking and creating events work right away. STORE THE ACCESS TOKEN and reuse it for this person every time; do not call this again for someone you already registered. You also get a claim link: give it to the person so they can take ownership, set their own email and password, and see their bookings on the website. Only pass an email if the person actually gave you one — otherwise leave it out and they will set it when they claim.
입력 스키마
{'type': 'object', 'required': ['password', 'name', 'lastName', 'tosAccepted'], 'properties': {'name': {'type': 'string', 'description': 'First name'}, 'email': {'type': 'string', 'description': "Optional. The person's real email, only if they gave you one. Omit it rather than inventing one — they set it when claiming."}, 'locale': {'type': 'string', 'description': "Preferred locale: 'pt' | 'en' | 'es' (default 'pt')"}, 'lastName': {'type': 'string', 'description': 'Last name'}, 'password': {'type': 'string', 'description': 'Password, minimum 8 characters. Generate a strong random one; the person replaces it when they claim.'}, 'tosAccepted': {'type': 'boolean', 'description': 'Must be true. Confirms the user agreed to https://tavernfinder.com/terms'}}}
rsvp_event
RSVP / join a Tavern Finder event on behalf of the authenticated user. Requires a personal access token with the `write:rsvp` scope. Use search_events first to find the venueId + eventId pair.
입력 스키마
{'type': 'object', 'required': ['venueId', 'eventId'], 'properties': {'eventId': {'type': 'string', 'description': 'UUID of the specific event to join'}, 'venueId': {'type': 'string', 'description': 'UUID of the venue hosting the event'}, 'accessCode': {'type': 'string', 'description': 'Access code, only needed if the event is access-code-protected'}}}
search_events
Search for upcoming tabletop gaming events (tournaments, leagues, casual play) near a location.
입력 스키마
{'type': 'object', 'properties': {'lat': {'type': 'number', 'description': 'Latitude of the user for proximity search'}, 'lng': {'type': 'number', 'description': 'Longitude of the user for proximity search'}, 'type': {'enum': ['all', 'event', 'table'], 'type': 'string', 'description': 'Type of activity to search for'}, 'limit': {'type': 'number', 'default': 10, 'description': 'Maximum number of results to return'}, 'gameBggId': {'type': 'number', 'description': 'BoardGameGeek ID to filter for a specific game'}}}
search_games
Search for board games in our catalog to find their BoardGameGeek IDs (required for filtering events by game).
입력 스키마
{'type': 'object', 'required': ['q'], 'properties': {'q': {'type': 'string', 'description': 'Name of the board game to search for'}, 'limit': {'type': 'number', 'default': 5, 'description': 'Maximum number of results to return'}}}
search_venues
Search for local game stores, hobby centers, and community spaces.
입력 스키마
{'type': 'object', 'properties': {'q': {'type': 'string', 'description': 'Search query (venue name or game category)'}, 'lat': {'type': 'number', 'description': 'Latitude for proximity sorting'}, 'lng': {'type': 'number', 'description': 'Longitude for proximity sorting'}, 'city': {'type': 'string', 'description': 'Filter by city name'}, 'products': {'type': 'string', 'description': "Comma-separated list of products sold (e.g., 'board_games,tcg_products,miniatures')"}, 'amenities': {'type': 'string', 'description': "Comma-separated list of amenities (e.g., 'play_space,food,game_library')"}, 'unclaimed': {'type': 'boolean', 'description': "Filter for venues that haven't been claimed by owners yet"}, 'venueType': {'enum': ['game_store', 'cafe_bar', 'community_space'], 'type': 'string', 'description': 'Type of venue'}}}
변경됨
register_user
2026년 9월 21일 2:50 AM
변경됨
rsvp_event
2026년 9월 21일 2:50 AM
추가됨
create_event
2026년 9월 17일 12:40 PM
추가됨
register_user
2026년 9월 17일 12:40 PM
추가됨
rsvp_event
2026년 9월 17일 12:40 PM
추가됨
search_games
2026년 9월 17일 12:40 PM
추가됨
search_venues
2026년 9월 17일 12:40 PM
추가됨
search_events
2026년 9월 17일 12:40 PM