Real events, reviewed places, and ticket checkout across the Caribbean and Latin America.
Inferred from the transports this listing declares (streamable-http). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.
Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.
Read from a real MCP initialize → tools/list handshake against the declared endpoint. No tool was ever invoked — tools/list is the read-only introspection call the protocol defines for this. It reflects what the server advertised at that moment; a hosted endpoint is not pinned to any version and can change without notice.
https://pifini.net/api/mcp6 tools · 133mssearch_eventsSearch upcoming events (festivals, carnivals, concerts, food + cultural events) across the Caribbean, Latin America, and beyond. Returns event names, dates, locations, category, price (when known), and page URLs. Strongest coverage: Barbados, Trinidad, Jamaica, Bahamas, Mexico.Search upcoming events (festivals, carnivals, concerts, food + cultural events) across the Caribbean, Latin America, and beyond. Returns event names, dates, locations, category, price (when known), and page URLs. Strongest coverage: Barbados, Trinidad, Jamaica, Bahamas, Mexico.
| Parameter | Type | Description |
|---|---|---|
| query | string | Free-text search over title and description |
| country | string | ISO-3166 alpha-2 country code, e.g. BB, TT, JM |
| city | string | City name filter |
| category | string | Filter by event category |
| entry_model | string | Filter by how someone gets in: 'free' = confirmed free entry, 'ticketed' = Pifini sells tickets, 'external' = paid but sold elsewhere, 'mixed' = umbrella event… |
| starts_after | string | Earliest start. A bare date ('2026-08-01') matches the event's LOCAL calendar date in its own timezone and is inclusive — this is what you want for 'what's on… |
| starts_before | string | Latest start, same rules as starts_after. A bare date is inclusive of that whole local day, so starts_after='2026-08-13' with starts_before='2026-08-13' return… |
| include_past | boolean | Include past events (default false) |
| near_lat | number | Latitude to search near (pair with near_lng) |
| near_lng | number | Longitude to search near (pair with near_lat) |
| radius_km | number | Search radius in km around near_lat/near_lng (default 25, max 500) |
| limit | number | Max results, 1-50 (default 10) |
| offset | number | Skip this many matching results (for paging past the limit) |
get_eventFull details for one event by slug: description, venue, date/time, and available ticket types with prices and remaining stock. Use the slug from search_events.Full details for one event by slug: description, venue, date/time, and available ticket types with prices and remaining stock. Use the slug from search_events.
| Parameter | Type | Description |
|---|---|---|
| slug* | string | Event slug from search_events |
search_placesSearch Pifini's places directory across the Caribbean and Latin America — restaurants, bars, beaches, attractions, venues, hotels, tour operators, professionals, and services. Every result carries listing_type: 'curated' is a small, editorially reviewed set of flagship entries; 'directory' is the m…Search Pifini's places directory across the Caribbean and Latin America — restaurants, bars, beaches, attractions, venues, hotels, tour operators, professionals, and services. Every result carries listing_type: 'curated' is a small, editorially reviewed set of flagship entries; 'directory' is the m…
| Parameter | Type | Description |
|---|---|---|
| query | string | Free-text search over name and summary |
| entity_type | string | Filter by broad type of place |
| category | string | Filter by exact category value (e.g. 'caribbean_restaurant'). Use list_categories to discover valid values — there are 1,000+, not a small fixed set. |
| country | string | ISO-3166 alpha-2 country code |
| city | string | City name filter |
| near_lat | number | Latitude to search near (pair with near_lng) |
| near_lng | number | Longitude to search near (pair with near_lat) |
| radius_km | number | Search radius in km around near_lat/near_lng (default 25, max 500) |
| limit | number | Max results, 1-50 (default 10) |
| offset | number | Skip this many matching results (for paging past the limit) |
get_placeFull details for one place by slug, including its most recent published reviews if any exist. listing_type distinguishes a curated entry from an unreviewed directory listing (see search_places) — recent_reviews is often an empty array, which means no reviews yet, not a low-quality place. Use the sl…Full details for one place by slug, including its most recent published reviews if any exist. listing_type distinguishes a curated entry from an unreviewed directory listing (see search_places) — recent_reviews is often an empty array, which means no reviews yet, not a low-quality place. Use the sl…
| Parameter | Type | Description |
|---|---|---|
| slug* | string | Place slug from search_places |
list_categoriesDiscover valid category values for search_places. Pifini's places directory uses Overture Maps' taxonomy — over 1,000 specific values like caribbean_restaurant, church_cathedral, landmark_and_historical_building — rather than broad buckets, so guessing a category string will usually miss. Call this…Discover valid category values for search_places. Pifini's places directory uses Overture Maps' taxonomy — over 1,000 specific values like caribbean_restaurant, church_cathedral, landmark_and_historical_building — rather than broad buckets, so guessing a category string will usually miss. Call this…
| Parameter | Type | Description |
|---|---|---|
| query | string | Rough term to match against category values, e.g. 'coffee', 'beach' |
| country | string | ISO-3166 alpha-2 country code — only return categories present in that country |
| limit | number | Max results, 1-100 (default 30) |
create_ticket_checkoutCreate a secure Stripe-hosted payment link for event tickets. Returns a checkout URL — give it to the human to complete payment themselves; tickets with QR codes are emailed after payment. Get ticket_type_id values from get_event. Always confirm the exact tickets and total with the human before cal…Create a secure Stripe-hosted payment link for event tickets. Returns a checkout URL — give it to the human to complete payment themselves; tickets with QR codes are emailed after payment. Get ticket_type_id values from get_event. Always confirm the exact tickets and total with the human before cal…
| Parameter | Type | Description |
|---|---|---|
| event_slug* | string | Event slug |
| items* | array | Ticket selections |
| buyer_email* | string | Email to deliver tickets to (required — ask the human) |
| buyer_name | string | Buyer's name (optional) |
6 of 6 tools published a description.
Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.
Real events, reviewed places, and ticket checkout across the Caribbean and Latin America.
Linked names open Forge’s index of every entry observed exposing that tool. Browse all indexed tools.
This entry publishes no npm package, so Forge has no dependency tree for it. That is a gap in coverage — not a statement that it has no dependencies.