mcpField
A
accessoticketing-mcp

accessoticketing-mcp

Local
github.com/chrischallGames & Entertainment0Updated 4d ago

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

  1. 01Read orders and admissions
  2. 02Retrieve individual ticket details
  3. 03Save or return barcode images
  4. 04Get Google Wallet links
  5. 05Resolve tracked links
  6. 06Check server and link status

Use cases

  1. 01Review admissions in an emailed ticket link
  2. 02Save ticket barcodes as images
  3. 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.

mcp.json · Universal config
{
"mcpServers": {
"chrischall-accessoticketing": {
"command": "npx",
"args": [
"-y",
"@chrischall/accessoticketing-mcp"
],
"env": {
"ACCESSO_TICKET_URL": "<ACCESSO_TICKET_URL>",
"ACCESSO_OUTPUT_DIR": "<ACCESSO_OUTPUT_DIR>",
"ACCESSO_NO_FILE_OUTPUT": "<ACCESSO_NO_FILE_OUTPUT>"
}
}
}
}
Run commandnpx -y @chrischall/accessoticketing-mcp
Environment variables to set
ACCESSO_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.

Packages
npm@chrischall/accessoticketing-mcp1.1.2

Tools

6

Saved tool list · updated 1w ago

ParameterTypeRequiredDescription
urlstringNoThe accesso ticket link from the order-confirmation email. Optional when ACCESSO_TICKET_URL is set.
viewenumNoResponse 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_termsbooleanNoInclude each ticket's terms and conditions (long, and identical per venue).

Details

From the project README

accessoticketing-mcp

CI npm

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.

VariableRequiredPurpose
ACCESSO_TICKET_URLnoDefault ticket link, used when a tool is called without url.
ACCESSO_OUTPUT_DIRnoWhere accesso_save_barcodes writes PNGs. Defaults to cwd, or ~/Downloads when cwd is / (Claude Desktop).
ACCESSO_NO_FILE_OUTPUTnoSet to 1 where the filesystem isn't the user's (a hosted deployment) so barcodes return inline.

Tools

ToolDoes
accesso_get_orderThe 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_ticketOne admission in full, by index.
accesso_save_barcodesWrites barcode PNGs and returns paths, or returns the images inline.
accesso_get_wallet_passesGoogle Wallet save links for the tickets.
accesso_resolve_linkUnwraps an email click-tracking link to the accesso URL it hides.
accesso_healthcheckConfirms 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 / time are 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 into details, 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

Markdown supported

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.