alterlab-mcp-server 1.7.0 → 1.9.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.
Files changed (83) hide show
  1. package/README.md +75 -33
  2. package/dist/auth.d.ts +30 -0
  3. package/dist/auth.d.ts.map +1 -0
  4. package/dist/auth.js +423 -0
  5. package/dist/auth.js.map +1 -0
  6. package/dist/client.d.ts +23 -1
  7. package/dist/client.d.ts.map +1 -1
  8. package/dist/client.js +61 -3
  9. package/dist/client.js.map +1 -1
  10. package/dist/config.d.ts +21 -1
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js +85 -8
  13. package/dist/config.js.map +1 -1
  14. package/dist/errors.d.ts.map +1 -1
  15. package/dist/errors.js +6 -4
  16. package/dist/errors.js.map +1 -1
  17. package/dist/format.d.ts +20 -2
  18. package/dist/format.d.ts.map +1 -1
  19. package/dist/format.js +187 -9
  20. package/dist/format.js.map +1 -1
  21. package/dist/index.d.ts.map +1 -1
  22. package/dist/index.js +66 -2
  23. package/dist/index.js.map +1 -1
  24. package/dist/tools/balance.d.ts.map +1 -1
  25. package/dist/tools/balance.js +4 -2
  26. package/dist/tools/balance.js.map +1 -1
  27. package/dist/tools/batch.d.ts +1221 -25
  28. package/dist/tools/batch.d.ts.map +1 -1
  29. package/dist/tools/batch.js +123 -34
  30. package/dist/tools/batch.js.map +1 -1
  31. package/dist/tools/common.d.ts +313 -0
  32. package/dist/tools/common.d.ts.map +1 -0
  33. package/dist/tools/common.js +336 -0
  34. package/dist/tools/common.js.map +1 -0
  35. package/dist/tools/crawl.d.ts +165 -10
  36. package/dist/tools/crawl.d.ts.map +1 -1
  37. package/dist/tools/crawl.js +191 -43
  38. package/dist/tools/crawl.js.map +1 -1
  39. package/dist/tools/estimate.d.ts +21 -6
  40. package/dist/tools/estimate.d.ts.map +1 -1
  41. package/dist/tools/estimate.js +28 -35
  42. package/dist/tools/estimate.js.map +1 -1
  43. package/dist/tools/extract.d.ts +5 -5
  44. package/dist/tools/extract.d.ts.map +1 -1
  45. package/dist/tools/extract.js +16 -12
  46. package/dist/tools/extract.js.map +1 -1
  47. package/dist/tools/job.d.ts +13 -0
  48. package/dist/tools/job.d.ts.map +1 -0
  49. package/dist/tools/job.js +62 -0
  50. package/dist/tools/job.js.map +1 -0
  51. package/dist/tools/map.d.ts +5 -2
  52. package/dist/tools/map.d.ts.map +1 -1
  53. package/dist/tools/map.js +16 -5
  54. package/dist/tools/map.js.map +1 -1
  55. package/dist/tools/scrape.d.ts +431 -49
  56. package/dist/tools/scrape.d.ts.map +1 -1
  57. package/dist/tools/scrape.js +267 -135
  58. package/dist/tools/scrape.js.map +1 -1
  59. package/dist/tools/screenshot.d.ts +33 -0
  60. package/dist/tools/screenshot.d.ts.map +1 -1
  61. package/dist/tools/screenshot.js +60 -10
  62. package/dist/tools/screenshot.js.map +1 -1
  63. package/dist/tools/search.d.ts +11 -5
  64. package/dist/tools/search.d.ts.map +1 -1
  65. package/dist/tools/search.js +22 -6
  66. package/dist/tools/search.js.map +1 -1
  67. package/dist/tools/sessions.d.ts +180 -12
  68. package/dist/tools/sessions.d.ts.map +1 -1
  69. package/dist/tools/sessions.js +75 -21
  70. package/dist/tools/sessions.js.map +1 -1
  71. package/dist/tools/simple_batch.d.ts +28 -0
  72. package/dist/tools/simple_batch.d.ts.map +1 -0
  73. package/dist/tools/simple_batch.js +142 -0
  74. package/dist/tools/simple_batch.js.map +1 -0
  75. package/dist/tools/usage.d.ts +7 -0
  76. package/dist/tools/usage.d.ts.map +1 -0
  77. package/dist/tools/usage.js +42 -0
  78. package/dist/tools/usage.js.map +1 -0
  79. package/dist/types.d.ts +219 -21
  80. package/dist/types.d.ts.map +1 -1
  81. package/dist/types.js.map +1 -1
  82. package/package.json +5 -3
  83. package/server.json +40 -4
@@ -10,6 +10,7 @@ exports.handleRefreshSession = handleRefreshSession;
10
10
  exports.handleDeleteSession = handleDeleteSession;
11
11
  const zod_1 = require("zod");
12
12
  const errors_js_1 = require("../errors.js");
13
+ const common_js_1 = require("./common.js");
13
14
  const format_js_1 = require("../format.js");
14
15
  // ============================================================================
15
16
  // List Sessions
@@ -36,6 +37,24 @@ async function handleListSessions(client) {
36
37
  // ============================================================================
37
38
  // Create Session
38
39
  // ============================================================================
40
+ const cookieObjectSchema = zod_1.z
41
+ .object({
42
+ name: zod_1.z.string().min(1),
43
+ value: zod_1.z.string(),
44
+ domain: zod_1.z.string().optional(),
45
+ path: zod_1.z.string().optional(),
46
+ secure: zod_1.z.boolean().optional(),
47
+ httpOnly: zod_1.z.boolean().optional(),
48
+ sameSite: zod_1.z.string().optional(),
49
+ expires: zod_1.z.number().optional(),
50
+ })
51
+ .passthrough();
52
+ const cookiesSchema = zod_1.z.union([
53
+ zod_1.z.record(zod_1.z.string(), zod_1.z.string()),
54
+ zod_1.z.array(cookieObjectSchema).max(100),
55
+ ]);
56
+ const COOKIES_DESCRIPTION = 'Cookies as a {name: value} object (e.g. {"session-id": "abc123"}) or as a list (max 100) of cookie ' +
57
+ "objects with metadata: {name, value, domain?, path?, secure?, httpOnly?, sameSite?, expires?}.";
39
58
  exports.createSessionSchema = zod_1.z.object({
40
59
  name: zod_1.z
41
60
  .string()
@@ -44,29 +63,55 @@ exports.createSessionSchema = zod_1.z.object({
44
63
  .describe("Human-readable name for this session (e.g., 'My Amazon Account')"),
45
64
  domain: zod_1.z
46
65
  .string()
47
- .min(1)
66
+ .min(3)
67
+ .max(255)
48
68
  .describe("Domain this session is for (e.g., 'amazon.com')"),
49
- cookies: zod_1.z
69
+ consent: zod_1.z
70
+ .boolean()
71
+ .describe("Explicit GDPR consent from the account owner to store these session cookies. " +
72
+ "Must be true — the API rejects session creation with CONSENT_REQUIRED otherwise. " +
73
+ "Only set true after the user has agreed to AlterLab storing their cookies."),
74
+ cookies: cookiesSchema.optional().describe("Cookies for authentication. " + COOKIES_DESCRIPTION),
75
+ headers: zod_1.z
50
76
  .record(zod_1.z.string(), zod_1.z.string())
51
- .describe("Cookie key-value pairs for authentication " +
52
- '(e.g., {"session-id": "abc123", "session-token": "xyz789"})'),
53
- user_agent: zod_1.z
77
+ .optional()
78
+ .describe("Custom headers sent with this session (e.g., a User-Agent or Authorization header)"),
79
+ expires_at: zod_1.z
54
80
  .string()
55
81
  .optional()
56
- .describe("Browser User-Agent string to use with this session"),
82
+ .describe("Session expiry in ISO 8601 format (e.g., '2026-12-31T23:59:59Z')"),
83
+ notes: zod_1.z.string().max(1000).optional().describe("Free-text notes about this session"),
84
+ auto_refresh_enabled: zod_1.z
85
+ .boolean()
86
+ .optional()
87
+ .describe("Enable proactive expiry detection and health checks (API default true)"),
88
+ notify_before_expiry: zod_1.z
89
+ .boolean()
90
+ .optional()
91
+ .describe("Notify when the session is about to expire (API default true)"),
92
+ notify_on_failure: zod_1.z
93
+ .boolean()
94
+ .optional()
95
+ .describe("Notify when session validation fails (API default true)"),
96
+ organization_id: zod_1.z
97
+ .string()
98
+ .uuid()
99
+ .optional()
100
+ .describe("Organization to assign the session to (org admins only)"),
101
+ shared: zod_1.z
102
+ .boolean()
103
+ .optional()
104
+ .describe("Share the session with organization members immediately (API default false)"),
57
105
  });
58
106
  exports.createSessionDescription = "Create a new stored session for authenticated scraping. " +
59
107
  "Provide cookies from a logged-in browser session to enable scraping " +
60
108
  "behind login walls. The session is stored securely and can be reused " +
61
- "across multiple scrape requests via session_id.";
109
+ "across multiple scrape requests via session_id. " +
110
+ "Requires consent=true (explicit GDPR consent to store the cookies); optional headers, expires_at, notes, " +
111
+ "auto_refresh/notification flags and organization sharing are supported.";
62
112
  async function handleCreateSession(client, params) {
63
113
  try {
64
- const response = await client.createSession({
65
- name: params.name,
66
- domain: params.domain,
67
- cookies: params.cookies,
68
- user_agent: params.user_agent,
69
- });
114
+ const response = await client.createSession((0, common_js_1.compact)(params));
70
115
  return {
71
116
  content: [{ type: "text", text: (0, format_js_1.formatSessionCreateResponse)(response) }],
72
117
  };
@@ -138,11 +183,9 @@ exports.updateSessionSchema = zod_1.z.object({
138
183
  .max(100)
139
184
  .optional()
140
185
  .describe("New name for the session"),
141
- cookies: zod_1.z
142
- .record(zod_1.z.string(), zod_1.z.string())
186
+ cookies: cookiesSchema
143
187
  .optional()
144
- .describe("New cookie key-value pairs — replaces ALL existing cookies " +
145
- '(e.g., {"session-id": "new123", "session-token": "newxyz"})'),
188
+ .describe("New cookies — replaces ALL existing cookies. " + COOKIES_DESCRIPTION),
146
189
  headers: zod_1.z
147
190
  .record(zod_1.z.string(), zod_1.z.string())
148
191
  .optional()
@@ -156,6 +199,18 @@ exports.updateSessionSchema = zod_1.z.object({
156
199
  .max(1000)
157
200
  .optional()
158
201
  .describe("Notes or description for this session"),
202
+ auto_refresh_enabled: zod_1.z
203
+ .boolean()
204
+ .optional()
205
+ .describe("Enable or disable proactive expiry detection and health checks"),
206
+ notify_before_expiry: zod_1.z
207
+ .boolean()
208
+ .optional()
209
+ .describe("Enable or disable the before-expiry notification"),
210
+ notify_on_failure: zod_1.z
211
+ .boolean()
212
+ .optional()
213
+ .describe("Enable or disable the validation-failure notification"),
159
214
  });
160
215
  exports.updateSessionDescription = "Update a stored session's properties. You can change the name, rotate " +
161
216
  "cookies, update custom headers, set a new expiration, or add notes. " +
@@ -181,11 +236,10 @@ async function handleUpdateSession(client, params) {
181
236
  // ============================================================================
182
237
  exports.refreshSessionSchema = zod_1.z.object({
183
238
  session_id: zod_1.z.string().uuid().describe("UUID of the session to refresh"),
184
- cookies: zod_1.z
185
- .record(zod_1.z.string(), zod_1.z.string())
239
+ cookies: cookiesSchema
186
240
  .optional()
187
- .describe("New cookie key-value pairs to replace the old ones. " +
188
- "If omitted, only failure counters are reset."),
241
+ .describe("New cookies to replace the old ones. If omitted, only failure counters are reset. " +
242
+ COOKIES_DESCRIPTION),
189
243
  headers: zod_1.z
190
244
  .record(zod_1.z.string(), zod_1.z.string())
191
245
  .optional()
@@ -1 +1 @@
1
- {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/tools/sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/tools/sessions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import { z } from "zod";
2
+ import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
3
+ import type { AlterLabClient } from "../client.js";
4
+ export declare const simpleBatchSchema: z.ZodObject<{
5
+ urls: z.ZodArray<z.ZodString, "many">;
6
+ formats: z.ZodDefault<z.ZodArray<z.ZodEnum<["text", "json", "json_v2", "html", "markdown", "rag", "content", "raw"]>, "many">>;
7
+ render_js: z.ZodDefault<z.ZodBoolean>;
8
+ use_proxy: z.ZodDefault<z.ZodBoolean>;
9
+ timeout: z.ZodDefault<z.ZodNumber>;
10
+ max_concurrent: z.ZodDefault<z.ZodNumber>;
11
+ }, "strip", z.ZodTypeAny, {
12
+ timeout: number;
13
+ formats: ("content" | "text" | "json" | "json_v2" | "html" | "markdown" | "rag" | "raw")[];
14
+ render_js: boolean;
15
+ use_proxy: boolean;
16
+ urls: string[];
17
+ max_concurrent: number;
18
+ }, {
19
+ urls: string[];
20
+ timeout?: number | undefined;
21
+ formats?: ("content" | "text" | "json" | "json_v2" | "html" | "markdown" | "rag" | "raw")[] | undefined;
22
+ render_js?: boolean | undefined;
23
+ use_proxy?: boolean | undefined;
24
+ max_concurrent?: number | undefined;
25
+ }>;
26
+ export declare const simpleBatchDescription: string;
27
+ export declare function handleSimpleBatch(client: AlterLabClient, params: z.infer<typeof simpleBatchSchema>): Promise<CallToolResult>;
28
+ //# sourceMappingURL=simple_batch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple_batch.d.ts","sourceRoot":"","sources":["../../src/tools/simple_batch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAInD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;EA4C5B,CAAC;AAEH,eAAO,MAAM,sBAAsB,QAMoE,CAAC;AAMxG,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,cAAc,EACtB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,GACxC,OAAO,CAAC,cAAc,CAAC,CAwGzB"}
@@ -0,0 +1,142 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.simpleBatchDescription = exports.simpleBatchSchema = void 0;
4
+ exports.handleSimpleBatch = handleSimpleBatch;
5
+ const zod_1 = require("zod");
6
+ const common_js_1 = require("./common.js");
7
+ const format_js_1 = require("../format.js");
8
+ exports.simpleBatchSchema = zod_1.z.object({
9
+ urls: zod_1.z
10
+ .array(zod_1.z.string().url().max(2083))
11
+ .min(1)
12
+ .max(20)
13
+ .describe("List of URLs to scrape (max 20). All results are returned synchronously."),
14
+ formats: zod_1.z
15
+ .array(common_js_1.allFormatEnum)
16
+ .default(["markdown"])
17
+ .describe("Output formats applied to every URL. 'markdown' is best for LLM consumption."),
18
+ render_js: zod_1.z
19
+ .boolean()
20
+ .default(false)
21
+ .describe("Render JavaScript using headless browser for all URLs. " +
22
+ "Required for JS-heavy sites. Forces tier 4 ($0.004/req)."),
23
+ use_proxy: zod_1.z
24
+ .boolean()
25
+ .default(false)
26
+ .describe("Route all requests through premium proxy (+$0.0002/req)."),
27
+ timeout: zod_1.z
28
+ .number()
29
+ .int()
30
+ .min(1)
31
+ .max(300)
32
+ .default(90)
33
+ .describe("Request timeout in seconds per URL (1-300)."),
34
+ max_concurrent: zod_1.z
35
+ .number()
36
+ .int()
37
+ .min(1)
38
+ .max(10)
39
+ .default(3)
40
+ .describe("Maximum number of URLs to scrape in parallel (1-10, default 3). " +
41
+ "Higher values finish faster but consume more concurrent connections."),
42
+ });
43
+ exports.simpleBatchDescription = "Scrape multiple URLs simultaneously and get all results back in one call — no polling required. " +
44
+ "Unlike alterlab_batch (async with batch_id polling), this returns all results inline when complete. " +
45
+ "Best for 2-20 URLs where you need results immediately. For 20+ URLs, use alterlab_batch instead. " +
46
+ "Uses concurrent scraping (controlled by max_concurrent) for speed. " +
47
+ "Shows per-URL status, content preview, and a total cost summary at the end. " +
48
+ "Handles partial failures gracefully — failed URLs show error details, successful ones show content.";
49
+ async function handleSimpleBatch(client, params) {
50
+ const { urls, formats, render_js, use_proxy, timeout, max_concurrent } = params;
51
+ // Concurrency semaphore — limits inflight scrapes to max_concurrent.
52
+ let inflight = 0;
53
+ const queue = [];
54
+ function acquire() {
55
+ if (inflight < max_concurrent) {
56
+ inflight++;
57
+ return Promise.resolve();
58
+ }
59
+ return new Promise((resolve) => queue.push(resolve));
60
+ }
61
+ function release() {
62
+ inflight--;
63
+ const next = queue.shift();
64
+ if (next) {
65
+ inflight++;
66
+ next();
67
+ }
68
+ }
69
+ async function scrapeOne(url) {
70
+ await acquire();
71
+ try {
72
+ const response = await client.scrape({
73
+ url,
74
+ mode: "auto",
75
+ formats,
76
+ sync: true,
77
+ timeout,
78
+ advanced: {
79
+ render_js,
80
+ use_proxy,
81
+ markdown: formats.includes("markdown"),
82
+ scroll_to_load: false,
83
+ scroll_count: 3,
84
+ remove_cookie_banners: true,
85
+ block_images: false,
86
+ },
87
+ });
88
+ const costMicrocents = response.billing?.final_cost_microcents ?? 0;
89
+ const costUsd = costMicrocents / 1_000_000;
90
+ return {
91
+ status: "fulfilled",
92
+ url,
93
+ text: (0, format_js_1.formatScrapeResponse)(response),
94
+ cost: costUsd,
95
+ };
96
+ }
97
+ catch (err) {
98
+ const errorMsg = err instanceof Error
99
+ ? err.message
100
+ : typeof err === "object" && err !== null && "detail" in err
101
+ ? String(err.detail ?? "unknown error")
102
+ : "unknown error";
103
+ return { status: "rejected", url, error: errorMsg };
104
+ }
105
+ finally {
106
+ release();
107
+ }
108
+ }
109
+ const outcomes = await Promise.all(urls.map((url) => scrapeOne(url)));
110
+ // Build response
111
+ const parts = [
112
+ `**Batch Scrape Results** — ${urls.length} URL${urls.length !== 1 ? "s" : ""}`,
113
+ "",
114
+ ];
115
+ let totalCost = 0;
116
+ let successCount = 0;
117
+ let failCount = 0;
118
+ for (let i = 0; i < outcomes.length; i++) {
119
+ const outcome = outcomes[i];
120
+ parts.push(`---\n## [${i + 1}/${urls.length}] ${outcome.url}`);
121
+ if (outcome.status === "fulfilled") {
122
+ successCount++;
123
+ totalCost += outcome.cost;
124
+ parts.push(outcome.text);
125
+ }
126
+ else {
127
+ failCount++;
128
+ parts.push(`**Error**: ${outcome.error}`);
129
+ }
130
+ parts.push("");
131
+ }
132
+ // Summary footer
133
+ parts.push("---");
134
+ parts.push(`**Summary**: ${successCount} succeeded, ${failCount} failed` +
135
+ (totalCost > 0 ? ` | Total cost: $${totalCost.toFixed(6)}` : ""));
136
+ // Append balance warning if the last scrape left a low-balance signal
137
+ const balanceWarningSuffix = (0, format_js_1.formatBalanceWarning)(client.getLastBalanceWarning());
138
+ return {
139
+ content: [{ type: "text", text: parts.join("\n") + balanceWarningSuffix }],
140
+ };
141
+ }
142
+ //# sourceMappingURL=simple_batch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simple_batch.js","sourceRoot":"","sources":["../../src/tools/simple_batch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { z } from "zod";
2
+ import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
3
+ import type { AlterLabClient } from "../client.js";
4
+ export declare const usageSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
5
+ export declare const usageDescription: string;
6
+ export declare function handleUsage(client: AlterLabClient): Promise<CallToolResult>;
7
+ //# sourceMappingURL=usage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../../src/tools/usage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAInD,eAAO,MAAM,WAAW,gDAAe,CAAC;AAExC,eAAO,MAAM,gBAAgB,QAIqC,CAAC;AAEnE,wBAAsB,WAAW,CAC/B,MAAM,EAAE,cAAc,GACrB,OAAO,CAAC,cAAc,CAAC,CAYzB"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.usageDescription = exports.usageSchema = void 0;
4
+ exports.handleUsage = handleUsage;
5
+ const zod_1 = require("zod");
6
+ const errors_js_1 = require("../errors.js");
7
+ exports.usageSchema = zod_1.z.object({});
8
+ exports.usageDescription = "Get account usage for the current billing period — balance, credits consumed this period, " +
9
+ "account tier and entitlement source. " +
10
+ "Use this to track spend against your plan; use alterlab_check_balance for deposit and spend totals. " +
11
+ "No parameters required — uses your API key for identification.";
12
+ async function handleUsage(client) {
13
+ try {
14
+ const usage = await client.getUsage();
15
+ return {
16
+ content: [{ type: "text", text: formatUsageResponse(usage) }],
17
+ };
18
+ }
19
+ catch (error) {
20
+ if (isApiError(error)) {
21
+ return (0, errors_js_1.formatErrorResult)(error);
22
+ }
23
+ return (0, errors_js_1.formatErrorResult)(error);
24
+ }
25
+ }
26
+ function formatUsageResponse(usage) {
27
+ const parts = ["**Usage**\n"];
28
+ parts.push(`- Balance: $${(usage.balance_microcents / 1_000_000).toFixed(4)}`);
29
+ parts.push(`- Credits used this period: ${usage.credits_used_month}`);
30
+ parts.push(`- Account tier: ${usage.account_tier}`);
31
+ parts.push(`- Entitlement source: ${usage.entitlement_source}`);
32
+ parts.push(`- Period: ${usage.period_start} to ${usage.period_end}`);
33
+ parts.push("\nAdd funds: https://alterlab.io/dashboard/billing");
34
+ return parts.join("\n");
35
+ }
36
+ function isApiError(error) {
37
+ return (typeof error === "object" &&
38
+ error !== null &&
39
+ "status" in error &&
40
+ typeof error.status === "number");
41
+ }
42
+ //# sourceMappingURL=usage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage.js","sourceRoot":"","sources":["../../src/tools/usage.ts"],"names":[],"mappings":";;;AAcA,kCAcC;AA5BD,6BAAwB;AAGxB,4CAAgE;AAGnD,QAAA,WAAW,GAAG,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE3B,QAAA,gBAAgB,GAC3B,4FAA4F;IAC5F,uCAAuC;IACvC,sGAAsG;IACtG,gEAAgE,CAAC;AAE5D,KAAK,UAAU,WAAW,CAC/B,MAAsB;IAEtB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;SAC9D,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,IAAA,6BAAiB,EAAC,KAAK,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,IAAA,6BAAiB,EAAC,KAAc,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAoB;IAC/C,MAAM,KAAK,GAAa,CAAC,aAAa,CAAC,CAAC;IAExC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/E,KAAK,CAAC,IAAI,CAAC,+BAA+B,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC;IACtE,KAAK,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACpD,KAAK,CAAC,IAAI,CAAC,yBAAyB,KAAK,CAAC,kBAAkB,EAAE,CAAC,CAAC;IAChE,KAAK,CAAC,IAAI,CAAC,aAAa,KAAK,CAAC,YAAY,OAAO,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;IAErE,KAAK,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IAEjE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,QAAQ,IAAI,KAAK;QACjB,OAAQ,KAAkB,CAAC,MAAM,KAAK,QAAQ,CAC/C,CAAC;AACJ,CAAC"}