OpenTicket MCP Server
Enables agents to discover events, purchase tickets, and set reminders through MCP tools.
README
OpenTicket
Your agent handles the checkout.
OpenTicket is an agent-native ticketing platform: every ticket is discoverable and purchasable by an AI agent — not just by a human clicking "buy". An agent finds the event, pays within the user's spending limit via Stripe, gets the ticket issued, and the buyer receives an email with a calendar invite (.ics) with reminders. No scraping, no browser automation, no human in the loop.
$ your-agent: "get me a ticket for the jazz night on Friday, up to $50"
✓ search_events("jazz") → evt_a1b2 · Jazz Night · $35
✓ buy_ticket(spend_limit: $50) → pending_payment · checkout_url
✓ payment confirmed → ticket tkt_9f8e · .ics sent to your inbox
Buy tickets with your agent
The fastest path — install the OpenTicket skills once and your agent knows how to discover and buy on its own:
npx skills add LucasLeguizamo/openticket-skills --copy
Then just say: "find me a ticket for the jazz night on Friday and buy it — up to $50."
Or connect via MCP directly
Point any MCP client (Claude, or your own agent) at the server:
{
"mcpServers": {
"openticket": { "url": "https://<host>/api/mcp" }
}
}
| Tool | What it does |
|---|---|
search_events |
Find published events with ticket types, prices, and remaining availability |
get_ticket |
Inspect a ticket type before buying |
buy_ticket |
Purchase within a spend_limit; returns pending_payment + a Stripe checkout_url |
get_order |
Poll order status; returns tickets and the .ics link once confirmed |
set_reminder |
Schedule an email reminder with a .ics (24h and 1h alarms) |
Rules of the road for agents:
- Idempotency: you generate the
idempotency_keyand reuse it on every retry — retries return the same order, never a double charge. - Spending limits:
buy_ticketrequires aspend_limit(amount + currency). Purchases above it are rejected withmandate_exceededbefore any charge. - Structured errors:
sold_out,mandate_exceeded,invalid_intent,event_unavailable,payment_failed— machine-readable, safe to branch on. - Discovery tools are open;
buy_ticketrequires an API key (Authorization: Bearer).
Discovery without MCP
| Endpoint | Purpose |
|---|---|
GET /api/events |
Public JSON feed: published events, ticket types, prices (minor units), live availability |
GET /llms.txt |
Plain-text instructions for agents that don't speak MCP (llmstxt.org) |
GET /openapi.json |
OpenAPI 3.1 spec of the public endpoints |
GET /api/ticker |
Live activity stream (SSE), PII-free |
For organizers
Create an event with ticket types, prices, and quotas; publish it; done — your tickets are instantly purchasable by every agent that speaks MCP, with zero integration work on your side. Flat 5% platform fee, same for human and agent sales. Inventory is enforced atomically in the database: no overselling, even with dozens of agents racing for the last ticket.
How it works
agent ──MCP──▶ ┌─────────────────────────────────────────────┐
web ──UI───▶ │ PurchaseCore (framework-free, core/) │
│ idempotency → spend limit → atomic reserve │──▶ Stripe hosted checkout
│ → order → [webhook] → issue → email + .ics │
└─────────────────────────────────────────────┘
One purchase pipeline, thin adapters per rail. Live today: MCP and web. On the roadmap behind the same adapter: ACP (OpenAI/Stripe Agentic Commerce Protocol), x402 (HTTP 402 / stablecoin), AP2 (mandates as verifiable credentials).
Development & self-hosting
Contributor setup, test harness, and architecture notes: docs/DEVELOPMENT.md. Product spec lives in PRD.md and docs/.
License
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.