@togglhq/mcp 1.13.21 → 1.13.23

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-DOwINtSm.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-D0dlLbuz.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.21";
165
+ const packageVersion = "1.13.23";
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-DOwINtSm.js";
2
+ import { i as runMcpCli, n as MCP_MAX_TOOL_INPUT_ELEMENTS, r as bootstrapServer, t as MCP_CACHE_TTL_MS } from "./src-D0dlLbuz.js";
3
3
  export { MCP_CACHE_TTL_MS, MCP_MAX_TOOL_INPUT_ELEMENTS, bootstrapServer, runMcpCli };
@@ -38437,7 +38437,7 @@ const PublicMeEntryRequestSchema = /* @__PURE__ */ object$2({
38437
38437
  ]))
38438
38438
  });
38439
38439
  //#endregion
38440
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.217_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_cabf20a4dded3d1c92892ef1346ca143/node_modules/@toggl/queries/dist/org/invitation/requests.mjs
38440
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.218_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_b09d83e157ca794398c814e7cb494c55/node_modules/@toggl/queries/dist/org/invitation/requests.mjs
38441
38441
  async function getInvitations(httpClient, signal) {
38442
38442
  return (await httpClient.get(`invitations`, { signal })).json();
38443
38443
  }
@@ -38454,7 +38454,7 @@ async function resendInvitation(httpClient, organization_id, organization_user_i
38454
38454
  return (await httpClient.post(`organizations/${organization_id}/invitations/${organization_user_id}/resend`, { signal })).json();
38455
38455
  }
38456
38456
  //#endregion
38457
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.217_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_cabf20a4dded3d1c92892ef1346ca143/node_modules/@toggl/queries/dist/org/utils/requests.mjs
38457
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.218_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_b09d83e157ca794398c814e7cb494c55/node_modules/@toggl/queries/dist/org/utils/requests.mjs
38458
38458
  function buildSearchParams(params, flattenArrays = false) {
38459
38459
  const searchParams = new URLSearchParams();
38460
38460
  Object.entries(params).forEach(([key, value]) => {
@@ -38466,7 +38466,7 @@ function buildSearchParams(params, flattenArrays = false) {
38466
38466
  return searchParams;
38467
38467
  }
38468
38468
  //#endregion
38469
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.217_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_cabf20a4dded3d1c92892ef1346ca143/node_modules/@toggl/queries/dist/org/organization-user/requests.mjs
38469
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.218_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_b09d83e157ca794398c814e7cb494c55/node_modules/@toggl/queries/dist/org/organization-user/requests.mjs
38470
38470
  async function getOrganizationUser(httpClient, organization_id, organization_user_id, signal) {
38471
38471
  return (await httpClient.get(`organizations/${organization_id}/users/${organization_user_id}`, { signal })).json();
38472
38472
  }
@@ -38480,7 +38480,7 @@ async function patchOrganizationUserActive(httpClient, organization_id, organiza
38480
38480
  return (await httpClient.patch(`organizations/${organization_id}/users/${organization_user_id}/active_status/${status}`, { signal })).json();
38481
38481
  }
38482
38482
  //#endregion
38483
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.217_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_cabf20a4dded3d1c92892ef1346ca143/node_modules/@toggl/queries/dist/org/workspace/requests.mjs
38483
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.218_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_b09d83e157ca794398c814e7cb494c55/node_modules/@toggl/queries/dist/org/workspace/requests.mjs
38484
38484
  async function getWorkspaces(httpClient, organization_id, signal) {
38485
38485
  return (await httpClient.get(`organizations/${organization_id}/workspaces`, { signal })).json();
38486
38486
  }
@@ -38500,7 +38500,7 @@ const WorkingHoursUpdateInputSchema = /* @__PURE__ */ object$2({
38500
38500
  });
38501
38501
  const StatusOKSchema = /* @__PURE__ */ object$2({ status: /* @__PURE__ */ string$1() });
38502
38502
  //#endregion
38503
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.217_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_cabf20a4dded3d1c92892ef1346ca143/node_modules/@toggl/queries/dist/org/holiday-calendar/requests.mjs
38503
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.218_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_b09d83e157ca794398c814e7cb494c55/node_modules/@toggl/queries/dist/org/holiday-calendar/requests.mjs
38504
38504
  async function holidayListDates(httpClient, organization_id, { year, country }, signal) {
38505
38505
  return (await httpClient.get(`holidays/organizations/${organization_id}/calendar/dates`, {
38506
38506
  signal,
@@ -38511,12 +38511,12 @@ async function holidayListDates(httpClient, organization_id, { year, country },
38511
38511
  })).json();
38512
38512
  }
38513
38513
  //#endregion
38514
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.217_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_cabf20a4dded3d1c92892ef1346ca143/node_modules/@toggl/queries/dist/shared-data/status/requests.mjs
38514
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.218_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_b09d83e157ca794398c814e7cb494c55/node_modules/@toggl/queries/dist/shared-data/status/requests.mjs
38515
38515
  async function getStatus(httpClient, signal) {
38516
38516
  return (await httpClient.get(`shared_data/api/status`, { signal })).json();
38517
38517
  }
38518
38518
  //#endregion
38519
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.217_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_cabf20a4dded3d1c92892ef1346ca143/node_modules/@toggl/queries/dist/org/timeoff/requests.mjs
38519
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.218_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_b09d83e157ca794398c814e7cb494c55/node_modules/@toggl/queries/dist/org/timeoff/requests.mjs
38520
38520
  async function timeoffListMyEntries(httpClient, organization_id, { from, to }, signal) {
38521
38521
  return (await httpClient.get(`timeoff/organizations/${organization_id}/me`, {
38522
38522
  signal,
@@ -38544,7 +38544,7 @@ async function timeoffDeleteMyEntry(httpClient, organization_id, id, signal) {
38544
38544
  return response.json();
38545
38545
  }
38546
38546
  //#endregion
38547
- //#region ../../node_modules/.pnpm/@toggl+queries@2.2.217_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_cabf20a4dded3d1c92892ef1346ca143/node_modules/@toggl/queries/dist/shared-data/working-hours/requests.mjs
38547
+ //#region ../../node_modules/.pnpm/@toggl+queries@2.2.218_@tanstack+react-query@5.99.0_react@19.2.5__@toggl+sync@0.2.4_rea_b09d83e157ca794398c814e7cb494c55/node_modules/@toggl/queries/dist/shared-data/working-hours/requests.mjs
38548
38548
  async function getMyWorkingHours(httpClient, organization_id, signal) {
38549
38549
  return (await httpClient.get(`shared_data/api/workinghours/${organization_id}/me`, { signal })).json();
38550
38550
  }
@@ -42509,6 +42509,20 @@ function formatValibotError(issues, maxLength = MAX_ERROR_LENGTH) {
42509
42509
  return [...messages.slice(0, included), `(+${messages.length - included} more)`].join("; ");
42510
42510
  }
42511
42511
  //#endregion
42512
+ //#region ../focus-queries/dist/ai/requests.ts
42513
+ async function getAiMessages(httpClient, organization_id, workspace_id, conversation_id, { limit } = {}, signal) {
42514
+ return await httpClient.get(`ai/organizations/${organization_id}/workspaces/${workspace_id}/conversations/${conversation_id}/messages`, {
42515
+ signal,
42516
+ searchParams: buildSearchParams$2({ limit })
42517
+ }).json();
42518
+ }
42519
+ async function sendAiMessage(httpClient, organization_id, workspace_id, conversation_id, data, signal) {
42520
+ return await httpClient.post(`ai/organizations/${organization_id}/workspaces/${workspace_id}/conversations/${conversation_id}/messages`, {
42521
+ signal,
42522
+ json: data
42523
+ }).json();
42524
+ }
42525
+ //#endregion
42512
42526
  //#region ../focus-queries/dist/attachments/requests.ts
42513
42527
  async function getWorkspaceAttachmentStorage(httpClient, organization_id, workspace_id, signal) {
42514
42528
  return await httpClient.get(`organizations/${organization_id}/workspaces/${workspace_id}/attachments/storage`, { signal }).json();
@@ -44101,6 +44115,158 @@ function callGeneratedRequest(request, args) {
44101
44115
  return request(...args);
44102
44116
  }
44103
44117
  const generatedFocusOperations = [
44118
+ {
44119
+ id: "focus.ai.get-messages",
44120
+ family: "focus",
44121
+ resource: "ai",
44122
+ action: "get-messages",
44123
+ title: "Get Messages Ai",
44124
+ description: "Get Messages Ai.",
44125
+ safety: "read",
44126
+ destructive: false,
44127
+ cli: {
44128
+ group: ["ai"],
44129
+ command: "get-messages",
44130
+ interactive: "hidden"
44131
+ },
44132
+ mcp: { entityTool: "ai" },
44133
+ inputSchema: /* @__PURE__ */ looseObject({
44134
+ conversation_id: /* @__PURE__ */ string$1(),
44135
+ limit: /* @__PURE__ */ optional$1(/* @__PURE__ */ unknown$1())
44136
+ }),
44137
+ execute: (input, { client }) => {
44138
+ const data = input;
44139
+ return client.runGeneratedRequest("getAiMessages", () => callGeneratedRequest(getAiMessages, [
44140
+ client.httpClient,
44141
+ client.organizationId,
44142
+ client.workspaceIdNumber,
44143
+ data.conversation_id,
44144
+ data,
44145
+ void 0
44146
+ ]));
44147
+ }
44148
+ },
44149
+ {
44150
+ id: "focus.ai.send-ai-message",
44151
+ family: "focus",
44152
+ resource: "ai",
44153
+ action: "send-ai-message",
44154
+ title: "Send Ai Message Ai",
44155
+ description: "Send Ai Message Ai.",
44156
+ safety: "update",
44157
+ destructive: false,
44158
+ cli: {
44159
+ group: ["ai"],
44160
+ command: "send-ai-message",
44161
+ interactive: "hidden"
44162
+ },
44163
+ mcp: { entityTool: "ai" },
44164
+ inputSchema: /* @__PURE__ */ looseObject({
44165
+ conversation_id: /* @__PURE__ */ string$1(),
44166
+ payload: /* @__PURE__ */ looseObject({
44167
+ text: /* @__PURE__ */ string$1(),
44168
+ page_context: /* @__PURE__ */ optional$1(/* @__PURE__ */ looseObject({
44169
+ date_range: /* @__PURE__ */ looseObject({
44170
+ from: /* @__PURE__ */ string$1(),
44171
+ preset: /* @__PURE__ */ string$1(),
44172
+ to: /* @__PURE__ */ string$1()
44173
+ }),
44174
+ extra: /* @__PURE__ */ unknown$1(),
44175
+ filters: /* @__PURE__ */ looseObject({
44176
+ entities: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44177
+ id: /* @__PURE__ */ number$2(),
44178
+ kind: /* @__PURE__ */ picklist$1([
44179
+ "project",
44180
+ "task",
44181
+ "client",
44182
+ "tag",
44183
+ "member",
44184
+ "team",
44185
+ "status",
44186
+ "time_entry"
44187
+ ]),
44188
+ name: /* @__PURE__ */ string$1()
44189
+ })),
44190
+ search: /* @__PURE__ */ string$1()
44191
+ }),
44192
+ focus: /* @__PURE__ */ looseObject({
44193
+ id: /* @__PURE__ */ number$2(),
44194
+ kind: /* @__PURE__ */ picklist$1([
44195
+ "project",
44196
+ "task",
44197
+ "client",
44198
+ "tag",
44199
+ "member",
44200
+ "team",
44201
+ "status",
44202
+ "time_entry"
44203
+ ]),
44204
+ name: /* @__PURE__ */ string$1()
44205
+ }),
44206
+ groups: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44207
+ items: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44208
+ id: /* @__PURE__ */ number$2(),
44209
+ kind: /* @__PURE__ */ picklist$1([
44210
+ "project",
44211
+ "task",
44212
+ "client",
44213
+ "tag",
44214
+ "member",
44215
+ "team",
44216
+ "status",
44217
+ "time_entry"
44218
+ ]),
44219
+ name: /* @__PURE__ */ string$1()
44220
+ })),
44221
+ label: /* @__PURE__ */ string$1(),
44222
+ ref: /* @__PURE__ */ looseObject({
44223
+ id: /* @__PURE__ */ number$2(),
44224
+ kind: /* @__PURE__ */ picklist$1([
44225
+ "project",
44226
+ "task",
44227
+ "client",
44228
+ "tag",
44229
+ "member",
44230
+ "team",
44231
+ "status",
44232
+ "time_entry"
44233
+ ]),
44234
+ name: /* @__PURE__ */ string$1()
44235
+ })
44236
+ })),
44237
+ items: /* @__PURE__ */ array$1(/* @__PURE__ */ looseObject({
44238
+ id: /* @__PURE__ */ number$2(),
44239
+ kind: /* @__PURE__ */ picklist$1([
44240
+ "project",
44241
+ "task",
44242
+ "client",
44243
+ "tag",
44244
+ "member",
44245
+ "team",
44246
+ "status",
44247
+ "time_entry"
44248
+ ]),
44249
+ name: /* @__PURE__ */ string$1()
44250
+ })),
44251
+ page: /* @__PURE__ */ string$1(),
44252
+ page_label: /* @__PURE__ */ string$1(),
44253
+ url: /* @__PURE__ */ string$1(),
44254
+ version: /* @__PURE__ */ number$2()
44255
+ }))
44256
+ })
44257
+ }),
44258
+ execute: (input, { client }) => {
44259
+ const data = input;
44260
+ return client.runGeneratedRequest("sendAiMessage", () => callGeneratedRequest(sendAiMessage, [
44261
+ client.httpClient,
44262
+ client.organizationId,
44263
+ client.workspaceIdNumber,
44264
+ data.conversation_id,
44265
+ data.payload ?? data.data ?? data,
44266
+ void 0
44267
+ ]));
44268
+ }
44269
+ },
44104
44270
  {
44105
44271
  id: "focus.alerts.create",
44106
44272
  family: "focus",
@@ -56763,7 +56929,7 @@ function registerWorkspaceTools(server) {
56763
56929
  //#region src/package-version.ts
56764
56930
  function mcpPackageVersion() {
56765
56931
  try {
56766
- return "1.13.21";
56932
+ return "1.13.23";
56767
56933
  } catch {
56768
56934
  return "unknown";
56769
56935
  }
@@ -56944,7 +57110,7 @@ import_main.default.config({
56944
57110
  quiet: true,
56945
57111
  ignore: ["MISSING_ENV_FILE"]
56946
57112
  });
56947
- const packageVersion = "1.13.21";
57113
+ const packageVersion = "1.13.23";
56948
57114
  const MCP_CACHE_TTL_MS = 300 * 1e3;
56949
57115
  const MCP_MAX_TOOL_INPUT_ELEMENTS = 1e4;
56950
57116
  function resolvePublicUrls() {
@@ -57064,4 +57230,4 @@ function bootstrapServer(options = {}) {
57064
57230
  //#endregion
57065
57231
  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 };
57066
57232
 
57067
- //# sourceMappingURL=src-DOwINtSm.js.map
57233
+ //# sourceMappingURL=src-D0dlLbuz.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@togglhq/mcp",
3
- "version": "1.13.21",
3
+ "version": "1.13.23",
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",