@togglhq/mcp 1.11.142 → 1.11.144

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/build/cli.js CHANGED
@@ -1,5 +1,5 @@
1
1
  #!/usr/bin/env node
2
- import { a as getProductAnalyticsDistinctId, c as resolvePublicSentryDsn, i as captureToolInvocation, l as shutdownProductAnalytics, n as runMcpCli, o as initProductAnalytics, r as PUBLIC_SENTRY_PRIVACY_OPTIONS, s as resolveProductAnalyticsDistinctId } from "./src-kRvAvx12.js";
2
+ import { a as getProductAnalyticsDistinctId, c as resolvePublicSentryDsn, i as captureToolInvocation, l as shutdownProductAnalytics, n as runMcpCli, o as initProductAnalytics, r as PUBLIC_SENTRY_PRIVACY_OPTIONS, s as resolveProductAnalyticsDistinctId } from "./src-kfccTxGe.js";
3
3
  import * as Sentry from "@sentry/node";
4
4
  //#region src/analytics-tool-metadata.ts
5
5
  /**
@@ -162,7 +162,7 @@ function wrapServerWithProductAnalytics(server) {
162
162
  }
163
163
  //#endregion
164
164
  //#region src/cli.ts
165
- const packageVersion = "1.11.142";
165
+ const packageVersion = "1.11.144";
166
166
  let sentryEnabled = false;
167
167
  let productAnalyticsEnabled = false;
168
168
  runMcpCli({
package/build/index.js CHANGED
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
- import { n as runMcpCli, t as bootstrapServer } from "./src-kRvAvx12.js";
2
+ import { n as runMcpCli, t as bootstrapServer } from "./src-kfccTxGe.js";
3
3
  export { bootstrapServer, runMcpCli };
@@ -32773,10 +32773,6 @@ function _joinExpects$1(values$1, separator) {
32773
32773
  */
32774
32774
  const ISO_DATE_REGEX$1 = /^\d{4}-(?:0[1-9]|1[0-2])-(?:[12]\d|0[1-9]|3[01])$/u;
32775
32775
  /**
32776
- * [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date-time regex.
32777
- */
32778
- const ISO_DATE_TIME_REGEX$1 = /^\d{4}-(?:0[1-9]|1[0-2])-(?:[12]\d|0[1-9]|3[01])[T ](?:0\d|1\d|2[0-3]):[0-5]\d$/u;
32779
- /**
32780
32776
  * [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) timestamp regex. Allows a
32781
32777
  * space as a date/time separator and an optional space before the UTC offset.
32782
32778
  */
@@ -32830,22 +32826,6 @@ function isoDate$1(message$1) {
32830
32826
  };
32831
32827
  }
32832
32828
  /* @__NO_SIDE_EFFECTS__ */
32833
- function isoDateTime$1(message$1) {
32834
- return {
32835
- kind: "validation",
32836
- type: "iso_date_time",
32837
- reference: isoDateTime$1,
32838
- async: false,
32839
- expects: null,
32840
- requirement: ISO_DATE_TIME_REGEX$1,
32841
- message: message$1,
32842
- "~run"(dataset, config$1) {
32843
- if (dataset.typed && !this.requirement.test(dataset.value)) _addIssue$1(this, "date-time", dataset, config$1);
32844
- return dataset;
32845
- }
32846
- };
32847
- }
32848
- /* @__NO_SIDE_EFFECTS__ */
32849
32829
  function isoTimestamp(message$1) {
32850
32830
  return {
32851
32831
  kind: "validation",
@@ -35225,8 +35205,7 @@ const OrganizationUserResponseSchema = /* @__PURE__ */ object({
35225
35205
  work_role_id: /* @__PURE__ */ number(),
35226
35206
  workspace_user_id: /* @__PURE__ */ number()
35227
35207
  })),
35228
- custom_field_values: /* @__PURE__ */ optional(/* @__PURE__ */ array(CustomFieldValueSchema)),
35229
- has_calendar_integration: /* @__PURE__ */ optional(/* @__PURE__ */ pipe(/* @__PURE__ */ boolean(), /* @__PURE__ */ description("HasCalendarIntegration is true when the member has a calendar connected in Focus. The field is present only when the request sets include_calendar_integration to true and the calendar lookup succeeded. The field is absent when the lookup failed. Absent means unknown. It does not mean false. A member who connected a calendar in another product stays false here until they open the Focus calendar integrations page.")))
35208
+ custom_field_values: /* @__PURE__ */ optional(/* @__PURE__ */ array(CustomFieldValueSchema))
35230
35209
  });
35231
35210
  const ProjectBulkArchivePayloadSchema = /* @__PURE__ */ object({ project_ids: /* @__PURE__ */ pipe(/* @__PURE__ */ array(/* @__PURE__ */ number()), /* @__PURE__ */ minLength(1), /* @__PURE__ */ maxLength(100)) });
35232
35211
  const ProjectBulkRestorePayloadSchema = /* @__PURE__ */ object({ project_ids: /* @__PURE__ */ pipe(/* @__PURE__ */ array(/* @__PURE__ */ number()), /* @__PURE__ */ minLength(1), /* @__PURE__ */ maxLength(100)) });
@@ -37322,7 +37301,7 @@ async function getOrganizationTeamsClassic(httpClient, organization_id, { worksp
37322
37301
  })
37323
37302
  }).json();
37324
37303
  }
37325
- async function getOrganizationUsersClassic(httpClient, organization_id, { workspaces, user_account_ids, org_user_ids, groups, toggl_products, active_status, roles, only_admins, filter, sort_dir, page, per_page, tag_ids, include_working_hours, include_rates, pinned_ids, has_group, cf_filter, include_custom_fields, include_calendar_integration } = {}, signal) {
37304
+ async function getOrganizationUsersClassic(httpClient, organization_id, { workspaces, user_account_ids, org_user_ids, groups, toggl_products, active_status, roles, only_admins, filter, sort_dir, page, per_page, tag_ids, include_working_hours, include_rates, pinned_ids, has_group, cf_filter, include_custom_fields } = {}, signal) {
37326
37305
  const response = await httpClient.get(`organizations/${organization_id}/users`, {
37327
37306
  signal,
37328
37307
  searchParams: buildSearchParams$2({
@@ -37344,8 +37323,7 @@ async function getOrganizationUsersClassic(httpClient, organization_id, { worksp
37344
37323
  pinned_ids,
37345
37324
  has_group,
37346
37325
  cf_filter,
37347
- include_custom_fields,
37348
- include_calendar_integration
37326
+ include_custom_fields
37349
37327
  }, true)
37350
37328
  });
37351
37329
  return withResponseMeta(await response.json(), response.headers, response.status);
@@ -38208,7 +38186,7 @@ const PublicMeEntryRequestSchema = /* @__PURE__ */ object$2({
38208
38186
  ]))
38209
38187
  });
38210
38188
  //#endregion
38211
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.121_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_e64cae9c3cafee71d14fb3e3541ac7f7/node_modules/@toggl/queries/dist/org/invitation/requests.mjs
38189
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.124_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_969a045e6e4f645cea4cd5f88b441655/node_modules/@toggl/queries/dist/org/invitation/requests.mjs
38212
38190
  async function getInvitations(httpClient, signal) {
38213
38191
  return (await httpClient.get(`invitations`, { signal })).json();
38214
38192
  }
@@ -38225,7 +38203,7 @@ async function resendInvitation(httpClient, organization_id, organization_user_i
38225
38203
  return (await httpClient.post(`organizations/${organization_id}/invitations/${organization_user_id}/resend`, { signal })).json();
38226
38204
  }
38227
38205
  //#endregion
38228
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.121_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_e64cae9c3cafee71d14fb3e3541ac7f7/node_modules/@toggl/queries/dist/org/utils/requests.mjs
38206
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.124_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_969a045e6e4f645cea4cd5f88b441655/node_modules/@toggl/queries/dist/org/utils/requests.mjs
38229
38207
  function buildSearchParams(params, flattenArrays = false) {
38230
38208
  const searchParams = new URLSearchParams();
38231
38209
  Object.entries(params).forEach(([key, value]) => {
@@ -38237,7 +38215,7 @@ function buildSearchParams(params, flattenArrays = false) {
38237
38215
  return searchParams;
38238
38216
  }
38239
38217
  //#endregion
38240
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.121_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_e64cae9c3cafee71d14fb3e3541ac7f7/node_modules/@toggl/queries/dist/org/organization-user/requests.mjs
38218
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.124_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_969a045e6e4f645cea4cd5f88b441655/node_modules/@toggl/queries/dist/org/organization-user/requests.mjs
38241
38219
  async function getOrganizationUser(httpClient, organization_id, organization_user_id, signal) {
38242
38220
  return (await httpClient.get(`organizations/${organization_id}/users/${organization_user_id}`, { signal })).json();
38243
38221
  }
@@ -38251,7 +38229,7 @@ async function patchOrganizationUserActive(httpClient, organization_id, organiza
38251
38229
  return (await httpClient.patch(`organizations/${organization_id}/users/${organization_user_id}/active_status/${status}`, { signal })).json();
38252
38230
  }
38253
38231
  //#endregion
38254
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.121_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_e64cae9c3cafee71d14fb3e3541ac7f7/node_modules/@toggl/queries/dist/org/workspace/requests.mjs
38232
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.124_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_969a045e6e4f645cea4cd5f88b441655/node_modules/@toggl/queries/dist/org/workspace/requests.mjs
38255
38233
  async function getWorkspaces(httpClient, organization_id, signal) {
38256
38234
  return (await httpClient.get(`organizations/${organization_id}/workspaces`, { signal })).json();
38257
38235
  }
@@ -38260,7 +38238,7 @@ async function getWorkspaceUserMeRoles(httpClient, organization_id, workspace_id
38260
38238
  }
38261
38239
  const WorkingHoursCreateInputSchema = /* @__PURE__ */ object$2({
38262
38240
  working_hours: /* @__PURE__ */ pipe$2(/* @__PURE__ */ number$2(), /* @__PURE__ */ maxValue$1(168)),
38263
- starting_hours: /* @__PURE__ */ optional$1(/* @__PURE__ */ pipe$2(/* @__PURE__ */ number$2(), /* @__PURE__ */ minValue$1(0), /* @__PURE__ */ maxValue$1(24))),
38241
+ starting_hours: /* @__PURE__ */ optional$1(/* @__PURE__ */ pipe$2(/* @__PURE__ */ number$2(), /* @__PURE__ */ maxValue$1(24))),
38264
38242
  weekday: /* @__PURE__ */ optional$1(/* @__PURE__ */ pipe$2(/* @__PURE__ */ number$2(), /* @__PURE__ */ minValue$1(0), /* @__PURE__ */ maxValue$1(6)))
38265
38243
  });
38266
38244
  const WorkingHoursUpdateInputSchema = /* @__PURE__ */ object$2({
@@ -38271,7 +38249,7 @@ const WorkingHoursUpdateInputSchema = /* @__PURE__ */ object$2({
38271
38249
  });
38272
38250
  const StatusOKSchema = /* @__PURE__ */ object$2({ status: /* @__PURE__ */ string$1() });
38273
38251
  //#endregion
38274
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.121_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_e64cae9c3cafee71d14fb3e3541ac7f7/node_modules/@toggl/queries/dist/org/holiday-calendar/requests.mjs
38252
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.124_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_969a045e6e4f645cea4cd5f88b441655/node_modules/@toggl/queries/dist/org/holiday-calendar/requests.mjs
38275
38253
  async function holidayListDates(httpClient, organization_id, { year, country }, signal) {
38276
38254
  return (await httpClient.get(`holidays/organizations/${organization_id}/calendar/dates`, {
38277
38255
  signal,
@@ -38282,12 +38260,12 @@ async function holidayListDates(httpClient, organization_id, { year, country },
38282
38260
  })).json();
38283
38261
  }
38284
38262
  //#endregion
38285
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.121_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_e64cae9c3cafee71d14fb3e3541ac7f7/node_modules/@toggl/queries/dist/shared-data/status/requests.mjs
38263
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.124_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_969a045e6e4f645cea4cd5f88b441655/node_modules/@toggl/queries/dist/shared-data/status/requests.mjs
38286
38264
  async function getStatus(httpClient, signal) {
38287
38265
  return (await httpClient.get(`shared_data/api/status`, { signal })).json();
38288
38266
  }
38289
38267
  //#endregion
38290
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.121_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_e64cae9c3cafee71d14fb3e3541ac7f7/node_modules/@toggl/queries/dist/org/timeoff/requests.mjs
38268
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.124_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_969a045e6e4f645cea4cd5f88b441655/node_modules/@toggl/queries/dist/org/timeoff/requests.mjs
38291
38269
  async function timeoffListMyEntries(httpClient, organization_id, { from, to }, signal) {
38292
38270
  return (await httpClient.get(`timeoff/organizations/${organization_id}/me`, {
38293
38271
  signal,
@@ -38315,7 +38293,7 @@ async function timeoffDeleteMyEntry(httpClient, organization_id, id, signal) {
38315
38293
  return response.json();
38316
38294
  }
38317
38295
  //#endregion
38318
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.121_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_e64cae9c3cafee71d14fb3e3541ac7f7/node_modules/@toggl/queries/dist/shared-data/working-hours/requests.mjs
38296
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.124_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_969a045e6e4f645cea4cd5f88b441655/node_modules/@toggl/queries/dist/shared-data/working-hours/requests.mjs
38319
38297
  async function getMyWorkingHours(httpClient, organization_id, signal) {
38320
38298
  return (await httpClient.get(`shared_data/api/workinghours/${organization_id}/me`, { signal })).json();
38321
38299
  }
@@ -42561,9 +42539,6 @@ async function dismissATemplateEstimateSuggestion(httpClient, organization_id, w
42561
42539
  }
42562
42540
  //#endregion
42563
42541
  //#region ../focus-queries/dist/reports/requests.ts
42564
- async function getForecastAvailability(httpClient, workspace_id, signal) {
42565
- return await httpClient.get(`reports/workspaces/${workspace_id}/forecast-availability`, { signal }).json();
42566
- }
42567
42542
  async function getProfitabilityReport(httpClient, workspace_id, data, response_format, include_dicts, xTogglReportExport, signal) {
42568
42543
  return await httpClient.post(`reports/workspaces/${workspace_id}/profitability`, {
42569
42544
  signal,
@@ -43009,21 +42984,6 @@ async function upsertTimeEntryConstraints(httpClient, workspace_id, data, signal
43009
42984
  }).json();
43010
42985
  }
43011
42986
  //#endregion
43012
- //#region ../focus-queries/dist/time-entry-groups/requests.ts
43013
- async function getTimeEntryGroupsUsersClassic(httpClient, organization_id, workspace_id, { start_date, end_date, user_id, page, per_page, order_by }, signal) {
43014
- return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/time-entries/groups/users`, {
43015
- signal,
43016
- searchParams: buildSearchParams$2({
43017
- start_date,
43018
- end_date,
43019
- user_id,
43020
- page,
43021
- per_page,
43022
- order_by
43023
- })
43024
- }).json();
43025
- }
43026
- //#endregion
43027
42987
  //#region ../focus-queries/dist/time-off/requests.ts
43028
42988
  async function getTimeoffsByUserIds(httpClient, organization_id, { user_id, start_date, end_date }, signal) {
43029
42989
  return await httpClient.get(`organizations/${organization_id}/timeoff`, {
@@ -48074,28 +48034,6 @@ const generatedFocusOperations = [
48074
48034
  ]));
48075
48035
  }
48076
48036
  },
48077
- {
48078
- id: "focus.reports.get-forecast-availability",
48079
- family: "focus",
48080
- resource: "reports",
48081
- action: "get-forecast-availability",
48082
- title: "Get Forecast Availability Reports",
48083
- description: "Get Forecast Availability Reports.",
48084
- safety: "read",
48085
- destructive: false,
48086
- cli: {
48087
- group: ["reports"],
48088
- command: "get-forecast-availability",
48089
- interactive: "hidden"
48090
- },
48091
- mcp: { entityTool: "reports" },
48092
- inputSchema: /* @__PURE__ */ looseObject({}),
48093
- execute: (_input, { client }) => client.runGeneratedRequest("getForecastAvailability", () => callGeneratedRequest(getForecastAvailability, [
48094
- client.httpClient,
48095
- client.workspaceIdNumber,
48096
- void 0
48097
- ]))
48098
- },
48099
48037
  {
48100
48038
  id: "focus.reports.get-profitability",
48101
48039
  family: "focus",
@@ -51756,40 +51694,6 @@ const generatedFocusOperations = [
51756
51694
  ]));
51757
51695
  }
51758
51696
  },
51759
- {
51760
- id: "focus.time-entries.groups-get-users",
51761
- family: "focus",
51762
- resource: "time-entries",
51763
- action: "groups-get-users",
51764
- title: "Groups Get Users Time Entries",
51765
- description: "Groups Get Users Time Entries.",
51766
- safety: "read",
51767
- destructive: false,
51768
- cli: {
51769
- group: ["time-entries", "groups"],
51770
- command: "get-users",
51771
- interactive: "hidden"
51772
- },
51773
- mcp: { entityTool: "time-entries" },
51774
- inputSchema: /* @__PURE__ */ looseObject({
51775
- end_date: /* @__PURE__ */ pipe$2(/* @__PURE__ */ string$1(), /* @__PURE__ */ isoDate$1()),
51776
- order_by: /* @__PURE__ */ unknown$1(),
51777
- page: /* @__PURE__ */ number$2(),
51778
- per_page: /* @__PURE__ */ unknown$1(),
51779
- start_date: /* @__PURE__ */ pipe$2(/* @__PURE__ */ string$1(), /* @__PURE__ */ isoDate$1()),
51780
- user_id: /* @__PURE__ */ number$2()
51781
- }),
51782
- execute: (input, { client }) => {
51783
- const data = input;
51784
- return client.runGeneratedRequest("getTimeEntryGroupsUsersClassic", () => callGeneratedRequest(getTimeEntryGroupsUsersClassic, [
51785
- client.httpClient,
51786
- client.organizationId,
51787
- client.workspaceIdNumber,
51788
- data,
51789
- void 0
51790
- ]));
51791
- }
51792
- },
51793
51697
  {
51794
51698
  id: "focus.time-entries.list",
51795
51699
  family: "focus",
@@ -54837,7 +54741,7 @@ function registerWorkspaceTools(server) {
54837
54741
  //#region src/package-version.ts
54838
54742
  function mcpPackageVersion() {
54839
54743
  try {
54840
- return "1.11.142";
54744
+ return "1.11.144";
54841
54745
  } catch {
54842
54746
  return "unknown";
54843
54747
  }
@@ -55012,7 +54916,7 @@ import_main.default.config({
55012
54916
  quiet: true,
55013
54917
  ignore: ["MISSING_ENV_FILE"]
55014
54918
  });
55015
- const packageVersion = "1.11.142";
54919
+ const packageVersion = "1.11.144";
55016
54920
  function resolvePublicUrls() {
55017
54921
  return {
55018
54922
  focusApiUrl: process.env.TOGGL_FOCUS_API_URL ?? "https://focus.toggl.com",
@@ -55077,4 +54981,4 @@ function bootstrapServer(options = {}) {
55077
54981
  //#endregion
55078
54982
  export { getProductAnalyticsDistinctId as a, resolvePublicSentryDsn as c, captureToolInvocation as i, shutdownProductAnalytics as l, runMcpCli as n, initProductAnalytics as o, PUBLIC_SENTRY_PRIVACY_OPTIONS as r, resolveProductAnalyticsDistinctId as s, bootstrapServer as t };
55079
54983
 
55080
- //# sourceMappingURL=src-kRvAvx12.js.map
54984
+ //# sourceMappingURL=src-kfccTxGe.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@togglhq/mcp",
3
- "version": "1.11.142",
3
+ "version": "1.11.144",
4
4
  "description": "Toggl 2.0 MCP server for Claude Code, Claude Desktop, and other MCP clients.",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",