@occam-scaly/mcp-server 0.1.18 → 0.1.20

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/dist/index.js CHANGED
@@ -10,6 +10,32 @@ const client_js_1 = require("./client.js");
10
10
  const audit_js_1 = require("./audit.js");
11
11
  const index_js_2 = require("./tools/index.js");
12
12
  const index_js_3 = require("./resources/index.js");
13
+ function parseGlobalToolTimeoutMs() {
14
+ const raw = process.env.SCALY_MCP_TIMEOUT_MS;
15
+ if (!raw)
16
+ return null;
17
+ const n = Number(raw);
18
+ if (!Number.isFinite(n) || n <= 0)
19
+ return null;
20
+ return Math.max(1000, Math.floor(n));
21
+ }
22
+ async function withTimeout(promise, timeoutMs) {
23
+ let timer = null;
24
+ const timeout = new Promise((_, reject) => {
25
+ timer = setTimeout(() => {
26
+ const err = new Error(`Tool call exceeded SCALY_MCP_TIMEOUT_MS=${timeoutMs}ms`);
27
+ err.code = 'SCALY_MCP_TIMEOUT';
28
+ reject(err);
29
+ }, timeoutMs);
30
+ });
31
+ try {
32
+ return await Promise.race([promise, timeout]);
33
+ }
34
+ finally {
35
+ if (timer)
36
+ clearTimeout(timer);
37
+ }
38
+ }
13
39
  async function main() {
14
40
  // Load configuration
15
41
  const config = (0, config_js_1.loadConfig)();
@@ -83,7 +109,10 @@ async function main() {
83
109
  // Validate input
84
110
  const validatedInput = tool.inputSchema.parse(args || {});
85
111
  // Execute tool
86
- const result = await tool.handler(validatedInput);
112
+ const globalTimeoutMs = parseGlobalToolTimeoutMs();
113
+ const result = globalTimeoutMs
114
+ ? await withTimeout(tool.handler(validatedInput), globalTimeoutMs)
115
+ : await tool.handler(validatedInput);
87
116
  const meta = {
88
117
  request_id,
89
118
  duration_ms: Date.now() - startedAt
@@ -106,6 +135,27 @@ async function main() {
106
135
  };
107
136
  }
108
137
  catch (err) {
138
+ if (err?.code === 'SCALY_MCP_TIMEOUT') {
139
+ const meta = {
140
+ request_id,
141
+ duration_ms: Date.now() - startedAt
142
+ };
143
+ const envelope = {
144
+ success: false,
145
+ error: {
146
+ code: 'TIMEOUT',
147
+ message: err.message,
148
+ retriable: true
149
+ },
150
+ meta
151
+ };
152
+ return {
153
+ content: [
154
+ { type: 'text', text: JSON.stringify(envelope) }
155
+ ],
156
+ isError: true
157
+ };
158
+ }
109
159
  // Handle validation errors
110
160
  if (err.name === 'ZodError') {
111
161
  const issues = Array.isArray(err.errors)
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/tools/db.ts"],"names":[],"mappings":"AAaA,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAqd3D,eAAO,MAAM,OAAO,EAAE,cAAc,EA4ZnC,CAAC"}
1
+ {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/tools/db.ts"],"names":[],"mappings":"AAaA,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAmhB3D,eAAO,MAAM,OAAO,EAAE,cAAc,EAggBnC,CAAC"}
package/dist/tools/db.js CHANGED
@@ -17,6 +17,51 @@ const client_js_1 = require("../client.js");
17
17
  const jwt_js_1 = require("../utils/jwt.js");
18
18
  const paths_js_1 = require("../utils/paths.js");
19
19
  const index_js_1 = require("./index.js");
20
+ const addonQueueTails = new Map();
21
+ async function withAddonQueue(addonId, fn) {
22
+ const requestedAt = Date.now();
23
+ const tail = addonQueueTails.get(addonId) || Promise.resolve();
24
+ let release = () => { };
25
+ const gate = new Promise((resolve) => {
26
+ release = resolve;
27
+ });
28
+ const nextTail = tail.then(() => gate);
29
+ addonQueueTails.set(addonId, nextTail);
30
+ try {
31
+ await tail;
32
+ const queuedMs = Date.now() - requestedAt;
33
+ return await fn(queuedMs);
34
+ }
35
+ finally {
36
+ try {
37
+ release();
38
+ }
39
+ catch { }
40
+ if (addonQueueTails.get(addonId) === nextTail) {
41
+ addonQueueTails.delete(addonId);
42
+ }
43
+ }
44
+ }
45
+ function sleep(ms) {
46
+ return new Promise((r) => setTimeout(r, ms));
47
+ }
48
+ function isLikelyTransientDbError(err) {
49
+ const msg = String(err?.message || err || '').toLowerCase();
50
+ const code = String(err?.code || '').toLowerCase();
51
+ if (code.includes('etimedout') || code.includes('timeout'))
52
+ return true;
53
+ if (msg.includes('timed out'))
54
+ return true;
55
+ if (msg.includes('timeout'))
56
+ return true;
57
+ if (msg.includes('connection terminated'))
58
+ return true;
59
+ if (msg.includes('server closed the connection'))
60
+ return true;
61
+ if (msg.includes('socket hang up'))
62
+ return true;
63
+ return false;
64
+ }
20
65
  function deriveDomainFromApiUrl(apiUrl) {
21
66
  const host = new URL(apiUrl).host;
22
67
  return host.replace(/^api-/, '').replace(/^api\./, '');
@@ -311,10 +356,12 @@ async function withTunnelPort({ bearer, apiUrl, fn }) {
311
356
  }
312
357
  }
313
358
  async function withTunnel({ bearer, apiUrl, connectInfo, fn }) {
359
+ const tunnelStartedAt = Date.now();
314
360
  return await withTunnelPort({
315
361
  bearer,
316
362
  apiUrl,
317
363
  fn: async (port) => {
364
+ const tunnelMs = Date.now() - tunnelStartedAt;
318
365
  const client = new pg_1.Client({
319
366
  host: '127.0.0.1',
320
367
  port,
@@ -324,8 +371,20 @@ async function withTunnel({ bearer, apiUrl, connectInfo, fn }) {
324
371
  ssl: { rejectUnauthorized: false }
325
372
  });
326
373
  try {
374
+ const connectStartedAt = Date.now();
327
375
  await client.connect();
328
- return await fn(client);
376
+ const connectMs = Date.now() - connectStartedAt;
377
+ const queryStartedAt = Date.now();
378
+ const data = await fn(client);
379
+ const queryMs = Date.now() - queryStartedAt;
380
+ return {
381
+ data,
382
+ timing_ms: {
383
+ tunnel_ms: tunnelMs,
384
+ connect_ms: connectMs,
385
+ query_ms: queryMs
386
+ }
387
+ };
329
388
  }
330
389
  finally {
331
390
  try {
@@ -452,33 +511,61 @@ exports.dbTools = [
452
511
  retriable: false
453
512
  });
454
513
  }
455
- const proxy = await mintDbProxyInfo(input.addon_id, input.ttl_minutes);
456
- const result = await withTunnel({
457
- bearer: cfg.oidcToken,
458
- apiUrl: cfg.apiUrl,
459
- connectInfo: {
460
- username: proxy.username,
461
- token: proxy.token,
462
- database: proxy.database
463
- },
464
- fn: async (client) => {
465
- const timeout = Math.max(1000, Math.min(60_000, input.timeout_ms));
466
- await client.query(`SET statement_timeout TO ${timeout}`);
467
- return await client.query(input.sql, input.params || []);
514
+ const bearer = cfg.oidcToken;
515
+ return await withAddonQueue(input.addon_id, async (queued_ms) => {
516
+ const proxyStartedAt = Date.now();
517
+ const proxy = await mintDbProxyInfo(input.addon_id, input.ttl_minutes);
518
+ const proxy_ms = Date.now() - proxyStartedAt;
519
+ const runOnce = async () => {
520
+ return await withTunnel({
521
+ bearer,
522
+ apiUrl: cfg.apiUrl,
523
+ connectInfo: {
524
+ username: proxy.username,
525
+ token: proxy.token,
526
+ database: proxy.database
527
+ },
528
+ fn: async (client) => {
529
+ const timeout = Math.max(1000, Math.min(60_000, input.timeout_ms));
530
+ await client.query(`SET statement_timeout TO ${timeout}`);
531
+ return await client.query(input.sql, input.params || []);
532
+ }
533
+ });
534
+ };
535
+ let attempt = 1;
536
+ let result;
537
+ try {
538
+ result = await runOnce();
468
539
  }
469
- });
470
- const columns = result.fields.map((f) => f.name);
471
- const shaped = shapeRowsWithLimits(result.rows, input.max_rows, input.max_bytes);
472
- return (0, index_js_1.ok)({
473
- addon_id: input.addon_id,
474
- columns,
475
- rows: shaped.rows,
476
- row_count_returned: shaped.rows.length,
477
- row_count_reported: result.rowCount ?? null,
478
- truncated: shaped.truncated,
479
- max_rows: input.max_rows,
480
- max_bytes: input.max_bytes,
481
- bytes_returned: shaped.bytes_returned
540
+ catch (err) {
541
+ if (isLikelyTransientDbError(err)) {
542
+ attempt = 2;
543
+ await sleep(200 + Math.floor(Math.random() * 300));
544
+ result = await runOnce();
545
+ }
546
+ else {
547
+ throw err;
548
+ }
549
+ }
550
+ const columns = result.data.fields.map((f) => f.name);
551
+ const shaped = shapeRowsWithLimits(result.data.rows, input.max_rows, input.max_bytes);
552
+ return (0, index_js_1.ok)({
553
+ addon_id: input.addon_id,
554
+ columns,
555
+ rows: shaped.rows,
556
+ row_count_returned: shaped.rows.length,
557
+ row_count_reported: result.data.rowCount ?? null,
558
+ truncated: shaped.truncated,
559
+ max_rows: input.max_rows,
560
+ max_bytes: input.max_bytes,
561
+ bytes_returned: shaped.bytes_returned,
562
+ timing_ms: {
563
+ queued_ms,
564
+ proxy_ms,
565
+ ...result.timing_ms
566
+ },
567
+ attempts: attempt
568
+ });
482
569
  });
483
570
  }
484
571
  catch (err) {
@@ -544,26 +631,36 @@ exports.dbTools = [
544
631
  retriable: false
545
632
  });
546
633
  }
547
- const proxy = await mintDbProxyInfo(input.addon_id, input.ttl_minutes);
548
- const execResult = await withTunnel({
549
- bearer: cfg.oidcToken,
550
- apiUrl: cfg.apiUrl,
551
- connectInfo: {
552
- username: proxy.username,
553
- token: proxy.token,
554
- database: proxy.database
555
- },
556
- fn: async (client) => {
557
- const timeout = Math.max(1000, Math.min(60_000, input.timeout_ms));
558
- await client.query(`SET statement_timeout TO ${timeout}`);
559
- return await client.query(input.sql, input.params || []);
560
- }
561
- });
562
- return (0, index_js_1.ok)({
563
- preview: false,
564
- addon_id: input.addon_id,
565
- row_count: execResult.rowCount ?? null,
566
- command: execResult.command ?? null
634
+ const bearer = cfg.oidcToken;
635
+ return await withAddonQueue(input.addon_id, async (queued_ms) => {
636
+ const proxyStartedAt = Date.now();
637
+ const proxy = await mintDbProxyInfo(input.addon_id, input.ttl_minutes);
638
+ const proxy_ms = Date.now() - proxyStartedAt;
639
+ const execResult = await withTunnel({
640
+ bearer,
641
+ apiUrl: cfg.apiUrl,
642
+ connectInfo: {
643
+ username: proxy.username,
644
+ token: proxy.token,
645
+ database: proxy.database
646
+ },
647
+ fn: async (client) => {
648
+ const timeout = Math.max(1000, Math.min(60_000, input.timeout_ms));
649
+ await client.query(`SET statement_timeout TO ${timeout}`);
650
+ return await client.query(input.sql, input.params || []);
651
+ }
652
+ });
653
+ return (0, index_js_1.ok)({
654
+ preview: false,
655
+ addon_id: input.addon_id,
656
+ row_count: execResult.data.rowCount ?? null,
657
+ command: execResult.data.command ?? null,
658
+ timing_ms: {
659
+ queued_ms,
660
+ proxy_ms,
661
+ ...execResult.timing_ms
662
+ }
663
+ });
567
664
  });
568
665
  }
569
666
  catch (err) {
@@ -663,28 +760,38 @@ exports.dbTools = [
663
760
  retriable: false
664
761
  });
665
762
  }
666
- const proxy = await mintDbProxyInfo(input.addon_id, input.ttl_minutes);
667
- const res = await withTunnel({
668
- bearer: cfg.oidcToken,
669
- apiUrl: cfg.apiUrl,
670
- connectInfo: {
671
- username: proxy.username,
672
- token: proxy.token,
673
- database: proxy.database
674
- },
675
- fn: async (client) => {
676
- const timeout = Math.max(1000, Math.min(300_000, input.timeout_ms));
677
- await client.query(`SET statement_timeout TO ${timeout}`);
678
- return await client.query(sql);
679
- }
680
- });
681
- return (0, index_js_1.ok)({
682
- preview: false,
683
- addon_id: input.addon_id,
684
- migration_path: rel,
685
- command: res.command ?? null,
686
- row_count: res.rowCount ?? null,
687
- bytes: Buffer.byteLength(sql, 'utf8')
763
+ const bearer = cfg.oidcToken;
764
+ return await withAddonQueue(input.addon_id, async (queued_ms) => {
765
+ const proxyStartedAt = Date.now();
766
+ const proxy = await mintDbProxyInfo(input.addon_id, input.ttl_minutes);
767
+ const proxy_ms = Date.now() - proxyStartedAt;
768
+ const res = await withTunnel({
769
+ bearer,
770
+ apiUrl: cfg.apiUrl,
771
+ connectInfo: {
772
+ username: proxy.username,
773
+ token: proxy.token,
774
+ database: proxy.database
775
+ },
776
+ fn: async (client) => {
777
+ const timeout = Math.max(1000, Math.min(300_000, input.timeout_ms));
778
+ await client.query(`SET statement_timeout TO ${timeout}`);
779
+ return await client.query(sql);
780
+ }
781
+ });
782
+ return (0, index_js_1.ok)({
783
+ preview: false,
784
+ addon_id: input.addon_id,
785
+ migration_path: rel,
786
+ command: res.data.command ?? null,
787
+ row_count: res.data.rowCount ?? null,
788
+ bytes: Buffer.byteLength(sql, 'utf8'),
789
+ timing_ms: {
790
+ queued_ms,
791
+ proxy_ms,
792
+ ...res.timing_ms
793
+ }
794
+ });
688
795
  });
689
796
  }
690
797
  catch (err) {
@@ -725,47 +832,64 @@ exports.dbTools = [
725
832
  retriable: false
726
833
  });
727
834
  }
728
- const proxy = await mintDbProxyInfo(input.addon_id, input.ttl_minutes);
729
- const timeout = Math.max(1000, Math.min(300_000, input.timeout_ms));
730
- const env = {
731
- ...process.env,
732
- PGPASSWORD: proxy.token,
733
- PGSSLMODE: 'require',
734
- PGCONNECT_TIMEOUT: String(Math.ceil(timeout / 1000))
735
- };
736
- const res = await withTunnelPort({
737
- bearer: cfg.oidcToken,
738
- apiUrl: cfg.apiUrl,
739
- fn: (port) => (0, node_child_process_1.spawnSync)('pg_dump', [
740
- '--schema-only',
741
- '--no-owner',
742
- '--no-privileges',
743
- '-h',
744
- '127.0.0.1',
745
- '-p',
746
- String(port),
747
- '-U',
748
- proxy.username,
749
- '-d',
750
- proxy.database
751
- ], { encoding: 'utf8', env })
752
- });
753
- if (res.status !== 0) {
754
- const msg = res.error?.message ||
755
- res.stderr ||
756
- 'pg_dump failed (is it installed and on PATH?)';
757
- return (0, index_js_1.fail)({
758
- code: 'NOT_SUPPORTED',
759
- message: msg,
760
- retriable: false
835
+ const bearer = cfg.oidcToken;
836
+ return await withAddonQueue(input.addon_id, async (queued_ms) => {
837
+ const proxyStartedAt = Date.now();
838
+ const proxy = await mintDbProxyInfo(input.addon_id, input.ttl_minutes);
839
+ const proxy_ms = Date.now() - proxyStartedAt;
840
+ const timeout = Math.max(1000, Math.min(300_000, input.timeout_ms));
841
+ const env = {
842
+ ...process.env,
843
+ PGPASSWORD: proxy.token,
844
+ PGSSLMODE: 'require',
845
+ PGCONNECT_TIMEOUT: String(Math.ceil(timeout / 1000))
846
+ };
847
+ const tunnelStartedAt = Date.now();
848
+ const res = await withTunnelPort({
849
+ bearer,
850
+ apiUrl: cfg.apiUrl,
851
+ fn: (port) => {
852
+ const tunnel_ms = Date.now() - tunnelStartedAt;
853
+ const dumpStartedAt = Date.now();
854
+ const out = (0, node_child_process_1.spawnSync)('pg_dump', [
855
+ '--schema-only',
856
+ '--no-owner',
857
+ '--no-privileges',
858
+ '-h',
859
+ '127.0.0.1',
860
+ '-p',
861
+ String(port),
862
+ '-U',
863
+ proxy.username,
864
+ '-d',
865
+ proxy.database
866
+ ], { encoding: 'utf8', env });
867
+ const dump_ms = Date.now() - dumpStartedAt;
868
+ return { out, timing_ms: { tunnel_ms, dump_ms } };
869
+ }
870
+ });
871
+ if (res.out.status !== 0) {
872
+ const msg = res.out.error?.message ||
873
+ res.out.stderr ||
874
+ 'pg_dump failed (is it installed and on PATH?)';
875
+ return (0, index_js_1.fail)({
876
+ code: 'NOT_SUPPORTED',
877
+ message: msg,
878
+ retriable: false
879
+ });
880
+ }
881
+ node_fs_1.default.mkdirSync(node_path_1.default.dirname(abs), { recursive: true });
882
+ node_fs_1.default.writeFileSync(abs, res.out.stdout, 'utf8');
883
+ return (0, index_js_1.ok)({
884
+ addon_id: input.addon_id,
885
+ output_path: rel,
886
+ bytes_written: Buffer.byteLength(res.out.stdout, 'utf8'),
887
+ timing_ms: {
888
+ queued_ms,
889
+ proxy_ms,
890
+ ...res.timing_ms
891
+ }
761
892
  });
762
- }
763
- node_fs_1.default.mkdirSync(node_path_1.default.dirname(abs), { recursive: true });
764
- node_fs_1.default.writeFileSync(abs, res.stdout, 'utf8');
765
- return (0, index_js_1.ok)({
766
- addon_id: input.addon_id,
767
- output_path: rel,
768
- bytes_written: Buffer.byteLength(res.stdout, 'utf8')
769
893
  });
770
894
  }
771
895
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/tools/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/tools/db.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { type ToolDefinition } from './index.js';
2
+ export declare const doctorTools: ToolDefinition[];
3
+ //# sourceMappingURL=doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/tools/doctor.ts"],"names":[],"mappings":"AAUA,OAAO,EAAY,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAmF3D,eAAO,MAAM,WAAW,EAAE,cAAc,EAqJvC,CAAC"}
@@ -0,0 +1,228 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.doctorTools = void 0;
7
+ const zod_1 = require("zod");
8
+ const node_fs_1 = __importDefault(require("node:fs"));
9
+ const node_net_1 = __importDefault(require("node:net"));
10
+ const client_js_1 = require("../client.js");
11
+ const oidc_js_1 = require("../oidc.js");
12
+ const paths_js_1 = require("../utils/paths.js");
13
+ const index_js_1 = require("./index.js");
14
+ const DoctorSchema = zod_1.z.object({
15
+ env_file: zod_1.z
16
+ .string()
17
+ .optional()
18
+ .default('.env')
19
+ .describe('Workspace-relative path to a .env file to check (optional).'),
20
+ required_env_vars: zod_1.z
21
+ .array(zod_1.z.string().min(1))
22
+ .optional()
23
+ .default([])
24
+ .describe('Names of required env vars to check in the env_file (values are never returned).'),
25
+ db_tunnel_host: zod_1.z
26
+ .string()
27
+ .optional()
28
+ .default('127.0.0.1')
29
+ .describe('Host to check for an existing DB tunnel (optional).'),
30
+ db_tunnel_port: zod_1.z
31
+ .number()
32
+ .int()
33
+ .min(1)
34
+ .max(65535)
35
+ .optional()
36
+ .describe('Port to check for an existing DB tunnel (optional).'),
37
+ storage_addon_id: zod_1.z
38
+ .string()
39
+ .optional()
40
+ .describe('Storage add-on id to verify access (optional; requires session token).'),
41
+ storage_prefix: zod_1.z
42
+ .string()
43
+ .optional()
44
+ .describe('Optional S3 prefix to list (metadata only).')
45
+ });
46
+ function parseEnvKeys(text) {
47
+ const out = new Set();
48
+ for (const rawLine of text.split('\n')) {
49
+ const line = rawLine.trim();
50
+ if (!line || line.startsWith('#'))
51
+ continue;
52
+ const idx = line.indexOf('=');
53
+ if (idx <= 0)
54
+ continue;
55
+ const key = line.slice(0, idx).trim();
56
+ if (key)
57
+ out.add(key);
58
+ }
59
+ return out;
60
+ }
61
+ async function checkTcp(host, port, timeoutMs) {
62
+ return await new Promise((resolve) => {
63
+ const socket = node_net_1.default.createConnection({ host, port });
64
+ const done = (ok) => {
65
+ try {
66
+ socket.destroy();
67
+ }
68
+ catch { }
69
+ resolve(ok);
70
+ };
71
+ socket.setTimeout(timeoutMs);
72
+ socket.once('connect', () => done(true));
73
+ socket.once('timeout', () => done(false));
74
+ socket.once('error', () => done(false));
75
+ });
76
+ }
77
+ const LIST_BUCKET_OBJECTS = `
78
+ query ListBucketObjects($where: AddOnWhereUniqueInput!, $prefix: String, $pageSize: Int) {
79
+ listBucketObjects(where: $where, prefix: $prefix, pageSize: $pageSize) {
80
+ bucket
81
+ prefix
82
+ nextCursor
83
+ objects { key size lastModified }
84
+ }
85
+ }
86
+ `;
87
+ exports.doctorTools = [
88
+ {
89
+ name: 'scaly_doctor',
90
+ description: 'Run a local connectivity checklist (auth, API reachability, optional .env keys, optional DB tunnel port, optional storage access). Never returns secret values.',
91
+ inputSchema: DoctorSchema,
92
+ handler: async (input) => {
93
+ const checks = [];
94
+ // Auth store / token
95
+ const auth = (0, oidc_js_1.getOidcTokenStatus)();
96
+ checks.push({
97
+ name: 'auth',
98
+ ok: Boolean(auth.token) && !auth.expired,
99
+ details: {
100
+ authenticated: Boolean(auth.token),
101
+ source: auth.source,
102
+ stage: auth.stage,
103
+ expired: auth.expired,
104
+ expired_at: auth.expired_at,
105
+ auth_store_path: auth.auth_store_path
106
+ },
107
+ hint: !auth.token
108
+ ? 'Run `scaly auth login` to enable advanced tools.'
109
+ : auth.expired
110
+ ? 'Run `scaly auth login` to refresh your session token.'
111
+ : null
112
+ });
113
+ // API reachability (keys-mode)
114
+ try {
115
+ const startedAt = Date.now();
116
+ await (0, client_js_1.query)(`query DoctorPing { listStacks(take: 1) { id } }`);
117
+ checks.push({
118
+ name: 'api',
119
+ ok: true,
120
+ details: { latency_ms: Date.now() - startedAt }
121
+ });
122
+ }
123
+ catch (err) {
124
+ checks.push({
125
+ name: 'api',
126
+ ok: false,
127
+ details: { error: err?.message || String(err) },
128
+ hint: 'Verify SCALY_API_KEY and SCALY_STAGE, and confirm the API is reachable.'
129
+ });
130
+ }
131
+ // .env key checklist (optional)
132
+ if (input.required_env_vars.length > 0) {
133
+ try {
134
+ const { abs, rel } = (0, paths_js_1.validateWorkspaceRelativePath)(input.env_file);
135
+ if (!node_fs_1.default.existsSync(abs)) {
136
+ checks.push({
137
+ name: 'env',
138
+ ok: false,
139
+ details: { env_file: rel, missing_file: true },
140
+ hint: `Create ${rel} (or point env_file at the correct path).`
141
+ });
142
+ }
143
+ else {
144
+ const keys = parseEnvKeys(node_fs_1.default.readFileSync(abs, 'utf8'));
145
+ const missing = input.required_env_vars.filter((k) => !keys.has(k));
146
+ checks.push({
147
+ name: 'env',
148
+ ok: missing.length === 0,
149
+ details: {
150
+ env_file: rel,
151
+ required: input.required_env_vars,
152
+ missing
153
+ },
154
+ hint: missing.length > 0
155
+ ? `Add missing keys to ${rel} (values are not shown).`
156
+ : null
157
+ });
158
+ }
159
+ }
160
+ catch (err) {
161
+ checks.push({
162
+ name: 'env',
163
+ ok: false,
164
+ details: {
165
+ error: err?.message || String(err),
166
+ workspace_root: (0, paths_js_1.resolveWorkspaceRoot)()
167
+ },
168
+ hint: 'If you started the MCP server outside your repo, set SCALY_WORKSPACE_ROOT.'
169
+ });
170
+ }
171
+ }
172
+ // DB tunnel check (optional)
173
+ if (typeof input.db_tunnel_port === 'number') {
174
+ const okTcp = await checkTcp(input.db_tunnel_host, input.db_tunnel_port, 1000);
175
+ checks.push({
176
+ name: 'db_tunnel',
177
+ ok: okTcp,
178
+ details: { host: input.db_tunnel_host, port: input.db_tunnel_port },
179
+ hint: okTcp ? null : 'Start a DB tunnel (CLI or MCP) and retry.'
180
+ });
181
+ }
182
+ // Storage access check (optional, requires OIDC)
183
+ if (input.storage_addon_id) {
184
+ if (!auth.token || auth.expired) {
185
+ checks.push({
186
+ name: 'storage',
187
+ ok: false,
188
+ details: { addon_id: input.storage_addon_id, skipped: true },
189
+ hint: 'Run `scaly auth login` to enable storage tools.'
190
+ });
191
+ }
192
+ else {
193
+ try {
194
+ const startedAt = Date.now();
195
+ await (0, client_js_1.oidcQuery)(LIST_BUCKET_OBJECTS, {
196
+ where: { id: input.storage_addon_id },
197
+ prefix: input.storage_prefix,
198
+ pageSize: 1
199
+ });
200
+ checks.push({
201
+ name: 'storage',
202
+ ok: true,
203
+ details: {
204
+ addon_id: input.storage_addon_id,
205
+ prefix: input.storage_prefix ?? null,
206
+ latency_ms: Date.now() - startedAt
207
+ }
208
+ });
209
+ }
210
+ catch (err) {
211
+ checks.push({
212
+ name: 'storage',
213
+ ok: false,
214
+ details: {
215
+ addon_id: input.storage_addon_id,
216
+ error: err?.message || String(err)
217
+ },
218
+ hint: 'Verify your session token and that the storage add-on exists and is accessible.'
219
+ });
220
+ }
221
+ }
222
+ }
223
+ const okAll = checks.every((c) => c.ok !== false);
224
+ return (0, index_js_1.ok)({ ok: okAll, checks });
225
+ }
226
+ }
227
+ ];
228
+ //# sourceMappingURL=doctor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/tools/doctor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,MAAM,SAAS,GACjB,kBAAkB,GAClB,oBAAoB,GACpB,iBAAiB,GACjB,mBAAmB,GACnB,eAAe,GACf,cAAc,GACd,SAAS,GACT,gBAAgB,GAChB,mBAAmB,GACnB,YAAY,GACZ,eAAe,CAAC;AAEpB,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAC3B;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAC1B;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEzD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC9B,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;CAC9D;AAED,wBAAgB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAEnD;AAED,wBAAgB,IAAI,CAClB,KAAK,EAAE,SAAS,EAChB,IAAI,CAAC,EAAE,OAAO,GACb,iBAAiB,CAAC,KAAK,CAAC,CAI1B;AAqBD,eAAO,MAAM,QAAQ,EAAE,cAAc,EAiBpC,CAAC;AAGF,eAAO,MAAM,OAAO,6BAEnB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,MAAM,SAAS,GACjB,kBAAkB,GAClB,oBAAoB,GACpB,iBAAiB,GACjB,mBAAmB,GACnB,eAAe,GACf,cAAc,GACd,SAAS,GACT,gBAAgB,GAChB,mBAAmB,GACnB,YAAY,GACZ,eAAe,CAAC;AAEpB,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,QAAQ,CAAC;CAChB;AAED,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAC3B;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAC1B;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAEzD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC9B,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;CAC9D;AAED,wBAAgB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAEnD;AAED,wBAAgB,IAAI,CAClB,KAAK,EAAE,SAAS,EAChB,IAAI,CAAC,EAAE,OAAO,GACb,iBAAiB,CAAC,KAAK,CAAC,CAI1B;AAsBD,eAAO,MAAM,QAAQ,EAAE,cAAc,EAkBpC,CAAC;AAGF,eAAO,MAAM,OAAO,6BAEnB,CAAC"}
@@ -28,6 +28,7 @@ const db_js_1 = require("./db.js");
28
28
  const s3_js_1 = require("./s3.js");
29
29
  const auth_js_1 = require("./auth.js");
30
30
  const userGroups_js_1 = require("./userGroups.js");
31
+ const doctor_js_1 = require("./doctor.js");
31
32
  // Export all tools as a flat array
32
33
  exports.allTools = [
33
34
  ...auth_js_1.authTools,
@@ -36,6 +37,7 @@ exports.allTools = [
36
37
  ...jobs_js_1.listJobsTools,
37
38
  ...addons_js_1.addOnTools,
38
39
  ...userGroups_js_1.userGroupsTools,
40
+ ...doctor_js_1.doctorTools,
39
41
  ...deployments_js_1.deploymentTools,
40
42
  ...logs_js_1.logTools,
41
43
  ...diagnose_js_1.diagnoseTools,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":";;;AA+CA,gBAEC;AAED,oBAOC;AAXD,SAAgB,EAAE,CAAI,IAAO;IAC3B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACjC,CAAC;AAED,SAAgB,IAAI,CAClB,KAAgB,EAChB,IAAc;IAEd,OAAO,IAAI,KAAK,SAAS;QACvB,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE;QAC3B,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,mBAAmB;AACnB,uCAA0C;AAC1C,6CAAgD;AAChD,uCAA0C;AAC1C,qDAAmD;AACnD,uCAAqC;AACrC,+CAA8C;AAC9C,qCAAoC;AACpC,mDAAiD;AACjD,2CAA0C;AAC1C,6CAA4C;AAC5C,2CAAyC;AACzC,yCAAwC;AACxC,mCAAkC;AAClC,mCAAkC;AAClC,uCAAsC;AACtC,mDAAkD;AAElD,mCAAmC;AACtB,QAAA,QAAQ,GAAqB;IACxC,GAAG,mBAAS;IACZ,GAAG,uBAAa;IAChB,GAAG,6BAAgB;IACnB,GAAG,uBAAa;IAChB,GAAG,sBAAU;IACb,GAAG,+BAAe;IAClB,GAAG,gCAAe;IAClB,GAAG,kBAAQ;IACX,GAAG,2BAAa;IAChB,GAAG,iBAAQ;IACX,GAAG,8BAAc;IACjB,GAAG,uBAAW;IACd,GAAG,yBAAY;IACf,GAAG,qBAAU;IACb,GAAG,eAAO;IACV,GAAG,eAAO;CACX,CAAC;AAEF,mCAAmC;AACtB,QAAA,OAAO,GAAG,IAAI,GAAG,CAC5B,gBAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAC1C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":";;;AA+CA,gBAEC;AAED,oBAOC;AAXD,SAAgB,EAAE,CAAI,IAAO;IAC3B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACjC,CAAC;AAED,SAAgB,IAAI,CAClB,KAAgB,EAChB,IAAc;IAEd,OAAO,IAAI,KAAK,SAAS;QACvB,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE;QAC3B,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACtC,CAAC;AAED,mBAAmB;AACnB,uCAA0C;AAC1C,6CAAgD;AAChD,uCAA0C;AAC1C,qDAAmD;AACnD,uCAAqC;AACrC,+CAA8C;AAC9C,qCAAoC;AACpC,mDAAiD;AACjD,2CAA0C;AAC1C,6CAA4C;AAC5C,2CAAyC;AACzC,yCAAwC;AACxC,mCAAkC;AAClC,mCAAkC;AAClC,uCAAsC;AACtC,mDAAkD;AAClD,2CAA0C;AAE1C,mCAAmC;AACtB,QAAA,QAAQ,GAAqB;IACxC,GAAG,mBAAS;IACZ,GAAG,uBAAa;IAChB,GAAG,6BAAgB;IACnB,GAAG,uBAAa;IAChB,GAAG,sBAAU;IACb,GAAG,+BAAe;IAClB,GAAG,uBAAW;IACd,GAAG,gCAAe;IAClB,GAAG,kBAAQ;IACX,GAAG,2BAAa;IAChB,GAAG,iBAAQ;IACX,GAAG,8BAAc;IACjB,GAAG,uBAAW;IACd,GAAG,yBAAY;IACf,GAAG,qBAAU;IACb,GAAG,eAAO;IACV,GAAG,eAAO;CACX,CAAC;AAEF,mCAAmC;AACtB,QAAA,OAAO,GAAG,IAAI,GAAG,CAC5B,gBAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAC1C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"userGroups.d.ts","sourceRoot":"","sources":["../../src/tools/userGroups.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,cAAc,EAAY,MAAM,YAAY,CAAC;AAqH3D,eAAO,MAAM,eAAe,EAAE,cAAc,EAwH3C,CAAC"}
1
+ {"version":3,"file":"userGroups.d.ts","sourceRoot":"","sources":["../../src/tools/userGroups.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,cAAc,EAAY,MAAM,YAAY,CAAC;AAqJ3D,eAAO,MAAM,eAAe,EAAE,cAAc,EAiR3C,CAAC"}
@@ -25,6 +25,29 @@ const DeleteUserGroupSchema = zod_1.z.object({
25
25
  .describe('Account ID. If omitted, Scaly will infer from your accessible stacks.'),
26
26
  name: zod_1.z.string().min(1).describe('Group name to delete')
27
27
  });
28
+ const ListUserGroupMembersSchema = zod_1.z.object({
29
+ account_id: zod_1.z
30
+ .string()
31
+ .optional()
32
+ .describe('Account ID. If omitted, Scaly will infer from your accessible stacks.'),
33
+ name: zod_1.z.string().min(1).describe('Group name')
34
+ });
35
+ const AddUsersToGroupSchema = zod_1.z.object({
36
+ account_id: zod_1.z
37
+ .string()
38
+ .optional()
39
+ .describe('Account ID. If omitted, Scaly will infer from your accessible stacks.'),
40
+ name: zod_1.z.string().min(1).describe('Group name'),
41
+ emails: zod_1.z.array(zod_1.z.string().min(3)).min(1).describe('User emails to add')
42
+ });
43
+ const RemoveUsersFromGroupSchema = zod_1.z.object({
44
+ account_id: zod_1.z
45
+ .string()
46
+ .optional()
47
+ .describe('Account ID. If omitted, Scaly will infer from your accessible stacks.'),
48
+ name: zod_1.z.string().min(1).describe('Group name'),
49
+ emails: zod_1.z.array(zod_1.z.string().min(3)).min(1).describe('User emails to remove')
50
+ });
28
51
  async function resolveAccountId(explicit) {
29
52
  if (explicit)
30
53
  return explicit;
@@ -129,6 +152,52 @@ exports.userGroupsTools = [
129
152
  });
130
153
  }
131
154
  },
155
+ {
156
+ name: 'scaly_list_user_group_members',
157
+ description: "List users in a specific group in the account's User Groups. Requires a Scaly session token (`scaly auth login`).",
158
+ inputSchema: ListUserGroupMembersSchema,
159
+ handler: async (input) => {
160
+ const accountId = await resolveAccountId(input.account_id);
161
+ if (!accountId) {
162
+ return (0, index_js_1.fail)({
163
+ code: 'VALIDATION_ERROR',
164
+ message: 'account_id is required (unable to infer account from accessible stacks).',
165
+ retriable: false
166
+ });
167
+ }
168
+ const pool = await getAccountUserGroupsAddOnId(accountId);
169
+ if (!pool.ok)
170
+ return pool.error;
171
+ const result = await (0, client_js_1.oidcQuery)(`
172
+ query ListGroupsWithUsers($where: AddOnWhereUniqueInput!) {
173
+ listGroups(where: $where) { name description users { email name status enabled } }
174
+ }
175
+ `, { where: { id: pool.addonId } });
176
+ const group = (result.listGroups || []).find((g) => g.name === input.name);
177
+ if (!group) {
178
+ return (0, index_js_1.fail)({
179
+ code: 'RESOURCE_NOT_FOUND',
180
+ message: `Group not found: ${input.name}`,
181
+ retriable: false
182
+ });
183
+ }
184
+ return (0, index_js_1.ok)({
185
+ account_id: accountId,
186
+ user_groups: { addon_id: pool.addonId, name: pool.addonName },
187
+ group: {
188
+ name: group.name,
189
+ description: group.description ?? null
190
+ },
191
+ members: (group.users || []).map((u) => ({
192
+ email: u.email,
193
+ name: u.name,
194
+ status: u.status ?? null,
195
+ enabled: typeof u.enabled === 'boolean' ? u.enabled : null
196
+ })),
197
+ count: (group.users || []).length
198
+ });
199
+ }
200
+ },
132
201
  {
133
202
  name: 'scaly_create_user_group',
134
203
  description: "Create a group in the account's User Groups. Requires a Scaly session token (`scaly auth login`).",
@@ -191,6 +260,74 @@ exports.userGroupsTools = [
191
260
  count: result.deleteUserGroups?.count ?? 0
192
261
  });
193
262
  }
263
+ },
264
+ {
265
+ name: 'scaly_add_users_to_group',
266
+ description: "Add users to a group in the account's User Groups (by email). Requires a Scaly session token (`scaly auth login`).",
267
+ inputSchema: AddUsersToGroupSchema,
268
+ handler: async (input) => {
269
+ const accountId = await resolveAccountId(input.account_id);
270
+ if (!accountId) {
271
+ return (0, index_js_1.fail)({
272
+ code: 'VALIDATION_ERROR',
273
+ message: 'account_id is required (unable to infer account from accessible stacks).',
274
+ retriable: false
275
+ });
276
+ }
277
+ const pool = await getAccountUserGroupsAddOnId(accountId);
278
+ if (!pool.ok)
279
+ return pool.error;
280
+ const result = await (0, client_js_1.oidcQuery)(`
281
+ mutation AddUsersToGroups($where: AddOnWhereUniqueInput!, $emails: [String!]!, $groups: [String!]!) {
282
+ addUsersToGroups(where: $where, emails: $emails, groups: $groups) { count }
283
+ }
284
+ `, {
285
+ where: { id: pool.addonId },
286
+ emails: input.emails,
287
+ groups: [input.name]
288
+ });
289
+ return (0, index_js_1.ok)({
290
+ account_id: accountId,
291
+ user_groups: { addon_id: pool.addonId, name: pool.addonName },
292
+ group: input.name,
293
+ added_emails: input.emails,
294
+ count: result.addUsersToGroups?.count ?? null
295
+ });
296
+ }
297
+ },
298
+ {
299
+ name: 'scaly_remove_users_from_group',
300
+ description: "Remove users from a group in the account's User Groups (by email). Requires a Scaly session token (`scaly auth login`).",
301
+ inputSchema: RemoveUsersFromGroupSchema,
302
+ handler: async (input) => {
303
+ const accountId = await resolveAccountId(input.account_id);
304
+ if (!accountId) {
305
+ return (0, index_js_1.fail)({
306
+ code: 'VALIDATION_ERROR',
307
+ message: 'account_id is required (unable to infer account from accessible stacks).',
308
+ retriable: false
309
+ });
310
+ }
311
+ const pool = await getAccountUserGroupsAddOnId(accountId);
312
+ if (!pool.ok)
313
+ return pool.error;
314
+ const result = await (0, client_js_1.oidcQuery)(`
315
+ mutation RemoveUsersFromGroups($where: AddOnWhereUniqueInput!, $emails: [String!]!, $groups: [String!]!) {
316
+ removeUsersFromGroups(where: $where, emails: $emails, groups: $groups) { count }
317
+ }
318
+ `, {
319
+ where: { id: pool.addonId },
320
+ emails: input.emails,
321
+ groups: [input.name]
322
+ });
323
+ return (0, index_js_1.ok)({
324
+ account_id: accountId,
325
+ user_groups: { addon_id: pool.addonId, name: pool.addonName },
326
+ group: input.name,
327
+ removed_emails: input.emails,
328
+ count: result.removeUsersFromGroups?.count ?? null
329
+ });
330
+ }
194
331
  }
195
332
  ];
196
333
  //# sourceMappingURL=userGroups.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"userGroups.js","sourceRoot":"","sources":["../../src/tools/userGroups.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"userGroups.js","sourceRoot":"","sources":["../../src/tools/userGroups.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@occam-scaly/mcp-server",
3
- "version": "0.1.18",
3
+ "version": "0.1.20",
4
4
  "description": "MCP server for Scaly - connect AI assistants to your cloud infrastructure",
5
5
  "main": "dist/index.js",
6
6
  "publishConfig": {
@@ -27,7 +27,7 @@
27
27
  "license": "MIT",
28
28
  "dependencies": {
29
29
  "@modelcontextprotocol/sdk": "^1.6.1",
30
- "@occam-scaly/scaly-cli": "0.2.7",
30
+ "@occam-scaly/scaly-cli": "0.2.11",
31
31
  "graphql": "^16.8.1",
32
32
  "graphql-request": "^6.1.0",
33
33
  "pg": "^8.13.1",