{"ok":true,"transport":"streamable-http","fallback":"json-rpc","endpoint":"https://foobos.net/api/agent/mcp","protocol":"2025-11-25","protocols":["2025-11-25","2025-03-26","2025-06-18","2024-11-05"],"toward":"2026-07-28","sessions":false,"tools":[{"name":"list_picks","description":"Staff picks in Boston or Denver, each with a one-line reason. Use this for “what should I see?”, “what’s good”, “anything worth going to?”, “featured”, “date night”, “romantic”, or any public curated list. Always cite `url` (app deep link /e/?id=). Do not rewrite to /event/. Omit collection to list every public collection (id + title + counts) plus the default featured+popular pages. Intent → collection: date night / romantic / nice night out → date_night (do NOT use sort=popular alone); what’s good / featured → featured; big names / popular → popular; local / underrated → local_scene (or local_bands / under_the_radar); comedy night → comedy (for “comedy this week?” prefer search_shows event_type=comedy); jazz → jazz (or search genre=jazz); kids / family → tots_picks; older crowd / boomer → senior; foobos / Scott / Tot staff → foobos / scotts_picks / tots_picks; free curated → free_tonight (or shows_free); punk curated → punk (or search genre=punk); weeknight gems → weeknight_gems; St. Patrick’s → st_patricks. Not personalized For You — there is no account on this API. Each pick includes editorial `why` when the curated row has one so you can cite the reason. Each collection is paginated (default 20, max 50) and includes its own total.","inputSchema":{"type":"object","properties":{"collection":{"type":"string","enum":["featured","popular","date_night","local_scene","local_bands","under_the_radar","comedy","jazz","foobos","scotts_picks","tots_picks","senior","free_tonight","punk","weeknight_gems","st_patricks"],"description":"One public curated key. Omit for available catalog + featured/popular."},"city":{"type":"string","enum":["boston","denver"],"default":"boston","description":"boston (default: Boston, Cambridge, Somerville, Greater Boston) or denver (Denver, Boulder, the Colorado Front Range). Set denver for anything in Colorado."},"via":{"type":"string","enum":["muse","chatgpt","claude","assistant"],"description":"Inbound UTM source written onto every Foobos deep link. Default muse."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":20,"description":"Page size. Default 20, max 50. Do not request the full list — tonight is ~174 shows / ~36k tokens."},"offset":{"type":"integer","minimum":0,"default":0,"description":"Rows to skip. Use with the returned total to page."}}},"title":"Staff picks","annotations":{"title":"Staff picks","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"shows_free","description":"Free shows in Boston or Denver. Use this for “what’s free tonight?” or “free shows this weekend”. Returns only free listings (is_free / price 0). Default window is tonight (today + next 2 days). Pass window=weekend for Fri–Sun, window=upcoming for today onward. Paginated: default 20, max 50, always includes total. Default sort=evening. Do not call shows_tonight and filter client-side — tonight is ~174 shows.","inputSchema":{"type":"object","properties":{"window":{"type":"string","enum":["tonight","weekend","upcoming"],"default":"tonight","description":"tonight (default, today+2), weekend (Fri–Sun), or upcoming (today onward)."},"venue":{"type":"string","description":"Optional venue id, slug, or name substring."},"event_type":{"type":"string","enum":["music","comedy"],"description":"comedy or music. Comedy is public event_type / finder ty=c, NOT a genre tag. Use for “comedy this week?”."},"sort":{"type":"string","enum":["time","evening","popular"],"default":"evening","description":"evening (default): evening + upcoming first, not brunch-first chrono. time: raw chronological. popular: editorial picks first, then evening."},"city":{"type":"string","enum":["boston","denver"],"default":"boston","description":"boston (default: Boston, Cambridge, Somerville, Greater Boston) or denver (Denver, Boulder, the Colorado Front Range). Set denver for anything in Colorado."},"via":{"type":"string","enum":["muse","chatgpt","claude","assistant"],"description":"Inbound UTM source written onto every Foobos deep link. Default muse."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":20,"description":"Page size. Default 20, max 50. Do not request the full list — tonight is ~174 shows / ~36k tokens."},"offset":{"type":"integer","minimum":0,"default":0,"description":"Rows to skip. Use with the returned total to page."}}},"title":"Free shows","annotations":{"title":"Free shows","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"search_shows","description":"Search every upcoming concert and comedy show in Boston or Denver. Use this for “is [artist] playing?”, “shows at [venue]”, a date or date range, a genre, or “comedy this week?”. artist / q: case- and accent-insensitive substring of billed names (Peña matches Chance Peña). venue: id, id_variant, slug, or name substring (paradise, paradise_rock_club, Sinclair). date: one YYYY-MM-DD. date_from/date_to: inclusive range. Unset dates default to upcoming (today onward). genre=/genres= is the finder mega-category (latin, jazz, rock…). Example: genre=latin + date=2026-10-15. event_type=comedy uses the public comedy field (finder ty=c / worker event_type), not genre tags. Always cite `url` (`/e/?id=`). Do not rewrite to /event/. free=true for free shows. For “what should I see?” or “date night” use list_picks instead of sort=popular. Paginated: default 20, max 50, always includes total.","inputSchema":{"type":"object","properties":{"artist":{"type":"string","description":"Artist substring. Alias: q. Example: Peña."},"q":{"type":"string","description":"Alias of artist."},"venue":{"type":"string","description":"Venue id, variant, slug, or name substring."},"date":{"type":"string","description":"Exact YYYY-MM-DD. Overrides date_from/date_to."},"date_from":{"type":"string","description":"Inclusive range start YYYY-MM-DD."},"date_to":{"type":"string","description":"Inclusive range end YYYY-MM-DD."},"free":{"type":"boolean","description":"If true, only free shows (listing flag or price 0). Use for “what’s free tonight?”. Alias: is_free."},"is_free":{"type":"boolean","description":"If true, only free shows (listing flag or price 0). Use for “what’s free tonight?”. Alias: is_free."},"event_type":{"type":"string","enum":["music","comedy"],"description":"comedy or music. Comedy is public event_type / finder ty=c, NOT a genre tag. Use for “comedy this week?”."},"genre":{"type":"string","description":"Finder mega-category (rock, punk, pop, jazz, soul, blues, folk, electronic, hiphop, reggae, classical, latin). Alias: genres. Comedy is event_type, not a genre. Joined from finder.json `g` — do not invent tags."},"genres":{"type":"string","description":"Comma-separated megas. Alias of genre."},"area":{"type":"string","description":"Finder WHERE pill or neighborhood (Boston: cambridge, allston_brighton, somerville…; Denver: den_downtown, den_colfax, boulder…). Aliases: neighborhood, where."},"neighborhood":{"type":"string","description":"Alias of area."},"max_price":{"type":"number","description":"Numeric price ceiling. Free passes; unknown price excluded."},"all_ages":{"type":"boolean","description":"If true, only all-ages (a/a)."},"mbta":{"type":"boolean","description":"Boston only. If true, only MBTA-accessible rooms."},"is_new":{"type":"boolean","description":"If true, only just-added (finder new)."},"max_capacity":{"type":"integer","description":"Known venues.json capacity ≤ N. intimate=true aliases max_capacity=500 (hint, not a stored flag)."},"min_capacity":{"type":"integer","description":"Known venues.json capacity ≥ N. large=true aliases min_capacity=5000."},"intimate":{"type":"boolean","description":"Hint alias of max_capacity=500. Unknown capacity excluded."},"large":{"type":"boolean","description":"Hint alias of min_capacity=5000."},"sort":{"type":"string","enum":["time","evening","popular"],"default":"time","description":"evening (default): evening + upcoming first, not brunch-first chrono. time: raw chronological. popular: editorial picks first, then evening."},"city":{"type":"string","enum":["boston","denver"],"default":"boston","description":"boston (default: Boston, Cambridge, Somerville, Greater Boston) or denver (Denver, Boulder, the Colorado Front Range). Set denver for anything in Colorado."},"via":{"type":"string","enum":["muse","chatgpt","claude","assistant"],"description":"Inbound UTM source written onto every Foobos deep link. Default muse."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":20,"description":"Page size. Default 20, max 50. Do not request the full list — tonight is ~174 shows / ~36k tokens."},"offset":{"type":"integer","minimum":0,"default":0,"description":"Rows to skip. Use with the returned total to page."}}},"title":"Search shows","annotations":{"title":"Search shows","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"shows_tonight","description":"Concerts and comedy tonight and the next two days in Boston (default) or Denver (city=denver), in the city's own time zone. Use this for “what's on tonight?”, “anything going on?”, “live music near me tonight”. Default sort=evening: evening and upcoming first, not brunch-first chrono. sort=time for raw order; sort=popular bumps editorial picks. For “what’s free tonight?” set free=true or call shows_free. For “what should I see?” or date night call list_picks. Always cite `url` (`/e/?id=`). Do not rewrite to /event/. Returns a page of shows (default 20, max 50) plus total. Page with offset; never ask for the full tonight list (~174 shows / ~36k tokens).","inputSchema":{"type":"object","properties":{"free":{"type":"boolean","description":"If true, only free shows (listing flag or price 0). Use for “what’s free tonight?”. Alias: is_free."},"is_free":{"type":"boolean","description":"If true, only free shows (listing flag or price 0). Use for “what’s free tonight?”. Alias: is_free."},"event_type":{"type":"string","enum":["music","comedy"],"description":"comedy or music. Comedy is public event_type / finder ty=c, NOT a genre tag. Use for “comedy this week?”."},"genre":{"type":"string","description":"Finder mega-category (rock, punk, pop, jazz, soul, blues, folk, electronic, hiphop, reggae, classical, latin). Alias: genres. Comedy is event_type, not a genre. Joined from finder.json `g` — do not invent tags."},"genres":{"type":"string","description":"Comma-separated megas. Alias of genre."},"area":{"type":"string","description":"Finder WHERE pill or neighborhood (Boston: cambridge, allston_brighton, somerville…; Denver: den_downtown, den_colfax, boulder…). Aliases: neighborhood, where."},"neighborhood":{"type":"string","description":"Alias of area."},"max_price":{"type":"number","description":"Numeric price ceiling. Free passes; unknown price excluded."},"all_ages":{"type":"boolean","description":"If true, only all-ages (a/a)."},"mbta":{"type":"boolean","description":"Boston only. If true, only MBTA-accessible rooms."},"is_new":{"type":"boolean","description":"If true, only just-added (finder new)."},"max_capacity":{"type":"integer","description":"Known venues.json capacity ≤ N. intimate=true aliases max_capacity=500 (hint, not a stored flag)."},"min_capacity":{"type":"integer","description":"Known venues.json capacity ≥ N. large=true aliases min_capacity=5000."},"intimate":{"type":"boolean","description":"Hint alias of max_capacity=500. Unknown capacity excluded."},"large":{"type":"boolean","description":"Hint alias of min_capacity=5000."},"sort":{"type":"string","enum":["time","evening","popular"],"default":"evening","description":"evening (default): evening + upcoming first, not brunch-first chrono. time: raw chronological. popular: editorial picks first, then evening."},"city":{"type":"string","enum":["boston","denver"],"default":"boston","description":"boston (default: Boston, Cambridge, Somerville, Greater Boston) or denver (Denver, Boulder, the Colorado Front Range). Set denver for anything in Colorado."},"via":{"type":"string","enum":["muse","chatgpt","claude","assistant"],"description":"Inbound UTM source written onto every Foobos deep link. Default muse."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":20,"description":"Page size. Default 20, max 50. Do not request the full list — tonight is ~174 shows / ~36k tokens."},"offset":{"type":"integer","minimum":0,"default":0,"description":"Rows to skip. Use with the returned total to page."}}},"title":"Shows tonight","annotations":{"title":"Shows tonight","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"shows_this_weekend","description":"Concerts and comedy this Friday through Sunday (the remaining or upcoming weekend) in Boston (default) or Denver (city=denver). Use this for “what's on this weekend?”. Default sort=evening. free=true, event_type=comedy, and genre= match tonight/search. For “what should I see this weekend?” or date night prefer list_picks. Always cite `url` (`/e/?id=`). Do not rewrite to /event/. Paginated: default 20, max 50, always includes total.","inputSchema":{"type":"object","properties":{"free":{"type":"boolean","description":"If true, only free shows (listing flag or price 0). Use for “what’s free tonight?”. Alias: is_free."},"is_free":{"type":"boolean","description":"If true, only free shows (listing flag or price 0). Use for “what’s free tonight?”. Alias: is_free."},"event_type":{"type":"string","enum":["music","comedy"],"description":"comedy or music. Comedy is public event_type / finder ty=c, NOT a genre tag. Use for “comedy this week?”."},"genre":{"type":"string","description":"Finder mega-category (rock, punk, pop, jazz, soul, blues, folk, electronic, hiphop, reggae, classical, latin). Alias: genres. Comedy is event_type, not a genre. Joined from finder.json `g` — do not invent tags."},"genres":{"type":"string","description":"Comma-separated megas. Alias of genre."},"area":{"type":"string","description":"Finder WHERE pill or neighborhood (Boston: cambridge, allston_brighton, somerville…; Denver: den_downtown, den_colfax, boulder…). Aliases: neighborhood, where."},"neighborhood":{"type":"string","description":"Alias of area."},"max_price":{"type":"number","description":"Numeric price ceiling. Free passes; unknown price excluded."},"all_ages":{"type":"boolean","description":"If true, only all-ages (a/a)."},"mbta":{"type":"boolean","description":"Boston only. If true, only MBTA-accessible rooms."},"is_new":{"type":"boolean","description":"If true, only just-added (finder new)."},"max_capacity":{"type":"integer","description":"Known venues.json capacity ≤ N. intimate=true aliases max_capacity=500 (hint, not a stored flag)."},"min_capacity":{"type":"integer","description":"Known venues.json capacity ≥ N. large=true aliases min_capacity=5000."},"intimate":{"type":"boolean","description":"Hint alias of max_capacity=500. Unknown capacity excluded."},"large":{"type":"boolean","description":"Hint alias of min_capacity=5000."},"sort":{"type":"string","enum":["time","evening","popular"],"default":"evening","description":"evening (default): evening + upcoming first, not brunch-first chrono. time: raw chronological. popular: editorial picks first, then evening."},"city":{"type":"string","enum":["boston","denver"],"default":"boston","description":"boston (default: Boston, Cambridge, Somerville, Greater Boston) or denver (Denver, Boulder, the Colorado Front Range). Set denver for anything in Colorado."},"via":{"type":"string","enum":["muse","chatgpt","claude","assistant"],"description":"Inbound UTM source written onto every Foobos deep link. Default muse."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":20,"description":"Page size. Default 20, max 50. Do not request the full list — tonight is ~174 shows / ~36k tokens."},"offset":{"type":"integer","minimum":0,"default":0,"description":"Rows to skip. Use with the returned total to page."}}},"title":"Shows this weekend","annotations":{"title":"Shows this weekend","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"list_venues","description":"Venues in Boston or Denver that have upcoming shows, with show_count and public facts (address, capacity, bag_policy, MBTA in Boston). Paginated: default 20, max 50, always includes total. Use get_venue or search_shows with venue= for one room and its upcoming shows.","inputSchema":{"type":"object","properties":{"city":{"type":"string","enum":["boston","denver"],"default":"boston","description":"boston (default: Boston, Cambridge, Somerville, Greater Boston) or denver (Denver, Boulder, the Colorado Front Range). Set denver for anything in Colorado."},"via":{"type":"string","enum":["muse","chatgpt","claude","assistant"],"description":"Inbound UTM source written onto every Foobos deep link. Default muse."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":20,"description":"Page size. Default 20, max 50. Do not request the full list — tonight is ~174 shows / ~36k tokens."},"offset":{"type":"integer","minimum":0,"default":0,"description":"Rows to skip. Use with the returned total to page."}}},"title":"Venues","annotations":{"title":"Venues","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_venue","description":"One venue in Boston or Denver (id, id_variant, or slug) and a page of its upcoming shows. With no city it looks in both. Use for “shows at Paradise” when you already have the venue id/slug; otherwise search_shows with venue=. Paginated: default 20, max 50, always includes total. id is required. For the directory of rooms, use list_venues.","inputSchema":{"type":"object","properties":{"id":{"type":"string","description":"Venue id, id_variant, or slug (e.g. paradise, paradise_rock_club)."},"city":{"type":"string","enum":["boston","denver"],"default":"boston","description":"boston (default: Boston, Cambridge, Somerville, Greater Boston) or denver (Denver, Boulder, the Colorado Front Range). Set denver for anything in Colorado."},"via":{"type":"string","enum":["muse","chatgpt","claude","assistant"],"description":"Inbound UTM source written onto every Foobos deep link. Default muse."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":20,"description":"Page size. Default 20, max 50. Do not request the full list — tonight is ~174 shows / ~36k tokens."},"offset":{"type":"integer","minimum":0,"default":0,"description":"Rows to skip. Use with the returned total to page."}},"required":["id"]},"title":"One venue","annotations":{"title":"One venue","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_show","description":"One show by its id (from any list here, or the id= in a foobos.net/e/ link), in either city. Use for “tell me more about that one”: the full bill, time, price, ages, sold out, the note on what is special about the night, and the room's facts (address, capacity, bag policy, transit). Always cite `url`.","inputSchema":{"type":"object","properties":{"id":{"type":"string","description":"Show id, e.g. b994eef4946a."},"via":{"type":"string","enum":["muse","chatgpt","claude","assistant"],"description":"Inbound UTM source written onto every Foobos deep link. Default muse."}},"required":["id"]},"title":"One show","annotations":{"title":"One show","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"list_guides","description":"Hand-made foobos guides in Boston or Denver: themed lists like “Rare Shows”, “Cool New Shows”, “Top Shows This Weekend”, “On The Green Line” or “Altitude Adjustment”, each with a curator and a short intro. Use when someone wants ideas, a theme, or “what's special”. Then call get_guide with an id. Paginated: default 20, max 50, always includes total.","inputSchema":{"type":"object","properties":{"city":{"type":"string","enum":["boston","denver"],"default":"boston","description":"boston (default: Boston, Cambridge, Somerville, Greater Boston) or denver (Denver, Boulder, the Colorado Front Range). Set denver for anything in Colorado."},"via":{"type":"string","enum":["muse","chatgpt","claude","assistant"],"description":"Inbound UTM source written onto every Foobos deep link. Default muse."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":20,"description":"Page size. Default 20, max 50. Do not request the full list — tonight is ~174 shows / ~36k tokens."},"offset":{"type":"integer","minimum":0,"default":0,"description":"Rows to skip. Use with the returned total to page."}}},"title":"Guides","annotations":{"title":"Guides","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}},{"name":"get_guide","description":"One guide's upcoming shows in the curator's order, each with the curator's note as `why` when there is one. With no city it uses the city where the guide has the most shows. Always cite each show's `url`. Paginated: default 20, max 50, always includes total.","inputSchema":{"type":"object","properties":{"id":{"type":"string","description":"Guide id from list_guides, e.g. rare-shows."},"city":{"type":"string","enum":["boston","denver"],"description":"boston (default: Boston, Cambridge, Somerville, Greater Boston) or denver (Denver, Boulder, the Colorado Front Range). Set denver for anything in Colorado."},"via":{"type":"string","enum":["muse","chatgpt","claude","assistant"],"description":"Inbound UTM source written onto every Foobos deep link. Default muse."},"limit":{"type":"integer","minimum":1,"maximum":50,"default":20,"description":"Page size. Default 20, max 50. Do not request the full list — tonight is ~174 shows / ~36k tokens."},"offset":{"type":"integer","minimum":0,"default":0,"description":"Rows to skip. Use with the returned total to page."}},"required":["id"]},"title":"One guide","annotations":{"title":"One guide","readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}}]}