tixbit 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "tixbit",
3
- "version": "0.1.1",
4
- "description": "Search events, view seatmaps, browse listings, and buy tickets on TixBit",
3
+ "version": "0.2.0",
4
+ "description": "Search events, browse listings, view seatmaps, and purchase TixBit tickets through MPP",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
@@ -17,6 +17,7 @@
17
17
  "files": [
18
18
  "dist/*.js",
19
19
  "dist/*.d.ts",
20
+ "skills/tixbit/SKILL.md",
20
21
  "README.md",
21
22
  "LICENSE"
22
23
  ],
@@ -29,21 +30,26 @@
29
30
  "prepublishOnly": "npm run build"
30
31
  },
31
32
  "dependencies": {
32
- "commander": "^13.1.0"
33
+ "@stripe/link-cli": "0.22.0",
34
+ "commander": "^13.1.0",
35
+ "mppx": "^0.8.15"
33
36
  },
34
37
  "devDependencies": {
38
+ "@types/node": "20.19.25",
35
39
  "tsup": "^8.4.0",
36
40
  "typescript": "^5.7.0",
37
- "vitest": "^3.1.0"
41
+ "vitest": "3.2.7"
38
42
  },
39
43
  "engines": {
40
- "node": ">=20"
44
+ "node": ">=22.12.0"
41
45
  },
42
46
  "keywords": [
43
47
  "tixbit",
44
48
  "tickets",
45
49
  "events",
46
50
  "seatmap",
51
+ "mpp",
52
+ "machine-payments",
47
53
  "seating-chart",
48
54
  "cli",
49
55
  "sdk",
@@ -53,7 +59,7 @@
53
59
  "mlb",
54
60
  "nfl"
55
61
  ],
56
- "homepage": "https://tixbit.com",
62
+ "homepage": "https://www.tixbit.com",
57
63
  "license": "MIT",
58
64
  "repository": {
59
65
  "type": "git",
@@ -0,0 +1,86 @@
1
+ ---
2
+ name: tixbit
3
+ description: Search TixBit events and listings, inspect seatmaps, create browser checkout links, or purchase a selected listing through MPP.
4
+ ---
5
+
6
+ # TixBit Skill
7
+
8
+ Use the official CLI and prefer `--json` for agent-readable output:
9
+
10
+ ```bash
11
+ npx tixbit <command>
12
+ ```
13
+
14
+ Discovery, listings, seatmaps, event URLs, link-only checkout, and machine
15
+ purchase require no TixBit API key. Link machine purchase needs the buyer's
16
+ Link sign-in, spend approval, and Node.js 22 or later. Tempo machine purchase needs an mppx account.
17
+ Both need an email address supplied by the buyer. Never infer the email from
18
+ git, OS, or account state.
19
+
20
+ For Stripe Link MPP payments, pair this skill with Stripe's official
21
+ `@stripe/link-cli` MCP server. Add `{"mcpServers":{"link":{"command":"npx","args":["@stripe/link-cli","--mcp"]}}}`
22
+ to a host that supports local MCP servers. The buyer must connect their Link
23
+ account. First inspect TixBit's `402` Stripe offer and exact order total, then
24
+ request an approved `shared_payment_token` spend for that network ID and total.
25
+ Use Link's `mpp pay` tool with the same purchase URL and POST body, including the
26
+ original UUID v4 idempotency key. Keep the one-time token inside Link CLI. The
27
+ published `tixbit purchase` command selects Tempo, and `tixbit buy --confirm`
28
+ cannot create a Link spend request. If the host does not expose Link's spend
29
+ request and MPP tools, use browser checkout until that host adds them.
30
+
31
+ ## Commands
32
+
33
+ ```bash
34
+ npx tixbit search "Braves" --city Atlanta --state GA --size 10 --json
35
+ npx tixbit listings <eventId> --size 10 --sort asc --json
36
+ npx tixbit seatmap <eventId> --json
37
+ npx tixbit url <eventId>
38
+
39
+ # Link-only browser checkout; this does not charge the buyer.
40
+ npx tixbit checkout <listingId> --quantity 2 --json
41
+
42
+ # Stripe Link machine checkout. Send approvalUrl to the buyer immediately.
43
+ npx tixbit link start <listingId> --quantity 1 \
44
+ --email buyer@example.com --max-price <approved-total-usd>
45
+ # After the buyer approves, use the orderReference returned by start.
46
+ npx tixbit link complete <orderReference>
47
+
48
+ # Tempo machine checkout; obtain explicit authorization before any real payment.
49
+ npx tixbit purchase <listingId> \
50
+ --quantity 2 \
51
+ --email buyer@example.com \
52
+ --confirm --max-price <approved-total-usd> \
53
+ --idempotency-key <stable-uuid-v4> \
54
+ --json
55
+ ```
56
+
57
+ ## Additional commands (in `tixbit@0.1.2`)
58
+
59
+ - `tixbit quote <eventId> --size 100`: refresh existing listings; requires live freshness.
60
+ - `tixbit auth`: public browser sign-in and wallet setup links; not a CLI login. No command needs a developer API key.
61
+ - `tixbit buy <listingId> --quantity 2 --max-price <total-usd> --email <buyer-email>`: quote only, no payment credential required.
62
+ - `tixbit link start` prepares one Stripe Link spend request, enforces the total cap, and returns an approval URL without charging. Present that URL immediately. `tixbit link complete` checks approval and pays with the saved order; use the same order reference for recovery. Do not print or extract the Link payment token.
63
+ - Add `--confirm` only after approval. Without payment authorization, the result is `authorization_required` with a browser checkout URL, not a payment. Review the final total in the browser; the CLI cap is not transferred there. Optional advanced integrations can inject a user-approved `TIXBIT_LINK_TOKEN`; automatic payment still requires server cap support. Never put tokens in arguments.
64
+ - The older `buy` web route supports 4-12 alphanumeric IDs only. The new Link MPP command accepts the listing IDs supported by the MPP server.
65
+ - Without a signed-in user integration, seller commands return browser sign-in guidance and do not read or submit listings. Browser-to-CLI seller sessions are not supported. Do not extract browser tokens. Optional authorized integrations may supply `TIXBIT_ACCESS_TOKEN`; seller creation still requires `--confirm`, `termsAccepted: true`, and server ownership/access checks.
66
+ - All commands emit JSON, including errors. Preserve full case-sensitive IDs.
67
+ - Never retry uncertain Link payment automatically. Reconcile with support and Stripe Link first. Read seller listings after uncertain creation.
68
+ - No bids or negotiation are available. Do not claim a price reduction.
69
+
70
+ ## Required workflow
71
+
72
+ 1. Search and select the event.
73
+ 2. Fetch listings and the seatmap before presenting ticket options.
74
+ 3. Confirm the exact listing, quantity, and buyer email.
75
+ 4. Use `checkout` for user-completed browser payment. For Stripe Link machine
76
+ payment, run `link start` with an approved cap, show `approvalUrl`, then run
77
+ `link complete` after approval. Use `purchase` for Tempo only when the user
78
+ explicitly authorizes that payment.
79
+ 5. Use the same order reference with `link complete` for recovery. For Tempo,
80
+ preserve the original idempotency key across retries and recovery checks.
81
+ 6. Treat `pending` and `manual_review_required` as non-final. Follow the returned
82
+ `action`; never create another payment or ticket purchase for the same order.
83
+
84
+ The purchase result includes the TixBit `orderReference`, status, optional
85
+ `receiptUrl`, server-authoritative order total, and recovery action. Do not log
86
+ or repeat MPP private keys, payment credentials, or raw provider IDs.