@chriscamp/sf-data-cloud-mcp 0.1.0 → 0.1.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"list-dmos.d.ts","sourceRoot":"","sources":["../../../src/tools/dmo/list-dmos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,eAAO,MAAM,mBAAmB;;iBAE9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,YAAY,CAChC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CASpC"}
1
+ {"version":3,"file":"list-dmos.d.ts","sourceRoot":"","sources":["../../../src/tools/dmo/list-dmos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,eAAO,MAAM,mBAAmB;;iBAE9B,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,YAAY,CAChC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,WAAW,EACjB,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAYpC"}
@@ -4,7 +4,9 @@ export const listDmosInputSchema = z.object({
4
4
  });
5
5
  export async function listDmosTool(input, auth, http) {
6
6
  const orgCreds = await auth.getOrgCredentials(input.target_org);
7
- const result = await http.paginatedGet(`${orgCreds.instanceUrl}/services/data/v66.0/ssot/data-model-objects`, orgCreds.accessToken, "dataModelObjects", orgCreds.instanceUrl);
7
+ // DMO API returns max 50 per page with no pagination signals (no totalSize,
8
+ // no batchSize, no nextPageUrl). Pass hintBatchSize so offset fallback works.
9
+ const result = await http.paginatedGet(`${orgCreds.instanceUrl}/services/data/v66.0/ssot/data-model-objects`, orgCreds.accessToken, "dataModelObjects", orgCreds.instanceUrl, 50);
8
10
  return result.items;
9
11
  }
10
12
  //# sourceMappingURL=list-dmos.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"list-dmos.js","sourceRoot":"","sources":["../../../src/tools/dmo/list-dmos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;CACpE,CAAC,CAAC;AAaH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,KAAoB,EACpB,IAAiB,EACjB,IAAyB;IAEzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CACpC,GAAG,QAAQ,CAAC,WAAW,8CAA8C,EACrE,QAAQ,CAAC,WAAW,EACpB,kBAAkB,EAClB,QAAQ,CAAC,WAAW,CACrB,CAAC;IACF,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"list-dmos.js","sourceRoot":"","sources":["../../../src/tools/dmo/list-dmos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;CACpE,CAAC,CAAC;AAaH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,KAAoB,EACpB,IAAiB,EACjB,IAAyB;IAEzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAChE,4EAA4E;IAC5E,8EAA8E;IAC9E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CACpC,GAAG,QAAQ,CAAC,WAAW,8CAA8C,EACrE,QAAQ,CAAC,WAAW,EACpB,kBAAkB,EAClB,QAAQ,CAAC,WAAW,EACpB,EAAE,CACH,CAAC;IACF,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC"}
@@ -14,10 +14,20 @@ export declare class DataCloudHttpClient {
14
14
  delete<T = unknown>(url: string, token: string): Promise<T>;
15
15
  patch<T = unknown>(url: string, token: string, body?: unknown): Promise<T>;
16
16
  /**
17
- * Paginated GET — follows nextPageUrl to collect all items.
18
- * Returns the combined unwrapped response.
17
+ * Paginated GET — follows nextPageUrl, nextPageToken, or offset to collect all items.
18
+ *
19
+ * Three pagination styles (tried in order):
20
+ * 1. nextPageUrl — follow the URL (data-streams, data-actions)
21
+ * 2. nextPageToken — collection pattern (calculated-insights)
22
+ * 3. Offset-based fallback — when the API returns no pagination signals
23
+ * but totalSize indicates more items exist, or the page is full.
24
+ * Page size detection priority: API response batchSize > caller hint > page item count.
25
+ *
26
+ * @param hintBatchSize - Caller-provided page size hint for APIs that return no
27
+ * pagination signals at all (e.g. DMOs return a flat array capped at 50 with no
28
+ * totalSize, batchSize, or nextPageUrl).
19
29
  */
20
- paginatedGet(url: string, token: string, expectedKey: string, baseUrl?: string): Promise<UnwrappedResponse>;
30
+ paginatedGet(url: string, token: string, expectedKey: string, baseUrl?: string, hintBatchSize?: number): Promise<UnwrappedResponse>;
21
31
  private request;
22
32
  }
23
33
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/util/http.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErE,UAAU,iBAAiB;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAS;gBAEb,OAAO,GAAE,iBAAsB;IAMrC,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAIxD,IAAI,CAAC,CAAC,GAAG,OAAO,EACpB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,CAAC,CAAC;IAIP,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAI3D,KAAK,CAAC,CAAC,GAAG,OAAO,EACrB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,CAAC,CAAC;IAIb;;;OAGG;IACG,YAAY,CAChB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,iBAAiB,CAAC;YA+Bf,OAAO;CAoDtB"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/util/http.ts"],"names":[],"mappings":"AACA,OAAO,EAAkB,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErE,UAAU,iBAAiB;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAS;gBAEb,OAAO,GAAE,iBAAsB;IAMrC,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAIxD,IAAI,CAAC,CAAC,GAAG,OAAO,EACpB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,CAAC,CAAC;IAIP,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAI3D,KAAK,CAAC,CAAC,GAAG,OAAO,EACrB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,CAAC,CAAC;IAIb;;;;;;;;;;;;;OAaG;IACG,YAAY,CAChB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,EAChB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,iBAAiB,CAAC;YAgDf,OAAO;CAoDtB"}
package/dist/util/http.js CHANGED
@@ -22,13 +22,24 @@ export class DataCloudHttpClient {
22
22
  return this.request("PATCH", url, token, body);
23
23
  }
24
24
  /**
25
- * Paginated GET — follows nextPageUrl to collect all items.
26
- * Returns the combined unwrapped response.
25
+ * Paginated GET — follows nextPageUrl, nextPageToken, or offset to collect all items.
26
+ *
27
+ * Three pagination styles (tried in order):
28
+ * 1. nextPageUrl — follow the URL (data-streams, data-actions)
29
+ * 2. nextPageToken — collection pattern (calculated-insights)
30
+ * 3. Offset-based fallback — when the API returns no pagination signals
31
+ * but totalSize indicates more items exist, or the page is full.
32
+ * Page size detection priority: API response batchSize > caller hint > page item count.
33
+ *
34
+ * @param hintBatchSize - Caller-provided page size hint for APIs that return no
35
+ * pagination signals at all (e.g. DMOs return a flat array capped at 50 with no
36
+ * totalSize, batchSize, or nextPageUrl).
27
37
  */
28
- async paginatedGet(url, token, expectedKey, baseUrl) {
38
+ async paginatedGet(url, token, expectedKey, baseUrl, hintBatchSize) {
29
39
  const allItems = [];
30
40
  let currentUrl = url;
31
41
  let totalSize;
42
+ let effectiveBatchSize;
32
43
  let pages = 0;
33
44
  while (currentUrl && pages < this.maxPages) {
34
45
  const raw = await this.get(currentUrl, token);
@@ -36,17 +47,33 @@ export class DataCloudHttpClient {
36
47
  allItems.push(...page.items);
37
48
  if (page.totalSize !== undefined)
38
49
  totalSize = page.totalSize;
50
+ if (page.responseBatchSize !== undefined)
51
+ effectiveBatchSize = page.responseBatchSize;
52
+ // Resolve the page size: API response > caller hint > page length
53
+ const pageSize = effectiveBatchSize ?? hintBatchSize ?? page.items.length;
39
54
  if (page.nextPageUrl) {
40
- // nextPageUrl may be relative (e.g. "/services/data/v66.0/ssot/...")
55
+ // Style 1: follow nextPageUrl (data-streams, data-actions)
41
56
  currentUrl = page.nextPageUrl.startsWith("http")
42
57
  ? page.nextPageUrl
43
58
  : `${baseUrl}${page.nextPageUrl}`;
44
59
  }
45
60
  else if (page.nextPageToken) {
46
- // Token-based pagination (collection pattern)
61
+ // Style 2: token-based pagination (calculated-insights collection pattern)
47
62
  const sep = currentUrl.includes("?") ? "&" : "?";
48
63
  currentUrl = `${url}${sep}pageToken=${page.nextPageToken}`;
49
64
  }
65
+ else if (totalSize !== undefined && allItems.length < totalSize) {
66
+ // Offset fallback: API told us the total, we haven't reached it
67
+ const sep = url.includes("?") ? "&" : "?";
68
+ currentUrl = `${url}${sep}offset=${allItems.length}&batchSize=${pageSize}`;
69
+ }
70
+ else if (totalSize === undefined &&
71
+ page.items.length > 0 &&
72
+ page.items.length >= pageSize) {
73
+ // Offset fallback: no totalSize, page was full — assume more exist
74
+ const sep = url.includes("?") ? "&" : "?";
75
+ currentUrl = `${url}${sep}offset=${allItems.length}&batchSize=${pageSize}`;
76
+ }
50
77
  else {
51
78
  break;
52
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/util/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAA0B,MAAM,aAAa,CAAC;AAQrE,MAAM,OAAO,mBAAmB;IACtB,UAAU,CAAS;IACnB,YAAY,CAAS;IACrB,QAAQ,CAAS;IAEzB,YAAY,UAA6B,EAAE;QACzC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,IAAI,CAAC;QACjD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,GAAG,CAAc,GAAW,EAAE,KAAa;QAC/C,OAAO,IAAI,CAAC,OAAO,CAAI,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,IAAI,CACR,GAAW,EACX,KAAa,EACb,IAAc;QAEd,OAAO,IAAI,CAAC,OAAO,CAAI,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,MAAM,CAAc,GAAW,EAAE,KAAa;QAClD,OAAO,IAAI,CAAC,OAAO,CAAI,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,KAAK,CACT,GAAW,EACX,KAAa,EACb,IAAc;QAEd,OAAO,IAAI,CAAC,OAAO,CAAI,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACpD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,YAAY,CAChB,GAAW,EACX,KAAa,EACb,WAAmB,EACnB,OAAgB;QAEhB,MAAM,QAAQ,GAA8B,EAAE,CAAC;QAC/C,IAAI,UAAU,GAAG,GAAG,CAAC;QACrB,IAAI,SAA6B,CAAC;QAClC,IAAI,KAAK,GAAG,CAAC,CAAC;QAEd,OAAO,UAAU,IAAI,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC3C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAU,UAAU,EAAE,KAAK,CAAC,CAAC;YACvD,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;YAE9C,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;gBAAE,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YAE7D,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,qEAAqE;gBACrE,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC;oBAC9C,CAAC,CAAC,IAAI,CAAC,WAAW;oBAClB,CAAC,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACtC,CAAC;iBAAM,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC9B,8CAA8C;gBAC9C,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;gBACjD,UAAU,GAAG,GAAG,GAAG,GAAG,GAAG,aAAa,IAAI,CAAC,aAAa,EAAE,CAAC;YAC7D,CAAC;iBAAM,CAAC;gBACN,MAAM;YACR,CAAC;YACD,KAAK,EAAE,CAAC;QACV,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACxC,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,MAAc,EACd,GAAW,EACX,KAAa,EACb,IAAc;QAEd,IAAI,SAAS,GAAiB,IAAI,CAAC;QAEnC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,OAAO,EAAE,EAAE,CAAC;YAC5D,MAAM,OAAO,GAA2B;gBACtC,aAAa,EAAE,UAAU,KAAK,EAAE;gBAChC,MAAM,EAAE,kBAAkB;aAC3B,CAAC;YACF,MAAM,IAAI,GAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;YAE9C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACvB,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;gBAC7C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACnC,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAExC,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBAChB,OAAO,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAM,CAAC;YACtC,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,QAAQ;iBAC7B,IAAI,EAAE;iBACN,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;YACzD,MAAM,YAAY,GACf,SAAkC,CAAC,OAAO;gBAC3C,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;YAE5B,IACE,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,CAAC;gBACnD,OAAO,GAAG,IAAI,CAAC,UAAU,EACzB,CAAC;gBACD,SAAS,GAAG,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;gBACpC,uEAAuE;gBACvE,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;gBACvD,MAAM,OAAO,GAAG,UAAU;oBACxB,CAAC,CAAC,eAAe,CAAC,UAAU,CAAC;oBAC7B,CAAC,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;gBAC7C,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;gBACjD,SAAS;YACX,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,SAAS,IAAI,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC/D,CAAC;CACF;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,GAAG,IAAI,CAAC;IAC3C,mBAAmB;IACnB,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5E,OAAO,IAAI,CAAC,CAAC,WAAW;AAC1B,CAAC"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/util/http.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@ export interface UnwrappedResponse {
7
7
  totalSize?: number;
8
8
  nextPageUrl?: string;
9
9
  nextPageToken?: string;
10
+ /** The page size reported by the API (e.g. segments returns batchSize: 20). */
11
+ responseBatchSize?: number;
10
12
  }
11
13
  export declare function unwrapResponse(data: unknown, expectedKey: string): UnwrappedResponse;
12
14
  //# sourceMappingURL=unwrap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unwrap.d.ts","sourceRoot":"","sources":["../../src/util/unwrap.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,MAAM,GAClB,iBAAiB,CAmDnB"}
1
+ {"version":3,"file":"unwrap.d.ts","sourceRoot":"","sources":["../../src/util/unwrap.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,OAAO,EACb,WAAW,EAAE,MAAM,GAClB,iBAAiB,CAsDnB"}
@@ -45,7 +45,10 @@ export function unwrapResponse(data, expectedKey) {
45
45
  return {
46
46
  items: (items ?? []),
47
47
  totalSize: typeof obj.totalSize === "number" ? obj.totalSize : undefined,
48
- nextPageUrl: typeof obj.nextPageUrl === "string" ? obj.nextPageUrl : undefined
48
+ nextPageUrl: typeof obj.nextPageUrl === "string" ? obj.nextPageUrl : undefined,
49
+ responseBatchSize: typeof obj.batchSize === "number" && obj.batchSize > 0
50
+ ? obj.batchSize
51
+ : undefined
49
52
  };
50
53
  }
51
54
  //# sourceMappingURL=unwrap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"unwrap.js","sourceRoot":"","sources":["../../src/util/unwrap.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,MAAM,UAAU,cAAc,CAC5B,IAAa,EACb,WAAmB;IAEnB,aAAa;IACb,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACvB,CAAC;IAED,MAAM,GAAG,GAAG,IAA+B,CAAC;IAE5C,6EAA6E;IAC7E,IAAI,GAAG,CAAC,UAAU,IAAI,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QACzD,MAAM,IAAI,GAAG,GAAG,CAAC,UAAqC,CAAC;QACvD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,OAAO;YACL,KAAK,EAAE,KAAkC;YACzC,SAAS,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAClE,aAAa,EAAE,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;SACvF,CAAC;IACJ,CAAC;IAED,mEAAmE;IACnE,IAAI,KAA4B,CAAC;IAEjC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;QACpC,KAAK,GAAG,GAAG,CAAC,WAAW,CAAc,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,yDAAyD;QACzD,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YACjC,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAc,CAAC;QACrC,CAAC;IACH,CAAC;IAED,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,2CAA2C;QAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YACrC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,KAAK,GAAG,GAAG,CAAC;gBACZ,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,KAAK,EAAE,CAAC,KAAK,IAAI,EAAE,CAA8B;QACjD,SAAS,EAAE,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QACxE,WAAW,EAAE,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;KAC/E,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"unwrap.js","sourceRoot":"","sources":["../../src/util/unwrap.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH,MAAM,UAAU,cAAc,CAC5B,IAAa,EACb,WAAmB;IAEnB,aAAa;IACb,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC;IAED,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;IACvB,CAAC;IAED,MAAM,GAAG,GAAG,IAA+B,CAAC;IAE5C,6EAA6E;IAC7E,IAAI,GAAG,CAAC,UAAU,IAAI,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QACzD,MAAM,IAAI,GAAG,GAAG,CAAC,UAAqC,CAAC;QACvD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,OAAO;YACL,KAAK,EAAE,KAAkC;YACzC,SAAS,EAAE,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;YAClE,aAAa,EAAE,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS;SACvF,CAAC;IACJ,CAAC;IAED,mEAAmE;IACnE,IAAI,KAA4B,CAAC;IAEjC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;QACpC,KAAK,GAAG,GAAG,CAAC,WAAW,CAAc,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,yDAAyD;QACzD,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;YACjC,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAc,CAAC;QACrC,CAAC;IACH,CAAC;IAED,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,2CAA2C;QAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YACrC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,KAAK,GAAG,GAAG,CAAC;gBACZ,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,KAAK,EAAE,CAAC,KAAK,IAAI,EAAE,CAA8B;QACjD,SAAS,EAAE,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;QACxE,WAAW,EAAE,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QAC9E,iBAAiB,EAAE,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,IAAI,GAAG,CAAC,SAAS,GAAG,CAAC;YACvE,CAAC,CAAC,GAAG,CAAC,SAAS;YACf,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,46 +1,46 @@
1
- {
2
- "name": "@chriscamp/sf-data-cloud-mcp",
3
- "version": "0.1.0",
4
- "description": "MCP server for Salesforce Data Cloud operations",
5
- "type": "module",
6
- "bin": {
7
- "sf-data-cloud-mcp": "./dist/index.js"
8
- },
9
- "files": [
10
- "dist",
11
- "README.md"
12
- ],
13
- "scripts": {
14
- "build": "tsc",
15
- "dev": "tsc --watch",
16
- "test": "vitest run",
17
- "test:watch": "vitest",
18
- "lint": "tsc --noEmit",
19
- "prepare": "npm run build",
20
- "prepublishOnly": "npm run build"
21
- },
22
- "engines": {
23
- "node": ">=18"
24
- },
25
- "keywords": [
26
- "mcp",
27
- "salesforce",
28
- "data-cloud",
29
- "ai"
30
- ],
31
- "author": "Chris Camp",
32
- "license": "MIT",
33
- "repository": {
34
- "type": "git",
35
- "url": "https://github.com/ChrisCampTN/sf-data-cloud-mcp.git"
36
- },
37
- "dependencies": {
38
- "@modelcontextprotocol/sdk": "^1.29.0",
39
- "zod": "^4.3.6"
40
- },
41
- "devDependencies": {
42
- "@types/node": "^25.5.2",
43
- "typescript": "^6.0.2",
44
- "vitest": "^4.1.3"
45
- }
46
- }
1
+ {
2
+ "name": "@chriscamp/sf-data-cloud-mcp",
3
+ "version": "0.1.1",
4
+ "description": "MCP server for Salesforce Data Cloud operations",
5
+ "type": "module",
6
+ "bin": {
7
+ "sf-data-cloud-mcp": "./dist/index.js"
8
+ },
9
+ "files": [
10
+ "dist",
11
+ "README.md"
12
+ ],
13
+ "scripts": {
14
+ "build": "tsc",
15
+ "dev": "tsc --watch",
16
+ "test": "vitest run",
17
+ "test:watch": "vitest",
18
+ "lint": "tsc --noEmit",
19
+ "prepare": "npm run build",
20
+ "prepublishOnly": "npm run build"
21
+ },
22
+ "engines": {
23
+ "node": ">=18"
24
+ },
25
+ "keywords": [
26
+ "mcp",
27
+ "salesforce",
28
+ "data-cloud",
29
+ "ai"
30
+ ],
31
+ "author": "Chris Camp",
32
+ "license": "MIT",
33
+ "repository": {
34
+ "type": "git",
35
+ "url": "https://github.com/ChrisCampTN/sf-data-cloud-mcp.git"
36
+ },
37
+ "dependencies": {
38
+ "@modelcontextprotocol/sdk": "^1.29.0",
39
+ "zod": "^4.3.6"
40
+ },
41
+ "devDependencies": {
42
+ "@types/node": "^25.5.2",
43
+ "typescript": "^6.0.2",
44
+ "vitest": "^4.1.3"
45
+ }
46
+ }