About accessoticketing-mcp
accessoticketing-mcp is an MCP server for reading accesso Passport mobile ticket links. It retrieves order and admission details, barcodes, and Google Wallet links without requiring an account login.
Key features
- 01Read orders and admissions
- 02Retrieve individual ticket details
- 03Save or return barcode images
- 04Get Google Wallet links
- 05Resolve tracked links
- 06Check server and link status
Use cases
- 01Review admissions in an emailed ticket link
- 02Save ticket barcodes as images
- 03Retrieve Google Wallet pass links
MCP support
Exposes tools for MCP clients to read accesso Passport ticket-link data, retrieve barcodes and wallet links, and check link status. Order data is read-only; barcode saving can write PNG files.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y @chrischall/accessoticketing-mcpACCESSO_TICKET_URLSecretOptional default accesso ticket link from an order-confirmation email.ACCESSO_OUTPUT_DIROptional directory for saved barcode images.ACCESSO_NO_FILE_OUTPUTSet to 1 where the filesystem isn't the user's (a hosted deployment) so barcodes return inline.Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
6Saved tool list · updated 1w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| url | string | No | The accesso ticket link from the order-confirmation email. Optional when ACCESSO_TICKET_URL is set. |
| view | enum | No | Response shape: "compact" (default) drops fields the response already carries elsewhere; "full" returns every field this server understands. compact returns the slim per-ticket projection — identity, participant, date, time; "full" returns every field parsed from the order page.compact | full |
| include_terms | boolean | No | Include each ticket's terms and conditions (long, and identical per venue). |
Details
From the project READMEaccessoticketing-mcp
An MCP server for accesso Passport mobile ticket links — the URL a venue emails you after a purchase. Reads the order and every admission on it, the scannable barcodes, and Google Wallet save links.
accesso powers ticketing for a lot of theme parks, water parks, camps, museums and festivals, so one server covers all of them: the merchant is encoded in the link.
Developed and maintained by AI (Claude Code). Use at your own discretion.
What it needs
No login. These links carry their own credential — the oToken in the query
string is what authorises the read. There is no account, no password, no browser
session, and no bot wall.
Warning
That also means the link is a secret. Anyone holding it can view and add the order's tickets. Treat it like a password: don't paste it into issues, logs or chats. This server redacts the tokens from its own output and error messages.
Install
npx -y @chrischall/accessoticketing-mcp
// claude_desktop_config.json / .mcp.json
{
"mcpServers": {
"accessoticketing": {
"command": "npx",
"args": ["-y", "@chrischall/accessoticketing-mcp"],
"env": { "ACCESSO_TICKET_URL": "https://media-engine.na3.accessoticketing.com/tickets/v1/..." }
}
}
}
ACCESSO_TICKET_URL is optional — it just saves passing url on every call. The
server starts fine without it and reports the missing link on first use.
| Variable | Required | Purpose |
|---|---|---|
ACCESSO_TICKET_URL | no | Default ticket link, used when a tool is called without url. |
ACCESSO_OUTPUT_DIR | no | Where accesso_save_barcodes writes PNGs. Defaults to cwd, or ~/Downloads when cwd is / (Claude Desktop). |
ACCESSO_NO_FILE_OUTPUT | no | Set to 1 where the filesystem isn't the user's (a hosted deployment) so barcodes return inline. |
Tools
| Tool | Does |
|---|---|
accesso_get_order | The order and every admission: product, participant, date, start time, instructions. Returns the slim per-ticket list by default; view: "full" for every parsed field. |
accesso_get_ticket | One admission in full, by index. |
accesso_save_barcodes | Writes barcode PNGs and returns paths, or returns the images inline. |
accesso_get_wallet_passes | Google Wallet save links for the tickets. |
accesso_resolve_link | Unwraps an email click-tracking link to the accesso URL it hides. |
accesso_healthcheck | Confirms reachability and whether a default link is configured. |
Nothing here mutates an order. Every tool is read-only except accesso_save_barcodes, which writes PNG files to disk (never overwriting one) unless asked for inline images.
> what do we have booked tomorrow?
9:00 AM Tiny Trekkers Full-Day (Ages 4-7) — one participant
9:00 AM Whitewater Kayak Camp I: Intro — two participants
all-day Lunch / Snack / Early Drop-Off — nine more admissions
Shell-out skill
Prefer a shell? skills/accesso-tickets/ does the same reading with curl and a
dependency-free parser, no server required. It ships with the package.
Notes on the data
date/timeare the merchant's local wall-clock strings with no timezone attached. They are passed through verbatim rather than converted.- Merchant-specific detail rows (
Guest Number,Web Sales ID, …) are harvested generically intodetails, so a venue this was never tested against still works. - An expired link returns HTTP 200, not an error status — the server detects the body and says the link is expired rather than reporting zero tickets.
Development
npm install
npm run build
npm test
npm run test:coverage # 100% thresholds, enforced in CI
See docs/ACCESSO-API.md for the captured request/response shapes and CLAUDE.md
for repo conventions.
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.