@togglhq/mcp 1.13.44 → 1.13.45

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-CKOF6X7K.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-DwqsxUkU.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.44";
165
+ const packageVersion = "1.13.45";
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-CKOF6X7K.js";
2
+ import { i as runMcpCli, n as MCP_MAX_TOOL_INPUT_ELEMENTS, r as bootstrapServer, t as MCP_CACHE_TTL_MS } from "./src-DwqsxUkU.js";
3
3
  export { MCP_CACHE_TTL_MS, MCP_MAX_TOOL_INPUT_ELEMENTS, bootstrapServer, runMcpCli };
@@ -34714,16 +34714,16 @@ const ProjectEstimateSourceSchema = /* @__PURE__ */ picklist([
34714
34714
  const EffectiveProjectRatesSummarySchema = /* @__PURE__ */ object({
34715
34715
  billable: /* @__PURE__ */ boolean(),
34716
34716
  currency: /* @__PURE__ */ string(),
34717
- end_at: /* @__PURE__ */ string(),
34718
34717
  has_more_rates: /* @__PURE__ */ boolean(),
34719
34718
  hourly_rate: /* @__PURE__ */ number(),
34720
34719
  project_color: /* @__PURE__ */ string(),
34721
34720
  project_created_at: /* @__PURE__ */ string(),
34722
34721
  project_id: /* @__PURE__ */ number(),
34723
34722
  project_name: /* @__PURE__ */ string(),
34724
- project_rate_id: /* @__PURE__ */ number(),
34725
34723
  start_at: /* @__PURE__ */ string(),
34726
- workspace_rate_id: /* @__PURE__ */ number()
34724
+ end_at: /* @__PURE__ */ optional(/* @__PURE__ */ string()),
34725
+ project_rate_id: /* @__PURE__ */ optional(/* @__PURE__ */ number()),
34726
+ workspace_rate_id: /* @__PURE__ */ optional(/* @__PURE__ */ number())
34727
34727
  });
34728
34728
  const ProjectLiteSchema = /* @__PURE__ */ object({
34729
34729
  draft: /* @__PURE__ */ boolean(),
@@ -35247,15 +35247,15 @@ const PaginatedTimeEntryWithTasksSchema = /* @__PURE__ */ object({
35247
35247
  billable_source: /* @__PURE__ */ optional(/* @__PURE__ */ pipe(BillableSourceSchema, /* @__PURE__ */ description("Whether `billable` was set on the entry (`manual`) or resolved from its task, else its project (`task_default`)."))),
35248
35248
  calendar_event: /* @__PURE__ */ optional(/* @__PURE__ */ nullable(/* @__PURE__ */ object({
35249
35249
  all_day: /* @__PURE__ */ boolean(),
35250
- background_color: /* @__PURE__ */ nullable(/* @__PURE__ */ string()),
35251
- end_time: /* @__PURE__ */ string(),
35252
- foreground_color: /* @__PURE__ */ nullable(/* @__PURE__ */ string()),
35253
35250
  html_link: /* @__PURE__ */ string(),
35254
35251
  id: /* @__PURE__ */ number(),
35255
- meeting_link: /* @__PURE__ */ nullable(/* @__PURE__ */ string()),
35256
35252
  provider: /* @__PURE__ */ string(),
35257
- start_time: /* @__PURE__ */ string(),
35258
- title: /* @__PURE__ */ string()
35253
+ background_color: /* @__PURE__ */ optional(/* @__PURE__ */ nullable(/* @__PURE__ */ string())),
35254
+ end_time: /* @__PURE__ */ optional(/* @__PURE__ */ string()),
35255
+ foreground_color: /* @__PURE__ */ optional(/* @__PURE__ */ nullable(/* @__PURE__ */ string())),
35256
+ meeting_link: /* @__PURE__ */ optional(/* @__PURE__ */ nullable(/* @__PURE__ */ string())),
35257
+ start_time: /* @__PURE__ */ optional(/* @__PURE__ */ string()),
35258
+ title: /* @__PURE__ */ optional(/* @__PURE__ */ string())
35259
35259
  }))),
35260
35260
  calendar_event_id: /* @__PURE__ */ optional(/* @__PURE__ */ number()),
35261
35261
  calendar_id: /* @__PURE__ */ optional(/* @__PURE__ */ pipe(/* @__PURE__ */ number(), /* @__PURE__ */ description("CalendarID is the calendar service's calendar PK. It stays set after a calendar deselect clears calendar_event_id."))),
@@ -35306,34 +35306,30 @@ const PaginatedTagsSchema = /* @__PURE__ */ object({
35306
35306
  });
35307
35307
  const OrganizationUserResponseSchema = /* @__PURE__ */ object({
35308
35308
  "2fa_enabled": /* @__PURE__ */ boolean(),
35309
- account_locked_at: /* @__PURE__ */ string(),
35310
35309
  accounts_role_id: /* @__PURE__ */ number(),
35311
35310
  active: /* @__PURE__ */ boolean(),
35312
35311
  can_edit_personal_details: /* @__PURE__ */ boolean(),
35313
35312
  created_at: /* @__PURE__ */ string(),
35314
- deleted_at: /* @__PURE__ */ string(),
35315
35313
  email: /* @__PURE__ */ string(),
35316
35314
  groups: /* @__PURE__ */ array(/* @__PURE__ */ object({
35317
- emoji: /* @__PURE__ */ string(),
35318
35315
  id: /* @__PURE__ */ number(),
35319
35316
  name: /* @__PURE__ */ string(),
35320
- workspace_ids: /* @__PURE__ */ array(/* @__PURE__ */ number())
35317
+ workspace_ids: /* @__PURE__ */ array(/* @__PURE__ */ number()),
35318
+ emoji: /* @__PURE__ */ optional(/* @__PURE__ */ string())
35321
35319
  })),
35322
35320
  id: /* @__PURE__ */ number(),
35323
- invite_sent: /* @__PURE__ */ boolean(),
35324
35321
  joined: /* @__PURE__ */ boolean(),
35325
35322
  name: /* @__PURE__ */ string(),
35326
35323
  organization_id: /* @__PURE__ */ number(),
35327
35324
  owner: /* @__PURE__ */ boolean(),
35328
- permissions: /* @__PURE__ */ record(/* @__PURE__ */ string(), /* @__PURE__ */ unknown()),
35329
35325
  rate: /* @__PURE__ */ object({
35330
35326
  currency: /* @__PURE__ */ string(),
35331
- end_at: /* @__PURE__ */ string(),
35332
35327
  hourly_rate: /* @__PURE__ */ number(),
35333
35328
  start_at: /* @__PURE__ */ string(),
35334
35329
  workspace_id: /* @__PURE__ */ number(),
35335
- workspace_rate_id: /* @__PURE__ */ number(),
35336
- workspace_user_rate_id: /* @__PURE__ */ number()
35330
+ end_at: /* @__PURE__ */ optional(/* @__PURE__ */ string()),
35331
+ workspace_rate_id: /* @__PURE__ */ optional(/* @__PURE__ */ number()),
35332
+ workspace_user_rate_id: /* @__PURE__ */ optional(/* @__PURE__ */ number())
35337
35333
  }),
35338
35334
  tags: /* @__PURE__ */ array(/* @__PURE__ */ object({
35339
35335
  color: /* @__PURE__ */ string(),
@@ -35343,13 +35339,12 @@ const OrganizationUserResponseSchema = /* @__PURE__ */ object({
35343
35339
  updated_at: /* @__PURE__ */ string(),
35344
35340
  user_account_id: /* @__PURE__ */ number(),
35345
35341
  user_id: /* @__PURE__ */ string(),
35346
- working_hours: /* @__PURE__ */ number(),
35347
35342
  workspaces: /* @__PURE__ */ array(/* @__PURE__ */ object({
35348
35343
  focus_role_id: /* @__PURE__ */ number(),
35349
35344
  groups: /* @__PURE__ */ array(/* @__PURE__ */ object({
35350
- emoji: /* @__PURE__ */ string(),
35351
35345
  id: /* @__PURE__ */ number(),
35352
- name: /* @__PURE__ */ string()
35346
+ name: /* @__PURE__ */ string(),
35347
+ emoji: /* @__PURE__ */ optional(/* @__PURE__ */ string())
35353
35348
  })),
35354
35349
  id: /* @__PURE__ */ number(),
35355
35350
  name: /* @__PURE__ */ string(),
@@ -35358,12 +35353,17 @@ const OrganizationUserResponseSchema = /* @__PURE__ */ object({
35358
35353
  work_role_id: /* @__PURE__ */ number(),
35359
35354
  workspace_user_id: /* @__PURE__ */ number()
35360
35355
  })),
35356
+ account_locked_at: /* @__PURE__ */ optional(/* @__PURE__ */ string()),
35361
35357
  custom_field_values: /* @__PURE__ */ optional(/* @__PURE__ */ array(CustomFieldValueSchema)),
35358
+ deleted_at: /* @__PURE__ */ optional(/* @__PURE__ */ string()),
35362
35359
  designations: /* @__PURE__ */ optional(/* @__PURE__ */ array(/* @__PURE__ */ object({
35363
35360
  id: /* @__PURE__ */ number(),
35364
35361
  name: /* @__PURE__ */ string()
35365
35362
  }))),
35366
- 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.")))
35363
+ 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."))),
35364
+ invite_sent: /* @__PURE__ */ optional(/* @__PURE__ */ boolean()),
35365
+ permissions: /* @__PURE__ */ optional(/* @__PURE__ */ record(/* @__PURE__ */ string(), /* @__PURE__ */ unknown())),
35366
+ working_hours: /* @__PURE__ */ optional(/* @__PURE__ */ number())
35367
35367
  });
35368
35368
  const ProjectBulkArchivePayloadSchema = /* @__PURE__ */ object({ project_ids: /* @__PURE__ */ pipe(/* @__PURE__ */ array(/* @__PURE__ */ number()), /* @__PURE__ */ minLength(1), /* @__PURE__ */ maxLength(100)) });
35369
35369
  const ProjectBulkGroupEntrySchema = /* @__PURE__ */ object({
@@ -44227,14 +44227,16 @@ const generatedFocusOperations = [
44227
44227
  payload: /* @__PURE__ */ looseObject({
44228
44228
  text: /* @__PURE__ */ string$1(),
44229
44229
  page_context: /* @__PURE__ */ optional$1(/* @__PURE__ */ looseObject({
44230
- date_range: /* @__PURE__ */ looseObject({
44231
- from: /* @__PURE__ */ string$1(),
44232
- preset: /* @__PURE__ */ string$1(),
44233
- to: /* @__PURE__ */ string$1()
44234
- }),
44235
- extra: /* @__PURE__ */ unknown$1(),
44236
- filters: /* @__PURE__ */ looseObject({
44237
- entities: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44230
+ page: /* @__PURE__ */ string$1(),
44231
+ version: /* @__PURE__ */ number$2(),
44232
+ date_range: /* @__PURE__ */ optional$1(/* @__PURE__ */ looseObject({
44233
+ from: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
44234
+ preset: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
44235
+ to: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1())
44236
+ })),
44237
+ extra: /* @__PURE__ */ optional$1(/* @__PURE__ */ unknown$1()),
44238
+ filters: /* @__PURE__ */ optional$1(/* @__PURE__ */ looseObject({
44239
+ entities: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44238
44240
  id: /* @__PURE__ */ number$2(),
44239
44241
  kind: /* @__PURE__ */ picklist$1([
44240
44242
  "project",
@@ -44246,11 +44248,11 @@ const generatedFocusOperations = [
44246
44248
  "status",
44247
44249
  "time_entry"
44248
44250
  ]),
44249
- name: /* @__PURE__ */ string$1()
44250
- })),
44251
- search: /* @__PURE__ */ string$1()
44252
- }),
44253
- focus: /* @__PURE__ */ looseObject({
44251
+ name: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1())
44252
+ }))),
44253
+ search: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1())
44254
+ })),
44255
+ focus: /* @__PURE__ */ optional$1(/* @__PURE__ */ looseObject({
44254
44256
  id: /* @__PURE__ */ number$2(),
44255
44257
  kind: /* @__PURE__ */ picklist$1([
44256
44258
  "project",
@@ -44262,10 +44264,10 @@ const generatedFocusOperations = [
44262
44264
  "status",
44263
44265
  "time_entry"
44264
44266
  ]),
44265
- name: /* @__PURE__ */ string$1()
44266
- }),
44267
- groups: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44268
- items: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44267
+ name: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1())
44268
+ })),
44269
+ groups: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44270
+ items: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44269
44271
  id: /* @__PURE__ */ number$2(),
44270
44272
  kind: /* @__PURE__ */ picklist$1([
44271
44273
  "project",
@@ -44277,10 +44279,10 @@ const generatedFocusOperations = [
44277
44279
  "status",
44278
44280
  "time_entry"
44279
44281
  ]),
44280
- name: /* @__PURE__ */ string$1()
44281
- })),
44282
- label: /* @__PURE__ */ string$1(),
44283
- ref: /* @__PURE__ */ looseObject({
44282
+ name: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1())
44283
+ }))),
44284
+ label: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
44285
+ ref: /* @__PURE__ */ optional$1(/* @__PURE__ */ looseObject({
44284
44286
  id: /* @__PURE__ */ number$2(),
44285
44287
  kind: /* @__PURE__ */ picklist$1([
44286
44288
  "project",
@@ -44292,10 +44294,10 @@ const generatedFocusOperations = [
44292
44294
  "status",
44293
44295
  "time_entry"
44294
44296
  ]),
44295
- name: /* @__PURE__ */ string$1()
44296
- })
44297
- })),
44298
- items: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44297
+ name: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1())
44298
+ }))
44299
+ }))),
44300
+ items: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44299
44301
  id: /* @__PURE__ */ number$2(),
44300
44302
  kind: /* @__PURE__ */ picklist$1([
44301
44303
  "project",
@@ -44307,13 +44309,11 @@ const generatedFocusOperations = [
44307
44309
  "status",
44308
44310
  "time_entry"
44309
44311
  ]),
44310
- name: /* @__PURE__ */ string$1()
44311
- })),
44312
- language: /* @__PURE__ */ string$1(),
44313
- page: /* @__PURE__ */ string$1(),
44314
- page_label: /* @__PURE__ */ string$1(),
44315
- url: /* @__PURE__ */ string$1(),
44316
- version: /* @__PURE__ */ number$2()
44312
+ name: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1())
44313
+ }))),
44314
+ language: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
44315
+ page_label: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
44316
+ url: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1())
44317
44317
  }))
44318
44318
  })
44319
44319
  }),
@@ -46367,10 +46367,10 @@ const generatedFocusOperations = [
46367
46367
  },
46368
46368
  mcp: { entityTool: "organization" },
46369
46369
  inputSchema: /* @__PURE__ */ looseObject({ payload: /* @__PURE__ */ looseObject({
46370
- emoji: /* @__PURE__ */ string$1(),
46371
46370
  name: /* @__PURE__ */ string$1(),
46372
- organization_users: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
46373
- workspaces: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2())
46371
+ emoji: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
46372
+ organization_users: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
46373
+ workspaces: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2()))
46374
46374
  }) }),
46375
46375
  execute: (input, { client }) => {
46376
46376
  const data = input;
@@ -46533,10 +46533,10 @@ const generatedFocusOperations = [
46533
46533
  inputSchema: /* @__PURE__ */ looseObject({
46534
46534
  group_id: /* @__PURE__ */ number$2(),
46535
46535
  payload: /* @__PURE__ */ looseObject({
46536
- emoji: /* @__PURE__ */ string$1(),
46537
46536
  name: /* @__PURE__ */ string$1(),
46538
- organization_users: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2()),
46539
- workspaces: /* @__PURE__ */ array$1(/* @__PURE__ */ number$2())
46537
+ emoji: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
46538
+ organization_users: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2())),
46539
+ workspaces: /* @__PURE__ */ optional$1(/* @__PURE__ */ array$1(/* @__PURE__ */ number$2()))
46540
46540
  })
46541
46541
  }),
46542
46542
  execute: (input, { client }) => {
@@ -50137,7 +50137,6 @@ const generatedFocusOperations = [
50137
50137
  inputSchema: /* @__PURE__ */ looseObject({ payload: /* @__PURE__ */ looseObject({
50138
50138
  name: /* @__PURE__ */ string$1(),
50139
50139
  params: /* @__PURE__ */ unknown$1(),
50140
- pinned: /* @__PURE__ */ boolean$1(),
50141
50140
  type: /* @__PURE__ */ picklist$1([
50142
50141
  "inbox",
50143
50142
  "archive",
@@ -50156,7 +50155,8 @@ const generatedFocusOperations = [
50156
50155
  "reports.time-off",
50157
50156
  "reports.time-accounting"
50158
50157
  ]),
50159
- icon_name: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1())
50158
+ icon_name: /* @__PURE__ */ optional$1(/* @__PURE__ */ string$1()),
50159
+ pinned: /* @__PURE__ */ optional$1(/* @__PURE__ */ boolean$1())
50160
50160
  }) }),
50161
50161
  execute: (input, { client }) => {
50162
50162
  const data = input;
@@ -57260,7 +57260,7 @@ function registerWorkspaceTools(server) {
57260
57260
  //#region src/package-version.ts
57261
57261
  function mcpPackageVersion() {
57262
57262
  try {
57263
- return "1.13.44";
57263
+ return "1.13.45";
57264
57264
  } catch {
57265
57265
  return "unknown";
57266
57266
  }
@@ -57441,7 +57441,7 @@ import_main.default.config({
57441
57441
  quiet: true,
57442
57442
  ignore: ["MISSING_ENV_FILE"]
57443
57443
  });
57444
- const packageVersion = "1.13.44";
57444
+ const packageVersion = "1.13.45";
57445
57445
  const MCP_CACHE_TTL_MS = 300 * 1e3;
57446
57446
  const MCP_MAX_TOOL_INPUT_ELEMENTS = 1e4;
57447
57447
  function resolvePublicUrls() {
@@ -57561,4 +57561,4 @@ function bootstrapServer(options = {}) {
57561
57561
  //#endregion
57562
57562
  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 };
57563
57563
 
57564
- //# sourceMappingURL=src-CKOF6X7K.js.map
57564
+ //# sourceMappingURL=src-DwqsxUkU.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@togglhq/mcp",
3
- "version": "1.13.44",
3
+ "version": "1.13.45",
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",