
Accessoticketing Mcp
io.github.chrischallPublished by GitHub account chrischallv1.2.1Updated Nov 7, 2026
Read accesso mobile ticket links: orders, admissions, barcodes and Google Wallet passes.
Overview
Reads an accesso Passport mobile ticket link to return the order, its admissions, scannable barcodes and Google Wallet save links.
- What you can do
- Read an order and every admission on it, with product, participant, date, start time and instructions
- Fetch a single admission in full by index
- Save barcode images as PNG files locally, or return them inline or as expiring download links
- Get Google Wallet save links for the tickets
- Unwrap an email click-tracking link into the accesso URL it hides
- Check reachability and whether a default ticket link is configured
- When to use it
- Useful when you have a ticket link emailed by a venue that uses accesso (theme parks, water parks, camps, museums, festivals) and want an assistant to summarise what is booked, show admission details, or produce barcodes and wallet links without opening a browser.
- Requirements
- Runs locally as an npm package via npx, so Node.js is needed. No account or login: the ticket link itself carries the credential. Optionally set ACCESSO_TICKET_URL as a default link, ACCESSO_OUTPUT_DIR for saved barcode images, and ACCESSO_NO_FILE_OUTPUT where the filesystem is not the user's. Network access to the accesso ticketing service is required.
Installation
In SourceWeft
- Open Accessoticketing Mcp in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
accessoticketing-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
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.
Tools
Nothing here mutates an order. Every tool is read-only except accesso_save_barcodes, which writes PNG files to disk (never overwriting one) on a local install, or to the host's blob store behind a signed, expiring link when hosted, unless asked for inline images.
Upgrading
next release
accesso_save_barcodes no longer writes to the server's disk on a hosted
deployment (mcp-host). Local installs are unchanged: same files, same
{ outputDir, saved: [{ index, participant, packageName, path }] } result.
- Hosted,
inline: false(or a server with a writable disk AND a blob store, called withoutinline): returns{ order, note, saved: [{ index, participant, packageName, barcodeText, url, expiresAt }] }— one signed download link per barcode, expiring atexpiresAt. There is nooutputDirand nopath. Previously a hosted server withoutACCESSO_NO_FILE_OUTPUTwrote the PNGs to the runner's disk and returned paths nobody could open. - Inline results (
returned,tickets, …) gainlinked: [{ …, url, expiresAt }]andlinkNotewhen a blob store is available: barcodes past the inline size cap now come back as links instead of being dropped, soomittedForSize/omittedIndexesonly appear when there is no blob store. With no blob store andinline: false(nowhere to save), the inline result carries anotesaying so. - When not a single barcode fits the inline cap and there is no link or disk
route, the tool now fails with a
too_largeerror instead of returning an empty image list. - On a hosted deployment
ACCESSO_NO_FILE_OUTPUTis no longer needed, andaccesso_healthcheckreportsfilesPersist: falsethere.
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
See docs/ACCESSO-API.md for the captured request/response shapes and CLAUDE.md
for repo conventions.
License
MIT
Source: README.md at commit af00a6f
Tools
0Version history
14- v1.2.1LatestNov 7, 2026
- v1.2.0Nov 4, 2026
- v1.1.2Oct 20, 2026
- v1.1.1Oct 16, 2026
- v1.1.0Oct 10, 2026
- v1.0.6Oct 7, 2026
- v1.0.5Oct 5, 2026
- v1.0.4Oct 3, 2026
- v1.0.3Sep 25, 2026
- v1.0.2Sep 23, 2026
- v1.0.1Sep 23, 2026
- v1.0.0Sep 20, 2026
- v0.3.0Sep 18, 2026
- v0.2.1Sep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts