Accessoticketing Mcp

io.github.chrischall由 GitHub 帳號 chrischall 發布v1.2.1更新於 Nov 7, 2026

Read accesso mobile ticket links: orders, admissions, barcodes and Google Wallet passes.

已驗證STDIO僅桌面位置與生活效率與工作流

概覽

AI 產生的概覽

讀取 accesso Passport 行動票券連結,回傳訂單、各項入場憑證、可掃描條碼以及 Google Wallet 儲存連結。

可以做什麼
  • 讀取訂單及其中所有入場憑證,包含產品、參與者、日期、開始時間與說明
  • 依索引取得單一入場憑證的完整資訊
  • 將條碼存成本地 PNG 檔,或以内嵌圖片、限時下載連結回傳
  • 取得票券的 Google Wallet 儲存連結
  • 將電子郵件點擊追蹤連結還原成其中隱藏的 accesso 連結
  • 檢查服務是否可連線,以及是否已設定預設票券連結
適用情境
當你持有使用 accesso 的場館(主題樂園、水上樂園、營隊、博物館、節慶活動)寄來的票券連結,想讓助理不開瀏覽器就整理已預訂內容、顯示入場細節,或產出條碼與錢包連結時適用。
執行需求
以 npm 套件透過 npx 在本機執行,需要 Node.js。不需帳號或登入,票券連結本身即帶有授權憑證。可選擇設定 ACCESSO_TICKET_URL 作為預設連結、ACCESSO_OUTPUT_DIR 指定條碼圖片存放目錄,以及在檔案系統不屬於使用者時設定 ACCESSO_NO_FILE_OUTPUT。需要能連線至 accesso 票務服務的網路。
安裝前請注意
票券連結本身就是機密:任何持有該連結的人都能檢視並新增該訂單的票券,請勿貼到 issue、日誌或聊天中。伺服器會在自己的輸出中遮蔽權杖。除 accesso_save_barcodes 會在本機磁碟寫入 PNG 檔外,其餘工具皆為唯讀。README 說明本專案由 AI 開發與維護,請自行斟酌使用。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Accessoticketing Mcp,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

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

bash
npx -y @chrischall/accessoticketing-mcp
jsonc
// 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 so barcodes return inline. Not needed on mcp-host: a hosted deployment (MCP_DATA_DIR / MCP_BLOB_BASE_URL set) is detected and never writes to disk.

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_barcodesLocally, writes barcode PNGs and returns paths. Hosted, returns the images inline (with a download link for any past the size cap), or one expiring download link per barcode with inline: false. inline: true inlines anywhere.
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) on a local install, or to the host's blob store behind a signed, expiring link when hosted, unless asked for inline images.

> what do we have booked tomorrow?9:00 AM   Tiny Trekkers Full-Day (Ages 4-7)   — one participant9:00 AM   Whitewater Kayak Camp I: Intro      — two participantsall-day   Lunch / Snack / Early Drop-Off      — nine more admissions

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 without inline): returns { order, note, saved: [{ index, participant, packageName, barcodeText, url, expiresAt }] } — one signed download link per barcode, expiring at expiresAt. There is no outputDir and no path. Previously a hosted server without ACCESSO_NO_FILE_OUTPUT wrote the PNGs to the runner's disk and returned paths nobody could open.
  • Inline results (returned, tickets, …) gain linked: [{ …, url, expiresAt }] and linkNote when a blob store is available: barcodes past the inline size cap now come back as links instead of being dropped, so omittedForSize / omittedIndexes only appear when there is no blob store. With no blob store and inline: false (nowhere to save), the inline result carries a note saying 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_large error instead of returning an empty image list.
  • On a hosted deployment ACCESSO_NO_FILE_OUTPUT is no longer needed, and accesso_healthcheck reports filesPersist: false there.

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

bash
npm installnpm run buildnpm testnpm 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

來源:README.md,提交 af00a6f

工具

0
SourceWeft 尚未在沙箱中啟動過該軟體包,因此其工具未知。

版本歷史

14
  1. v1.2.1最新Nov 7, 2026
  2. v1.2.0Nov 4, 2026
  3. v1.1.2Oct 20, 2026
  4. v1.1.1Oct 16, 2026
  5. v1.1.0Oct 10, 2026
  6. v1.0.6Oct 7, 2026
  7. v1.0.5Oct 5, 2026
  8. v1.0.4Oct 3, 2026
  9. v1.0.3Sep 25, 2026
  10. v1.0.2Sep 23, 2026
  11. v1.0.1Sep 23, 2026
  12. v1.0.0Sep 20, 2026
  13. v0.3.0Sep 18, 2026
  14. v0.2.1Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分