@togglhq/mcp 1.13.63 → 1.13.65

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 PUBLIC_SENTRY_PRIVACY_OPTIONS, c as initProductAnalytics, d as shutdownProductAnalytics, i as runMcpCli, l as resolveProductAnalyticsDistinctId, o as captureToolInvocation, s as getProductAnalyticsDistinctId, u as resolvePublicSentryDsn } from "./src-CGcaHPf0.js";
2
+ import { a as PUBLIC_SENTRY_PRIVACY_OPTIONS, c as initProductAnalytics, d as shutdownProductAnalytics, i as runMcpCli, l as resolveProductAnalyticsDistinctId, o as captureToolInvocation, s as getProductAnalyticsDistinctId, u as resolvePublicSentryDsn } from "./src-DKS-yDgp.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.13.63";
165
+ const packageVersion = "1.13.65";
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 { i as runMcpCli, n as MCP_MAX_TOOL_INPUT_ELEMENTS, r as bootstrapServer, t as MCP_CACHE_TTL_MS } from "./src-CGcaHPf0.js";
2
+ import { i as runMcpCli, n as MCP_MAX_TOOL_INPUT_ELEMENTS, r as bootstrapServer, t as MCP_CACHE_TTL_MS } from "./src-DKS-yDgp.js";
3
3
  export { MCP_CACHE_TTL_MS, MCP_MAX_TOOL_INPUT_ELEMENTS, bootstrapServer, runMcpCli };
@@ -38480,7 +38480,7 @@ const PublicMeEntryRequestSchema = /* @__PURE__ */ object$2({
38480
38480
  ]))
38481
38481
  });
38482
38482
  //#endregion
38483
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.249_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_36ab5579077a8b9d5b52b556cd174b69/node_modules/@toggl/queries/dist/org/invitation/requests.mjs
38483
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.250_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_efe8c0647ca0ca3b8ba308cdb1f241cf/node_modules/@toggl/queries/dist/org/invitation/requests.mjs
38484
38484
  async function getInvitations(httpClient, signal) {
38485
38485
  return (await httpClient.get(`invitations`, { signal })).json();
38486
38486
  }
@@ -38497,7 +38497,7 @@ async function resendInvitation(httpClient, organization_id, organization_user_i
38497
38497
  return (await httpClient.post(`organizations/${organization_id}/invitations/${organization_user_id}/resend`, { signal })).json();
38498
38498
  }
38499
38499
  //#endregion
38500
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.249_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_36ab5579077a8b9d5b52b556cd174b69/node_modules/@toggl/queries/dist/org/utils/requests.mjs
38500
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.250_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_efe8c0647ca0ca3b8ba308cdb1f241cf/node_modules/@toggl/queries/dist/org/utils/requests.mjs
38501
38501
  function buildSearchParams(params, flattenArrays = false) {
38502
38502
  const searchParams = new URLSearchParams();
38503
38503
  Object.entries(params).forEach(([key, value]) => {
@@ -38509,7 +38509,7 @@ function buildSearchParams(params, flattenArrays = false) {
38509
38509
  return searchParams;
38510
38510
  }
38511
38511
  //#endregion
38512
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.249_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_36ab5579077a8b9d5b52b556cd174b69/node_modules/@toggl/queries/dist/org/organization-user/requests.mjs
38512
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.250_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_efe8c0647ca0ca3b8ba308cdb1f241cf/node_modules/@toggl/queries/dist/org/organization-user/requests.mjs
38513
38513
  async function getOrganizationUser(httpClient, organization_id, organization_user_id, signal) {
38514
38514
  return (await httpClient.get(`organizations/${organization_id}/users/${organization_user_id}`, { signal })).json();
38515
38515
  }
@@ -38523,7 +38523,7 @@ async function patchOrganizationUserActive(httpClient, organization_id, organiza
38523
38523
  return (await httpClient.patch(`organizations/${organization_id}/users/${organization_user_id}/active_status/${status}`, { signal })).json();
38524
38524
  }
38525
38525
  //#endregion
38526
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.249_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_36ab5579077a8b9d5b52b556cd174b69/node_modules/@toggl/queries/dist/org/workspace/requests.mjs
38526
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.250_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_efe8c0647ca0ca3b8ba308cdb1f241cf/node_modules/@toggl/queries/dist/org/workspace/requests.mjs
38527
38527
  async function getWorkspaces(httpClient, organization_id, signal) {
38528
38528
  return (await httpClient.get(`organizations/${organization_id}/workspaces`, { signal })).json();
38529
38529
  }
@@ -38543,7 +38543,7 @@ const WorkingHoursUpdateInputSchema = /* @__PURE__ */ object$2({
38543
38543
  });
38544
38544
  const StatusOKSchema = /* @__PURE__ */ object$2({ status: /* @__PURE__ */ string$1() });
38545
38545
  //#endregion
38546
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.249_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_36ab5579077a8b9d5b52b556cd174b69/node_modules/@toggl/queries/dist/org/holiday-calendar/requests.mjs
38546
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.250_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_efe8c0647ca0ca3b8ba308cdb1f241cf/node_modules/@toggl/queries/dist/org/holiday-calendar/requests.mjs
38547
38547
  async function holidayListDates(httpClient, organization_id, { year, country }, signal) {
38548
38548
  return (await httpClient.get(`holidays/organizations/${organization_id}/calendar/dates`, {
38549
38549
  signal,
@@ -38554,12 +38554,12 @@ async function holidayListDates(httpClient, organization_id, { year, country },
38554
38554
  })).json();
38555
38555
  }
38556
38556
  //#endregion
38557
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.249_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_36ab5579077a8b9d5b52b556cd174b69/node_modules/@toggl/queries/dist/shared-data/status/requests.mjs
38557
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.250_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_efe8c0647ca0ca3b8ba308cdb1f241cf/node_modules/@toggl/queries/dist/shared-data/status/requests.mjs
38558
38558
  async function getStatus(httpClient, signal) {
38559
38559
  return (await httpClient.get(`shared_data/api/status`, { signal })).json();
38560
38560
  }
38561
38561
  //#endregion
38562
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.249_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_36ab5579077a8b9d5b52b556cd174b69/node_modules/@toggl/queries/dist/org/timeoff/requests.mjs
38562
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.250_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_efe8c0647ca0ca3b8ba308cdb1f241cf/node_modules/@toggl/queries/dist/org/timeoff/requests.mjs
38563
38563
  async function timeoffListMyEntries(httpClient, organization_id, { from, to }, signal) {
38564
38564
  return (await httpClient.get(`timeoff/organizations/${organization_id}/me`, {
38565
38565
  signal,
@@ -38587,7 +38587,7 @@ async function timeoffDeleteMyEntry(httpClient, organization_id, id, signal) {
38587
38587
  return response.json();
38588
38588
  }
38589
38589
  //#endregion
38590
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.249_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_36ab5579077a8b9d5b52b556cd174b69/node_modules/@toggl/queries/dist/shared-data/working-hours/requests.mjs
38590
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.250_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_efe8c0647ca0ca3b8ba308cdb1f241cf/node_modules/@toggl/queries/dist/shared-data/working-hours/requests.mjs
38591
38591
  async function getMyWorkingHours(httpClient, organization_id, signal) {
38592
38592
  return (await httpClient.get(`shared_data/api/workinghours/${organization_id}/me`, { signal })).json();
38593
38593
  }
@@ -42864,6 +42864,29 @@ async function patchUserCustomFieldValues(httpClient, organization_id, workspace
42864
42864
  }).json();
42865
42865
  }
42866
42866
  //#endregion
42867
+ //#region ../focus-queries/dist/customreports/requests.ts
42868
+ async function getCustomReports(httpClient, workspace_id, signal) {
42869
+ return await httpClient.get(`workspaces/${workspace_id}/custom-reports`, { signal }).json();
42870
+ }
42871
+ async function createACustomReport(httpClient, workspace_id, data, signal) {
42872
+ return await httpClient.post(`workspaces/${workspace_id}/custom-reports`, {
42873
+ signal,
42874
+ json: data
42875
+ }).json();
42876
+ }
42877
+ async function getACustomReport(httpClient, workspace_id, id, signal) {
42878
+ return await httpClient.get(`workspaces/${workspace_id}/custom-reports/${id}`, { signal }).json();
42879
+ }
42880
+ async function saveACustomReport(httpClient, workspace_id, id, data, signal) {
42881
+ return await httpClient.put(`workspaces/${workspace_id}/custom-reports/${id}`, {
42882
+ signal,
42883
+ json: data
42884
+ }).json();
42885
+ }
42886
+ async function deleteACustomReport(httpClient, workspace_id, id, signal) {
42887
+ return await httpClient.delete(`workspaces/${workspace_id}/custom-reports/${id}`, { signal }).json();
42888
+ }
42889
+ //#endregion
42867
42890
  //#region ../focus-queries/dist/designations/requests.ts
42868
42891
  async function getWorkspaceDesignationsClassic(httpClient, organization_id, workspace_id, { designation_id, name, include_members, has_members, page, per_page, order_by } = {}, signal) {
42869
42892
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/designations`, {
@@ -45371,6 +45394,228 @@ const generatedFocusOperations = [
45371
45394
  ]));
45372
45395
  }
45373
45396
  },
45397
+ {
45398
+ id: "focus.customreports.create-acustom-report",
45399
+ family: "focus",
45400
+ resource: "customreports",
45401
+ action: "create-acustom-report",
45402
+ title: "Create Acustom Report Customreports",
45403
+ description: "Create Acustom Report Customreports.",
45404
+ safety: "create",
45405
+ destructive: false,
45406
+ cli: {
45407
+ group: ["customreports"],
45408
+ command: "create-acustom-report",
45409
+ interactive: "hidden"
45410
+ },
45411
+ mcp: { entityTool: "customreports" },
45412
+ inputSchema: /* @__PURE__ */ looseObject({ payload: /* @__PURE__ */ looseObject({
45413
+ name: /* @__PURE__ */ string$1(),
45414
+ params: /* @__PURE__ */ looseObject({
45415
+ charts: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
45416
+ id: /* @__PURE__ */ string$1(),
45417
+ layout: /* @__PURE__ */ looseObject({ width: /* @__PURE__ */ number$2() }),
45418
+ name: /* @__PURE__ */ string$1(),
45419
+ query: /* @__PURE__ */ looseObject({
45420
+ aggregations: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
45421
+ function: /* @__PURE__ */ picklist$1(["sum"]),
45422
+ property: /* @__PURE__ */ picklist$1([
45423
+ "duration",
45424
+ "billable_duration",
45425
+ "non_billable_duration",
45426
+ "amount",
45427
+ "labor_cost",
45428
+ "profit",
45429
+ "billable_percentage"
45430
+ ])
45431
+ })),
45432
+ groupings: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({ property: /* @__PURE__ */ picklist$1([
45433
+ "project_id",
45434
+ "client_id",
45435
+ "user_account_id",
45436
+ "task_id",
45437
+ "tag_id",
45438
+ "time_entry_billable",
45439
+ "start_date",
45440
+ "year_week",
45441
+ "year_month"
45442
+ ]) }))
45443
+ }),
45444
+ type: /* @__PURE__ */ picklist$1([
45445
+ "bar",
45446
+ "grouped_bar",
45447
+ "stacked_bar",
45448
+ "line",
45449
+ "multi_line",
45450
+ "donut",
45451
+ "table",
45452
+ "pivot_table"
45453
+ ])
45454
+ })),
45455
+ period: /* @__PURE__ */ unknown$1(),
45456
+ flexqFilters: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ unknown$1()))
45457
+ })
45458
+ }) }),
45459
+ execute: (input, { client }) => {
45460
+ const data = input;
45461
+ return client.runGeneratedRequest("createACustomReport", () => callGeneratedRequest(createACustomReport, [
45462
+ client.httpClient,
45463
+ client.workspaceIdNumber,
45464
+ data.payload ?? data.data ?? data,
45465
+ void 0
45466
+ ]));
45467
+ }
45468
+ },
45469
+ {
45470
+ id: "focus.customreports.delete-acustom-report",
45471
+ family: "focus",
45472
+ resource: "customreports",
45473
+ action: "delete-acustom-report",
45474
+ title: "Delete Acustom Report Customreports",
45475
+ description: "Delete Acustom Report Customreports.",
45476
+ safety: "delete",
45477
+ destructive: true,
45478
+ cli: {
45479
+ group: ["customreports"],
45480
+ command: "delete-acustom-report",
45481
+ interactive: "default"
45482
+ },
45483
+ mcp: { entityTool: "customreports" },
45484
+ inputSchema: /* @__PURE__ */ looseObject({ id: /* @__PURE__ */ number$2() }),
45485
+ execute: (input, { client }) => {
45486
+ const data = input;
45487
+ return client.runGeneratedRequest("deleteACustomReport", () => callGeneratedRequest(deleteACustomReport, [
45488
+ client.httpClient,
45489
+ client.workspaceIdNumber,
45490
+ data.id,
45491
+ void 0
45492
+ ]));
45493
+ }
45494
+ },
45495
+ {
45496
+ id: "focus.customreports.get-acustom-report",
45497
+ family: "focus",
45498
+ resource: "customreports",
45499
+ action: "get-acustom-report",
45500
+ title: "Get Acustom Report Customreports",
45501
+ description: "Get Acustom Report Customreports.",
45502
+ safety: "read",
45503
+ destructive: false,
45504
+ cli: {
45505
+ group: ["customreports"],
45506
+ command: "get-acustom-report",
45507
+ interactive: "available"
45508
+ },
45509
+ mcp: { entityTool: "customreports" },
45510
+ inputSchema: /* @__PURE__ */ looseObject({ id: /* @__PURE__ */ number$2() }),
45511
+ execute: (input, { client }) => {
45512
+ const data = input;
45513
+ return client.runGeneratedRequest("getACustomReport", () => callGeneratedRequest(getACustomReport, [
45514
+ client.httpClient,
45515
+ client.workspaceIdNumber,
45516
+ data.id,
45517
+ void 0
45518
+ ]));
45519
+ }
45520
+ },
45521
+ {
45522
+ id: "focus.customreports.get-custom-reports",
45523
+ family: "focus",
45524
+ resource: "customreports",
45525
+ action: "get-custom-reports",
45526
+ title: "Get Custom Reports Customreports",
45527
+ description: "Get Custom Reports Customreports.",
45528
+ safety: "read",
45529
+ destructive: false,
45530
+ cli: {
45531
+ group: ["customreports"],
45532
+ command: "get-custom-reports",
45533
+ interactive: "hidden"
45534
+ },
45535
+ mcp: { entityTool: "customreports" },
45536
+ inputSchema: /* @__PURE__ */ looseObject({}),
45537
+ execute: (_input, { client }) => client.runGeneratedRequest("getCustomReports", () => callGeneratedRequest(getCustomReports, [
45538
+ client.httpClient,
45539
+ client.workspaceIdNumber,
45540
+ void 0
45541
+ ]))
45542
+ },
45543
+ {
45544
+ id: "focus.customreports.save-acustom-report",
45545
+ family: "focus",
45546
+ resource: "customreports",
45547
+ action: "save-acustom-report",
45548
+ title: "Save Acustom Report Customreports",
45549
+ description: "Save Acustom Report Customreports.",
45550
+ safety: "update",
45551
+ destructive: false,
45552
+ cli: {
45553
+ group: ["customreports"],
45554
+ command: "save-acustom-report",
45555
+ interactive: "hidden"
45556
+ },
45557
+ mcp: { entityTool: "customreports" },
45558
+ inputSchema: /* @__PURE__ */ looseObject({
45559
+ id: /* @__PURE__ */ number$2(),
45560
+ payload: /* @__PURE__ */ looseObject({
45561
+ name: /* @__PURE__ */ string$1(),
45562
+ params: /* @__PURE__ */ looseObject({
45563
+ charts: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
45564
+ id: /* @__PURE__ */ string$1(),
45565
+ layout: /* @__PURE__ */ looseObject({ width: /* @__PURE__ */ number$2() }),
45566
+ name: /* @__PURE__ */ string$1(),
45567
+ query: /* @__PURE__ */ looseObject({
45568
+ aggregations: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
45569
+ function: /* @__PURE__ */ picklist$1(["sum"]),
45570
+ property: /* @__PURE__ */ picklist$1([
45571
+ "duration",
45572
+ "billable_duration",
45573
+ "non_billable_duration",
45574
+ "amount",
45575
+ "labor_cost",
45576
+ "profit",
45577
+ "billable_percentage"
45578
+ ])
45579
+ })),
45580
+ groupings: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({ property: /* @__PURE__ */ picklist$1([
45581
+ "project_id",
45582
+ "client_id",
45583
+ "user_account_id",
45584
+ "task_id",
45585
+ "tag_id",
45586
+ "time_entry_billable",
45587
+ "start_date",
45588
+ "year_week",
45589
+ "year_month"
45590
+ ]) }))
45591
+ }),
45592
+ type: /* @__PURE__ */ picklist$1([
45593
+ "bar",
45594
+ "grouped_bar",
45595
+ "stacked_bar",
45596
+ "line",
45597
+ "multi_line",
45598
+ "donut",
45599
+ "table",
45600
+ "pivot_table"
45601
+ ])
45602
+ })),
45603
+ period: /* @__PURE__ */ unknown$1(),
45604
+ flexqFilters: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ unknown$1()))
45605
+ })
45606
+ })
45607
+ }),
45608
+ execute: (input, { client }) => {
45609
+ const data = input;
45610
+ return client.runGeneratedRequest("saveACustomReport", () => callGeneratedRequest(saveACustomReport, [
45611
+ client.httpClient,
45612
+ client.workspaceIdNumber,
45613
+ data.id,
45614
+ data.payload ?? data.data ?? data,
45615
+ void 0
45616
+ ]));
45617
+ }
45618
+ },
45374
45619
  {
45375
45620
  id: "focus.designations.bulk-create-workspace",
45376
45621
  family: "focus",
@@ -57372,7 +57617,7 @@ function registerWorkspaceTools(server) {
57372
57617
  //#region src/package-version.ts
57373
57618
  function mcpPackageVersion() {
57374
57619
  try {
57375
- return "1.13.63";
57620
+ return "1.13.65";
57376
57621
  } catch {
57377
57622
  return "unknown";
57378
57623
  }
@@ -57553,7 +57798,7 @@ import_main.default.config({
57553
57798
  quiet: true,
57554
57799
  ignore: ["MISSING_ENV_FILE"]
57555
57800
  });
57556
- const packageVersion = "1.13.63";
57801
+ const packageVersion = "1.13.65";
57557
57802
  const MCP_CACHE_TTL_MS = 300 * 1e3;
57558
57803
  const MCP_MAX_TOOL_INPUT_ELEMENTS = 1e4;
57559
57804
  function resolvePublicUrls() {
@@ -57673,4 +57918,4 @@ function bootstrapServer(options = {}) {
57673
57918
  //#endregion
57674
57919
  export { PUBLIC_SENTRY_PRIVACY_OPTIONS as a, initProductAnalytics as c, shutdownProductAnalytics as d, runMcpCli as i, resolveProductAnalyticsDistinctId as l, MCP_MAX_TOOL_INPUT_ELEMENTS as n, captureToolInvocation as o, bootstrapServer as r, getProductAnalyticsDistinctId as s, MCP_CACHE_TTL_MS as t, resolvePublicSentryDsn as u };
57675
57920
 
57676
- //# sourceMappingURL=src-CGcaHPf0.js.map
57921
+ //# sourceMappingURL=src-DKS-yDgp.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@togglhq/mcp",
3
- "version": "1.13.63",
3
+ "version": "1.13.65",
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",