Skip to main content
Glama
pifini-mcp

pifini-mcp

Pifini MCP

A thin stdio ↔ HTTPS proxy to Pifini's hosted MCP server — real events, reviewed places, and ticket checkout across the Caribbean & Latin America.

If your MCP client supports remote HTTP servers, you don't need this package at all. Connect directly to:

https://pifini.net/api/mcp

That's a stateless Streamable-HTTP endpoint. This package exists only for clients that speak stdio (a local command + JSON-RPC over stdin/stdout) instead. It has no logic of its own — it reads each request from stdin, forwards it verbatim to the hosted endpoint over HTTPS, and writes the response back to stdout. Nothing here is hardcoded, so every method the hosted server supports (initialize, tools/list, tools/call, ...) works automatically without this proxy needing to know what a "tool" even is.

Install

npx pifini-mcp

Or add it to your MCP client's config (Claude Desktop example):

{
  "mcpServers": {
    "pifini": {
      "command": "npx",
      "args": ["-y", "pifini-mcp"]
    }
  }
}

Related MCP server: @inbin/mcp

What Pifini's MCP server does

  • search_events / get_event — search and read real festivals, carnivals, concerts, and cultural events, strongest coverage in the Caribbean and Latin America.

  • search_places / get_place — search reviewed restaurants, bars, venues, attractions, and professionals, including their published reviews.

  • create_ticket_checkout — generate a Stripe-hosted payment link for event tickets. The agent hands the link to its human, who completes payment themselves — agents never see card details.

Read tools are open; no API key required. Full documentation, tool schemas, and a live example live at pifini.net/agents.

Why a proxy package exists at all

Pifini's server is closed-source and hosted (it's part of a larger commercial application), so there's no public repository to point an MCP client's stdio launcher at directly. This package is that missing piece: a small, genuinely open-source (MIT), auditable bridge — not a stand-in for real server code, just the stdio transport Pifini's hosted server doesn't speak natively.

It holds no API keys, no database access, and no business logic. Every request it receives is forwarded byte-for-byte to https://pifini.net/api/mcp (or the URL in PIFINI_MCP_URL, if you want to point it somewhere else for testing) and the response is passed back unmodified.

License

MIT — see LICENSE.

Available Tools

6 tools
create_ticket_checkoutCreate ticket checkout linkA

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 calling this.

Inputs: items (required), event_slug (required), buyer_email (required), buyer_name. Returns: event, total, currency, order_id, +2 more

get_eventGet event detailsA
Read-onlyIdempotent

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.

Inputs: slug (required). Returns: url, city, slug, price, +16 more

get_placeGet place details + reviewsA
Read-onlyIdempotent

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 slug from search_places.

Inputs: slug (required). Returns: url, city, name, slug, +14 more

list_categoriesList place categoriesA
Read-onlyIdempotent

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 first with a rough query (e.g. 'coffee' or 'beach') to find the exact value, then pass it to search_places' category parameter.

Inputs: limit, query, country. Returns: count, categories

search_eventsSearch eventsA
Read-onlyIdempotent

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.

Inputs: city, limit, query, offset, +9 more. Returns: count, events

search_placesSearch places and businessesA
Read-onlyIdempotent

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 much larger set sourced from open map data (name, category, location, contact info) that has no reviews yet — say so rather than implying a recommendation the data doesn't back up. Category is a specific Overture taxonomy value (e.g. caribbean_restaurant, church_cathedral), not a broad bucket — call list_categories first if unsure of the exact value. Results marked is_sponsored are paid placements — disclose that when recommending.

Inputs: city, limit, query, offset, +6 more. Returns: count, places

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4.6/5.0

    Scored across 6 tools

    Disambiguation5/5

    Each tool targets a distinct function: searching vs. getting details for events and places, listing categories, and creating a checkout. There is no overlap or ambiguity between any pair of tools.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern in snake_case: search_events, get_event, search_places, get_place, list_categories, create_ticket_checkout. This makes the surface predictable and easy to navigate.

    Tool Count5/5

    With 6 tools, the set is well-scoped for the server's purpose—covering both events and places with search, detail retrieval, and a checkout action. It is neither too sparse nor overly dense.

    Completeness5/5

    The tools cover the full consumer workflow: discover events/places, get full details, and purchase tickets. The supporting list_categories tool fills a potential gap in place search. No obvious missing operations for the stated domain.

    Maintenance

    ActivityNo data
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      C
      maintenance
      A thin stdio proxy to Quantustik's hosted MCP server, providing live S&P 500 signals, forecasts, and market data for MCP clients that only support local stdio servers.
      47 npm
      MIT
    • A
      license
      A
      quality
      C
      maintenance
      Proxies stdio MCP clients to Inbin's remote MCP endpoint, exposing tools to list inboxes, search and retrieve events, and inspect schemas.
      5
      289 npm
      1
      MIT
    • A
      license
      C
      quality
      C
      maintenance
      Minimal MCP server exposing the Connectif HTTP API to MCP clients over stdio, enabling operations like contacts, purchases, products, exports, imports, workflows, and more.
      12
      8 npm
      MIT
    • A
      license
      A
      quality
      B
      maintenance
      Zero-dependency stdio bridge to Moltline Studio's fleet of 14 hosted MCP servers covering code review, time operations, data transforms, business ops, education, research, outreach and more. Free tier requires no registration; premium tools unlock with a license. Independently audited, MCPize Verified A.
      10
      MIT