@arnaudjnn/billing-tools 15.2.3 → 15.4.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.
@@ -52,9 +52,12 @@ export interface CreateBillingOptions {
52
52
  currency?: string;
53
53
  }) | false;
54
54
  /** MCP transport overrides. */
55
+ /** MCP transport overrides. `requireAuth` gates the handshake itself — see
56
+ * `createMcpTransport`. */
55
57
  mcp?: {
56
58
  apiKeyPrefix?: string;
57
59
  maxDuration?: number;
60
+ requireAuth?: boolean;
58
61
  };
59
62
  /** Enable MPP machine payments (pay-per-request 402). Omit to leave it off. */
60
63
  machinePayment?: MachinePaymentOptions;
@@ -109,6 +112,39 @@ export interface CreateBillingOptions {
109
112
  export declare function createBilling(opts: CreateBillingOptions): {
110
113
  adapter: BillingAdapter;
111
114
  config: import("./types.js").ResolvedConfig;
115
+ /**
116
+ * What `runBillingCli` needs, taken from THIS composition — spread it into the
117
+ * app's billing script and add only the webhook URL:
118
+ *
119
+ * runBillingCli({ ...billing.cli, webhookUrl: "https://myapp.example/api/stripe/webhook" })
120
+ *
121
+ * Derived rather than restated, because every value here is one the script used
122
+ * to name a second time: the catalogue, the config, and — the sharp one — what
123
+ * the wired ledger can COUNT. A script that states its own coverage can be
124
+ * right while the app is wrong, which is the exact shape of the worst bug this
125
+ * library has had (a wallet-only ledger counting pooled usage as 0, so every
126
+ * subscriber got unlimited requests, with every check passing).
127
+ *
128
+ * `hasCheckout` is true when a catalogue is registered with the lifecycle tools
129
+ * left on, because `change_plan` then opens a hosted Checkout Session itself —
130
+ * so a self-serve plan really is buyable without the app mounting anything.
131
+ *
132
+ * `workos` audits by default (WorkOS is the substrate every adapter here
133
+ * assumes) and asks for `REFRESH_TOKEN_SECRET` only when the OAuth proxy is
134
+ * actually mounted, which is the one thing that makes it required.
135
+ *
136
+ * The webhook URL stays the app's to give: it is a deployment fact, and putting
137
+ * a production URL in this object would let a laptop run register it.
138
+ */
139
+ cli: {
140
+ plans: PlanCatalog | undefined;
141
+ config: import("./types.js").ResolvedConfig;
142
+ usageLedger: import("./plan-model.js").LedgerCoverage | undefined;
143
+ hasCheckout: boolean;
144
+ workos: true | {
145
+ oauthProxy: true;
146
+ };
147
+ };
112
148
  /** The bound, org-scoped API: `api.invoices.list(orgId)`, `api.usage.summary(orgId)`, … */
113
149
  api: {
114
150
  customerId: (orgId: string, email?: string) => Promise<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"create-billing.d.ts","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-billing.d.ts","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"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"}
@@ -80,6 +80,7 @@ export function createBilling(opts) {
80
80
  realm: opts.realm,
81
81
  apiKeyPrefix: opts.mcp?.apiKeyPrefix,
82
82
  maxDuration: opts.mcp?.maxDuration,
83
+ requireAuth: opts.mcp?.requireAuth,
83
84
  resourceMetadata,
84
85
  });
85
86
  const webhook = opts.webhook === false
@@ -149,6 +150,37 @@ export function createBilling(opts) {
149
150
  return {
150
151
  adapter: opts.adapter,
151
152
  config: resolved,
153
+ /**
154
+ * What `runBillingCli` needs, taken from THIS composition — spread it into the
155
+ * app's billing script and add only the webhook URL:
156
+ *
157
+ * runBillingCli({ ...billing.cli, webhookUrl: "https://myapp.example/api/stripe/webhook" })
158
+ *
159
+ * Derived rather than restated, because every value here is one the script used
160
+ * to name a second time: the catalogue, the config, and — the sharp one — what
161
+ * the wired ledger can COUNT. A script that states its own coverage can be
162
+ * right while the app is wrong, which is the exact shape of the worst bug this
163
+ * library has had (a wallet-only ledger counting pooled usage as 0, so every
164
+ * subscriber got unlimited requests, with every check passing).
165
+ *
166
+ * `hasCheckout` is true when a catalogue is registered with the lifecycle tools
167
+ * left on, because `change_plan` then opens a hosted Checkout Session itself —
168
+ * so a self-serve plan really is buyable without the app mounting anything.
169
+ *
170
+ * `workos` audits by default (WorkOS is the substrate every adapter here
171
+ * assumes) and asks for `REFRESH_TOKEN_SECRET` only when the OAuth proxy is
172
+ * actually mounted, which is the one thing that makes it required.
173
+ *
174
+ * The webhook URL stays the app's to give: it is a deployment fact, and putting
175
+ * a production URL in this object would let a laptop run register it.
176
+ */
177
+ cli: {
178
+ plans: opts.plans,
179
+ config: resolved,
180
+ usageLedger: ledger.covers,
181
+ hasCheckout: Boolean(opts.plans) && opts.subscriptionTools !== false,
182
+ workos: oauthProxy ? { oauthProxy: true } : true,
183
+ },
152
184
  /** The bound, org-scoped API: `api.invoices.list(orgId)`, `api.usage.summary(orgId)`, … */
153
185
  api,
154
186
  register,
@@ -1 +1 @@
1
- {"version":3,"file":"create-billing.js","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-billing.js","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,22 @@ export interface McpTransportOptions {
10
10
  /** Advertise the auth.md PRM discovery doc in the 401 WWW-Authenticate header
11
11
  * (`resource_metadata="…"`) so agents can bootstrap. String or per-request. */
12
12
  resourceMetadata?: string | ((request: Request) => string);
13
+ /**
14
+ * Require a resolvable org before the MCP handler runs at all, so the HANDSHAKE
15
+ * is gated too — `initialize` and `tools/list`, not just the tool calls.
16
+ *
17
+ * Default false, which is the looser posture and the one every deployment on this
18
+ * factory already has: each tool calls `enforceAccess` itself, so an anonymous
19
+ * client can complete the handshake and enumerate the catalogue, then be refused
20
+ * on every call. That is fine for a public catalogue and wrong for a private one —
21
+ * "which tools exist, and what do they cost" is itself information, and an
22
+ * unauthenticated client that connects successfully and fails on use looks like a
23
+ * broken product rather than a closed door.
24
+ *
25
+ * On, a request with no usable credential gets 401 + `WWW-Authenticate` before the
26
+ * handler is reached, which is also what starts OAuth discovery.
27
+ */
28
+ requireAuth?: boolean;
13
29
  }
14
30
  export declare function createMcpTransport(opts: McpTransportOptions): {
15
31
  GET: (request: Request) => Promise<Response>;
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/routes/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAQlD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;oFACgF;IAChF,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC;CAC5D;AAOD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,mBAAmB;mBAqB1B,OAAO,KAAG,OAAO,CAAC,QAAQ,CAAC;oBAA3B,OAAO,KAAG,OAAO,CAAC,QAAQ,CAAC;;EAgB5D"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../src/routes/mcp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAQlD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC;IACtC,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;oFACgF;IAChF,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC;IAC3D;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAOD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,mBAAmB;mBAqB1B,OAAO,KAAG,OAAO,CAAC,QAAQ,CAAC;oBAA3B,OAAO,KAAG,OAAO,CAAC,QAAQ,CAAC;;EA0C5D"}
@@ -31,6 +31,28 @@ export function createMcpTransport(opts) {
31
31
  if (orgId)
32
32
  return runWithResolvedOrg(authHeader, orgId, () => mcp(request));
33
33
  }
34
+ // Gated: resolve the org HERE, so a caller with no usable credential never
35
+ // reaches the handshake. An API key is validated through the adapter; anything
36
+ // else has already had its chance above.
37
+ if (opts.requireAuth) {
38
+ let orgId = null;
39
+ if (token) {
40
+ try {
41
+ orgId = token.startsWith(apiKeyPrefix)
42
+ ? ((await opts.adapter.validateApiKey(token))?.orgId ?? null)
43
+ : null;
44
+ }
45
+ catch {
46
+ orgId = null;
47
+ }
48
+ }
49
+ if (!orgId) {
50
+ return Response.json({ error: "unauthorized" }, { status: 401, headers: { "WWW-Authenticate": wwwAuth(realm, rm) } });
51
+ }
52
+ // Pre-resolved, so `enforceAccess` reads it from the store rather than
53
+ // validating the same key a second time on every tool call.
54
+ return runWithResolvedOrg(authHeader, orgId, () => mcp(request));
55
+ }
34
56
  const res = await runWithAuth(authHeader, () => mcp(request));
35
57
  return withAuthHeader(res, rm);
36
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/routes/mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../src/routes/mcp.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../../src/routes/rest.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,UAAU;IACzB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,YAAY,IAAI,MAAM,EAAE,CAAC;CAC1B;AAQD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC,IACe,SAAS,OAAO,KAAG,OAAO,CAAC,QAAQ,CAAC,CAanD;AAUD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE;IAC9C,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;oFACgF;IAChF,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC;CAC5D,IAGG,SAAS,OAAO,EAChB,KAAK;IAAE,MAAM,EAAE,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,KACzC,OAAO,CAAC,QAAQ,CAAC,CA+BrB"}
1
+ {"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../../src/routes/rest.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,UAAU;IACzB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5E,YAAY,IAAI,MAAM,EAAE,CAAC;CAC1B;AAQD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC,IACe,SAAS,OAAO,KAAG,OAAO,CAAC,QAAQ,CAAC,CAanD;AAUD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE;IAC9C,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;oFACgF;IAChF,gBAAgB,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,CAAC;CAC5D,IAGG,SAAS,OAAO,EAChB,KAAK;IAAE,MAAM,EAAE,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;CAAE,KACzC,OAAO,CAAC,QAAQ,CAAC,CA2CrB"}
@@ -57,7 +57,19 @@ export function createToolDispatchHandler(opts) {
57
57
  if (/\bUnauthorized\b|\b401\b/i.test(message)) {
58
58
  return Response.json({ error: message }, { status: 401, headers: { "WWW-Authenticate": wwwAuth(realm, rm) } });
59
59
  }
60
- const status = err instanceof ToolValidationError ? 400 : message.includes("Unknown tool") ? 404 : 500;
60
+ // 402 for an empty wallet, because this library is the one that WROTE that
61
+ // message (`enforceCredits`, `describeDenial`) and 500 tells the caller the
62
+ // server is broken when the truthful answer is "buy credits" — the one
63
+ // refusal an agent can act on without a human. A consumer had already
64
+ // hand-rolled this mapping over the same string; it belongs here, next to
65
+ // the 401 and 429 that were already mapped for the same reason.
66
+ const status = err instanceof ToolValidationError
67
+ ? 400
68
+ : /\bInsufficient credits\b/i.test(message)
69
+ ? 402
70
+ : message.includes("Unknown tool")
71
+ ? 404
72
+ : 500;
61
73
  return Response.json({ error: message }, { status });
62
74
  }
63
75
  });
@@ -1 +1 @@
1
- {"version":3,"file":"rest.js","sourceRoot":"","sources":["../../src/routes/rest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rest.js","sourceRoot":"","sources":["../../src/routes/rest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAWrD,SAAS,OAAO,CAAC,KAAa,EAAE,gBAAyB;IACvD,MAAM,IAAI,GAAG,iBAAiB,KAAK,0BAA0B,CAAC;IAC9D,OAAO,gBAAgB,CAAC,CAAC,CAAC,GAAG,IAAI,wBAAwB,gBAAgB,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AACtF,CAAC;AAED,4CAA4C;AAC5C,MAAM,UAAU,qBAAqB,CAAC,IAGrC;IACC,OAAO,KAAK,EAAE,OAAgB,EAAqB,EAAE;QACnD,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACxD,OAAO,WAAW,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;YACxC,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;gBAC7C,OAAO,QAAQ,CAAC,IAAI,CAAC;oBACnB,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;iBAC1E,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACrG,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAe;IAC3C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,MAAM,CAAC,GAAG,MAAmE,CAAC;IAC9E,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1D,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/F,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,yBAAyB,CAAC,IAMzC;IACC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,eAAe,CAAC;IAC5C,OAAO,KAAK,EACV,OAAgB,EAChB,GAA0C,EACvB,EAAE;QACrB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC;QAClC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QACxD,MAAM,EAAE,GACN,OAAO,IAAI,CAAC,gBAAgB,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;QACvG,OAAO,WAAW,CAAC,UAAU,EAAE,KAAK,IAAI,EAAE;YACxC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,IAA+B,CAAC,CAAC;gBACzF,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAK,MAA8B,CAAC,MAAM,KAAK,iBAAiB,EAAE,CAAC;oBACzG,MAAM,UAAU,GAAI,MAA2C,CAAC,mBAAmB,CAAC;oBACpF,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE;wBAC3B,MAAM,EAAE,GAAG;wBACX,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;qBACxE,CAAC,CAAC;gBACL,CAAC;gBACD,IAAI,oBAAoB,CAAC,MAAM,CAAC,EAAE,CAAC;oBACjC,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBACrG,CAAC;gBACD,OAAO,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACjE,IAAI,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC9C,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,kBAAkB,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjH,CAAC;gBACD,2EAA2E;gBAC3E,4EAA4E;gBAC5E,uEAAuE;gBACvE,sEAAsE;gBACtE,0EAA0E;gBAC1E,gEAAgE;gBAChE,MAAM,MAAM,GACV,GAAG,YAAY,mBAAmB;oBAChC,CAAC,CAAC,GAAG;oBACL,CAAC,CAAC,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC;wBACzC,CAAC,CAAC,GAAG;wBACL,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC;4BAChC,CAAC,CAAC,GAAG;4BACL,CAAC,CAAC,GAAG,CAAC;gBACd,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACvD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arnaudjnn/billing-tools",
3
- "version": "15.2.3",
3
+ "version": "15.4.0",
4
4
  "description": "The get-paid engine for Stripe + WorkOS apps, for humans and AI agents. Drop-in API-key auth, credit + subscription billing, auth.md agent registration, and MPP machine payments, as MCP tools, a REST API, and a CLI. Framework-agnostic, storage-pluggable.",
5
5
  "license": "MIT",
6
6
  "author": "Arnaud Jeannin",