@studiometa/productive-mcp 0.10.11 → 0.10.12

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.
Files changed (54) hide show
  1. package/dist/auth.js.map +1 -1
  2. package/dist/crypto.js +3 -3
  3. package/dist/crypto.js.map +1 -1
  4. package/dist/errors.d.ts.map +1 -1
  5. package/dist/handlers/activities.d.ts +3 -99
  6. package/dist/handlers/activities.d.ts.map +1 -1
  7. package/dist/handlers/attachments.d.ts +3 -99
  8. package/dist/handlers/attachments.d.ts.map +1 -1
  9. package/dist/handlers/bookings.d.ts +3 -99
  10. package/dist/handlers/bookings.d.ts.map +1 -1
  11. package/dist/handlers/comments.d.ts +3 -99
  12. package/dist/handlers/comments.d.ts.map +1 -1
  13. package/dist/handlers/companies.d.ts +3 -99
  14. package/dist/handlers/companies.d.ts.map +1 -1
  15. package/dist/handlers/custom-fields.d.ts +3 -99
  16. package/dist/handlers/custom-fields.d.ts.map +1 -1
  17. package/dist/handlers/deals.d.ts +3 -99
  18. package/dist/handlers/deals.d.ts.map +1 -1
  19. package/dist/handlers/discussions.d.ts +3 -99
  20. package/dist/handlers/discussions.d.ts.map +1 -1
  21. package/dist/handlers/pages.d.ts +3 -99
  22. package/dist/handlers/pages.d.ts.map +1 -1
  23. package/dist/handlers/projects.d.ts +3 -99
  24. package/dist/handlers/projects.d.ts.map +1 -1
  25. package/dist/handlers/search.d.ts +1 -1
  26. package/dist/handlers/search.d.ts.map +1 -1
  27. package/dist/handlers/services.d.ts +3 -99
  28. package/dist/handlers/services.d.ts.map +1 -1
  29. package/dist/handlers/tasks.d.ts +3 -99
  30. package/dist/handlers/tasks.d.ts.map +1 -1
  31. package/dist/handlers/time.d.ts +3 -99
  32. package/dist/handlers/time.d.ts.map +1 -1
  33. package/dist/handlers/timers.d.ts +3 -99
  34. package/dist/handlers/timers.d.ts.map +1 -1
  35. package/dist/{handlers-B9FASjNJ.js → handlers-DonE83xo.js} +2 -3
  36. package/dist/handlers-DonE83xo.js.map +1 -0
  37. package/dist/handlers.js +1 -1
  38. package/dist/{http-B3J8ZV4I.js → http-QQVUnV2e.js} +729 -25
  39. package/dist/{http-B3J8ZV4I.js.map → http-QQVUnV2e.js.map} +1 -1
  40. package/dist/http.d.ts.map +1 -1
  41. package/dist/http.js +1 -1
  42. package/dist/index.js +2 -2
  43. package/dist/index.js.map +1 -1
  44. package/dist/oauth.js.map +1 -1
  45. package/dist/server.js +2 -2
  46. package/dist/server.js.map +1 -1
  47. package/dist/{stdio-BpKd5pcS.js → stdio-CRD2nJPs.js} +2 -2
  48. package/dist/{stdio-BpKd5pcS.js.map → stdio-CRD2nJPs.js.map} +1 -1
  49. package/dist/stdio.js +1 -1
  50. package/dist/tools.js.map +1 -1
  51. package/dist/{version-Dm6m3p60.js → version-DMEaGciu.js} +3 -3
  52. package/dist/{version-Dm6m3p60.js.map → version-DMEaGciu.js.map} +1 -1
  53. package/package.json +6 -6
  54. package/dist/handlers-B9FASjNJ.js.map +0 -1
package/dist/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","names":[],"sources":["../src/auth.ts"],"sourcesContent":["/**\n * Authentication utilities for Productive MCP server\n */\n\nexport interface ProductiveCredentials {\n organizationId: string;\n apiToken: string;\n userId?: string;\n}\n\n/**\n * Parse Bearer token containing Productive credentials\n * Token format: base64(organizationId:apiToken) or base64(organizationId:apiToken:userId)\n *\n * @param authHeader - Authorization header value (e.g., \"Bearer base64...\")\n * @returns Parsed credentials or null if invalid\n */\nexport function parseAuthHeader(\n authHeader: string | undefined | null,\n): ProductiveCredentials | null {\n if (!authHeader) {\n return null;\n }\n\n const match = authHeader.match(/^Bearer\\s+(.+)$/i);\n if (!match) {\n return null;\n }\n\n const token = match[1];\n\n try {\n const decoded = Buffer.from(token, 'base64').toString('utf-8');\n const parts = decoded.split(':');\n\n if (parts.length < 2) {\n return null;\n }\n\n const [organizationId, apiToken, userId] = parts;\n\n if (!organizationId || !apiToken) {\n return null;\n }\n\n return {\n organizationId,\n apiToken,\n userId: userId || undefined,\n };\n } catch {\n return null;\n }\n}\n\n/**\n * Create a Bearer token from Productive credentials\n * Useful for documentation and testing\n *\n * @param credentials - Productive credentials\n * @returns Base64 encoded token (without \"Bearer \" prefix)\n */\nexport function createAuthToken(credentials: ProductiveCredentials): string {\n const parts = [credentials.organizationId, credentials.apiToken];\n if (credentials.userId) {\n parts.push(credentials.userId);\n }\n return Buffer.from(parts.join(':')).toString('base64');\n}\n"],"mappings":";;;;;;;;AAiBA,SAAgB,gBACd,YAC8B;AAC9B,KAAI,CAAC,WACH,QAAO;CAGT,MAAM,QAAQ,WAAW,MAAM,mBAAmB;AAClD,KAAI,CAAC,MACH,QAAO;CAGT,MAAM,QAAQ,MAAM;AAEpB,KAAI;EAEF,MAAM,QADU,OAAO,KAAK,OAAO,SAAS,CAAC,SAAS,QAAQ,CACxC,MAAM,IAAI;AAEhC,MAAI,MAAM,SAAS,EACjB,QAAO;EAGT,MAAM,CAAC,gBAAgB,UAAU,UAAU;AAE3C,MAAI,CAAC,kBAAkB,CAAC,SACtB,QAAO;AAGT,SAAO;GACL;GACA;GACA,QAAQ,UAAU,KAAA;GACnB;SACK;AACN,SAAO;;;;;;;;;;AAWX,SAAgB,gBAAgB,aAA4C;CAC1E,MAAM,QAAQ,CAAC,YAAY,gBAAgB,YAAY,SAAS;AAChE,KAAI,YAAY,OACd,OAAM,KAAK,YAAY,OAAO;AAEhC,QAAO,OAAO,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,SAAS,SAAS"}
1
+ {"version":3,"file":"auth.js","names":[],"sources":["../src/auth.ts"],"sourcesContent":["/**\n * Authentication utilities for Productive MCP server\n */\n\nexport interface ProductiveCredentials {\n organizationId: string;\n apiToken: string;\n userId?: string;\n}\n\n/**\n * Parse Bearer token containing Productive credentials\n * Token format: base64(organizationId:apiToken) or base64(organizationId:apiToken:userId)\n *\n * @param authHeader - Authorization header value (e.g., \"Bearer base64...\")\n * @returns Parsed credentials or null if invalid\n */\nexport function parseAuthHeader(\n authHeader: string | undefined | null,\n): ProductiveCredentials | null {\n if (!authHeader) {\n return null;\n }\n\n const match = authHeader.match(/^Bearer\\s+(.+)$/i);\n if (!match) {\n return null;\n }\n\n const token = match[1];\n\n try {\n const decoded = Buffer.from(token, 'base64').toString('utf-8');\n const parts = decoded.split(':');\n\n if (parts.length < 2) {\n return null;\n }\n\n const [organizationId, apiToken, userId] = parts;\n\n if (!organizationId || !apiToken) {\n return null;\n }\n\n return {\n organizationId,\n apiToken,\n userId: userId || undefined,\n };\n } catch {\n return null;\n }\n}\n\n/**\n * Create a Bearer token from Productive credentials\n * Useful for documentation and testing\n *\n * @param credentials - Productive credentials\n * @returns Base64 encoded token (without \"Bearer \" prefix)\n */\nexport function createAuthToken(credentials: ProductiveCredentials): string {\n const parts = [credentials.organizationId, credentials.apiToken];\n if (credentials.userId) {\n parts.push(credentials.userId);\n }\n return Buffer.from(parts.join(':')).toString('base64');\n}\n"],"mappings":";;;;;;;;AAiBA,SAAgB,gBACd,YAC8B;CAC9B,IAAI,CAAC,YACH,OAAO;CAGT,MAAM,QAAQ,WAAW,MAAM,kBAAkB;CACjD,IAAI,CAAC,OACH,OAAO;CAGT,MAAM,QAAQ,MAAM;CAEpB,IAAI;EAEF,MAAM,QADU,OAAO,KAAK,OAAO,QAAQ,EAAE,SAAS,OACxC,EAAQ,MAAM,GAAG;EAE/B,IAAI,MAAM,SAAS,GACjB,OAAO;EAGT,MAAM,CAAC,gBAAgB,UAAU,UAAU;EAE3C,IAAI,CAAC,kBAAkB,CAAC,UACtB,OAAO;EAGT,OAAO;GACL;GACA;GACA,QAAQ,UAAU,KAAA;EACpB;CACF,QAAQ;EACN,OAAO;CACT;AACF;;;;;;;;AASA,SAAgB,gBAAgB,aAA4C;CAC1E,MAAM,QAAQ,CAAC,YAAY,gBAAgB,YAAY,QAAQ;CAC/D,IAAI,YAAY,QACd,MAAM,KAAK,YAAY,MAAM;CAE/B,OAAO,OAAO,KAAK,MAAM,KAAK,GAAG,CAAC,EAAE,SAAS,QAAQ;AACvD"}
package/dist/crypto.js CHANGED
@@ -64,9 +64,9 @@ function decrypt(ciphertext, secret = getSecret()) {
64
64
  try {
65
65
  const combined = Buffer.from(ciphertext, "base64url");
66
66
  const salt = combined.subarray(0, SALT_LENGTH);
67
- const iv = combined.subarray(SALT_LENGTH, SALT_LENGTH + IV_LENGTH);
68
- const authTag = combined.subarray(SALT_LENGTH + IV_LENGTH, SALT_LENGTH + IV_LENGTH + AUTH_TAG_LENGTH);
69
- const encrypted = combined.subarray(SALT_LENGTH + IV_LENGTH + AUTH_TAG_LENGTH);
67
+ const iv = combined.subarray(SALT_LENGTH, 28);
68
+ const authTag = combined.subarray(28, 44);
69
+ const encrypted = combined.subarray(44);
70
70
  const decipher = createDecipheriv(ALGORITHM, deriveKey(secret, salt), iv, { authTagLength: AUTH_TAG_LENGTH });
71
71
  decipher.setAuthTag(authTag);
72
72
  return Buffer.concat([decipher.update(encrypted), decipher.final()]).toString("utf8");
@@ -1 +1 @@
1
- {"version":3,"file":"crypto.js","names":[],"sources":["../src/crypto.ts"],"sourcesContent":["/**\n * Cryptographic utilities for stateless OAuth tokens\n *\n * Uses AES-256-GCM for authenticated encryption.\n * The authorization code contains encrypted credentials that can be\n * decrypted without server-side storage.\n */\n\nimport { createCipheriv, createDecipheriv, randomBytes, scryptSync } from 'node:crypto';\n\nconst ALGORITHM = 'aes-256-gcm';\nconst IV_LENGTH = 12; // GCM recommended IV length\nconst AUTH_TAG_LENGTH = 16;\nconst SALT_LENGTH = 16;\n\n/**\n * Derive a 256-bit key from a password using scrypt\n */\nfunction deriveKey(password: string, salt: Buffer): Buffer {\n return scryptSync(password, salt, 32);\n}\n\n/**\n * Get the encryption secret from environment or generate a default\n * In production, OAUTH_SECRET should always be set\n */\nexport function getSecret(): string {\n const secret = process.env.OAUTH_SECRET;\n if (!secret) {\n console.warn(\n 'WARNING: OAUTH_SECRET not set. Using default secret. Set OAUTH_SECRET in production!',\n );\n return 'productive-mcp-default-secret-change-me';\n }\n return secret;\n}\n\n/**\n * Encrypt data using AES-256-GCM\n *\n * Output format: base64(salt + iv + authTag + ciphertext)\n *\n * @param plaintext - Data to encrypt\n * @param secret - Encryption secret (defaults to OAUTH_SECRET env var)\n * @returns Base64-encoded encrypted data\n */\nexport function encrypt(plaintext: string, secret: string = getSecret()): string {\n const salt = randomBytes(SALT_LENGTH);\n const key = deriveKey(secret, salt);\n const iv = randomBytes(IV_LENGTH);\n\n const cipher = createCipheriv(ALGORITHM, key, iv);\n const encrypted = Buffer.concat([cipher.update(plaintext, 'utf8'), cipher.final()]);\n const authTag = cipher.getAuthTag();\n\n // Combine: salt + iv + authTag + ciphertext\n const combined = Buffer.concat([salt, iv, authTag, encrypted]);\n\n return combined.toString('base64url');\n}\n\n/**\n * Decrypt data encrypted with encrypt()\n *\n * @param ciphertext - Base64-encoded encrypted data\n * @param secret - Encryption secret (defaults to OAUTH_SECRET env var)\n * @returns Decrypted plaintext\n * @throws Error if decryption fails (invalid data or wrong secret)\n */\nexport function decrypt(ciphertext: string, secret: string = getSecret()): string {\n try {\n const combined = Buffer.from(ciphertext, 'base64url');\n\n // Extract components\n const salt = combined.subarray(0, SALT_LENGTH);\n const iv = combined.subarray(SALT_LENGTH, SALT_LENGTH + IV_LENGTH);\n const authTag = combined.subarray(\n SALT_LENGTH + IV_LENGTH,\n SALT_LENGTH + IV_LENGTH + AUTH_TAG_LENGTH,\n );\n const encrypted = combined.subarray(SALT_LENGTH + IV_LENGTH + AUTH_TAG_LENGTH);\n\n const key = deriveKey(secret, salt);\n\n const decipher = createDecipheriv(ALGORITHM, key, iv, { authTagLength: AUTH_TAG_LENGTH });\n decipher.setAuthTag(authTag);\n\n const decrypted = Buffer.concat([decipher.update(encrypted), decipher.final()]);\n\n return decrypted.toString('utf8');\n } catch {\n throw new Error('Decryption failed: invalid token or secret');\n }\n}\n\n/**\n * Authorization code payload structure\n */\nexport interface AuthCodePayload {\n orgId: string;\n apiToken: string;\n userId?: string;\n codeChallenge?: string;\n codeChallengeMethod?: string;\n}\n\n/**\n * Create an encrypted authorization code containing credentials and PKCE challenge\n *\n * @param credentials - Object with orgId, apiToken, userId, and optional PKCE params\n * @param expiresInSeconds - Code expiration time (default: 5 minutes)\n * @returns Encrypted authorization code\n */\nexport function createAuthCode(\n credentials: AuthCodePayload,\n expiresInSeconds: number = 300,\n): string {\n const payload = {\n ...credentials,\n exp: Date.now() + expiresInSeconds * 1000,\n };\n return encrypt(JSON.stringify(payload));\n}\n\n/**\n * Decode and validate an authorization code\n *\n * @param code - Encrypted authorization code\n * @returns Decoded payload with credentials and PKCE challenge\n * @throws Error if code is invalid or expired\n */\nexport function decodeAuthCode(code: string): AuthCodePayload {\n const payload = JSON.parse(decrypt(code));\n\n if (payload.exp && Date.now() > payload.exp) {\n throw new Error('Authorization code expired');\n }\n\n const { orgId, apiToken, userId, codeChallenge, codeChallengeMethod } = payload;\n\n if (!orgId || !apiToken) {\n throw new Error('Invalid authorization code: missing credentials');\n }\n\n return { orgId, apiToken, userId, codeChallenge, codeChallengeMethod };\n}\n"],"mappings":";;;;;;;;;AAUA,IAAM,YAAY;AAClB,IAAM,YAAY;AAClB,IAAM,kBAAkB;AACxB,IAAM,cAAc;;;;AAKpB,SAAS,UAAU,UAAkB,MAAsB;AACzD,QAAO,WAAW,UAAU,MAAM,GAAG;;;;;;AAOvC,SAAgB,YAAoB;CAClC,MAAM,SAAS,QAAQ,IAAI;AAC3B,KAAI,CAAC,QAAQ;AACX,UAAQ,KACN,uFACD;AACD,SAAO;;AAET,QAAO;;;;;;;;;;;AAYT,SAAgB,QAAQ,WAAmB,SAAiB,WAAW,EAAU;CAC/E,MAAM,OAAO,YAAY,YAAY;CACrC,MAAM,MAAM,UAAU,QAAQ,KAAK;CACnC,MAAM,KAAK,YAAY,UAAU;CAEjC,MAAM,SAAS,eAAe,WAAW,KAAK,GAAG;CACjD,MAAM,YAAY,OAAO,OAAO,CAAC,OAAO,OAAO,WAAW,OAAO,EAAE,OAAO,OAAO,CAAC,CAAC;CACnF,MAAM,UAAU,OAAO,YAAY;AAKnC,QAFiB,OAAO,OAAO;EAAC;EAAM;EAAI;EAAS;EAAU,CAAC,CAE9C,SAAS,YAAY;;;;;;;;;;AAWvC,SAAgB,QAAQ,YAAoB,SAAiB,WAAW,EAAU;AAChF,KAAI;EACF,MAAM,WAAW,OAAO,KAAK,YAAY,YAAY;EAGrD,MAAM,OAAO,SAAS,SAAS,GAAG,YAAY;EAC9C,MAAM,KAAK,SAAS,SAAS,aAAa,cAAc,UAAU;EAClE,MAAM,UAAU,SAAS,SACvB,cAAc,WACd,cAAc,YAAY,gBAC3B;EACD,MAAM,YAAY,SAAS,SAAS,cAAc,YAAY,gBAAgB;EAI9E,MAAM,WAAW,iBAAiB,WAFtB,UAAU,QAAQ,KAAK,EAEe,IAAI,EAAE,eAAe,iBAAiB,CAAC;AACzF,WAAS,WAAW,QAAQ;AAI5B,SAFkB,OAAO,OAAO,CAAC,SAAS,OAAO,UAAU,EAAE,SAAS,OAAO,CAAC,CAAC,CAE9D,SAAS,OAAO;SAC3B;AACN,QAAM,IAAI,MAAM,6CAA6C;;;;;;;;;;AAsBjE,SAAgB,eACd,aACA,mBAA2B,KACnB;CACR,MAAM,UAAU;EACd,GAAG;EACH,KAAK,KAAK,KAAK,GAAG,mBAAmB;EACtC;AACD,QAAO,QAAQ,KAAK,UAAU,QAAQ,CAAC;;;;;;;;;AAUzC,SAAgB,eAAe,MAA+B;CAC5D,MAAM,UAAU,KAAK,MAAM,QAAQ,KAAK,CAAC;AAEzC,KAAI,QAAQ,OAAO,KAAK,KAAK,GAAG,QAAQ,IACtC,OAAM,IAAI,MAAM,6BAA6B;CAG/C,MAAM,EAAE,OAAO,UAAU,QAAQ,eAAe,wBAAwB;AAExE,KAAI,CAAC,SAAS,CAAC,SACb,OAAM,IAAI,MAAM,kDAAkD;AAGpE,QAAO;EAAE;EAAO;EAAU;EAAQ;EAAe;EAAqB"}
1
+ {"version":3,"file":"crypto.js","names":[],"sources":["../src/crypto.ts"],"sourcesContent":["/**\n * Cryptographic utilities for stateless OAuth tokens\n *\n * Uses AES-256-GCM for authenticated encryption.\n * The authorization code contains encrypted credentials that can be\n * decrypted without server-side storage.\n */\n\nimport { createCipheriv, createDecipheriv, randomBytes, scryptSync } from 'node:crypto';\n\nconst ALGORITHM = 'aes-256-gcm';\nconst IV_LENGTH = 12; // GCM recommended IV length\nconst AUTH_TAG_LENGTH = 16;\nconst SALT_LENGTH = 16;\n\n/**\n * Derive a 256-bit key from a password using scrypt\n */\nfunction deriveKey(password: string, salt: Buffer): Buffer {\n return scryptSync(password, salt, 32);\n}\n\n/**\n * Get the encryption secret from environment or generate a default\n * In production, OAUTH_SECRET should always be set\n */\nexport function getSecret(): string {\n const secret = process.env.OAUTH_SECRET;\n if (!secret) {\n console.warn(\n 'WARNING: OAUTH_SECRET not set. Using default secret. Set OAUTH_SECRET in production!',\n );\n return 'productive-mcp-default-secret-change-me';\n }\n return secret;\n}\n\n/**\n * Encrypt data using AES-256-GCM\n *\n * Output format: base64(salt + iv + authTag + ciphertext)\n *\n * @param plaintext - Data to encrypt\n * @param secret - Encryption secret (defaults to OAUTH_SECRET env var)\n * @returns Base64-encoded encrypted data\n */\nexport function encrypt(plaintext: string, secret: string = getSecret()): string {\n const salt = randomBytes(SALT_LENGTH);\n const key = deriveKey(secret, salt);\n const iv = randomBytes(IV_LENGTH);\n\n const cipher = createCipheriv(ALGORITHM, key, iv);\n const encrypted = Buffer.concat([cipher.update(plaintext, 'utf8'), cipher.final()]);\n const authTag = cipher.getAuthTag();\n\n // Combine: salt + iv + authTag + ciphertext\n const combined = Buffer.concat([salt, iv, authTag, encrypted]);\n\n return combined.toString('base64url');\n}\n\n/**\n * Decrypt data encrypted with encrypt()\n *\n * @param ciphertext - Base64-encoded encrypted data\n * @param secret - Encryption secret (defaults to OAUTH_SECRET env var)\n * @returns Decrypted plaintext\n * @throws Error if decryption fails (invalid data or wrong secret)\n */\nexport function decrypt(ciphertext: string, secret: string = getSecret()): string {\n try {\n const combined = Buffer.from(ciphertext, 'base64url');\n\n // Extract components\n const salt = combined.subarray(0, SALT_LENGTH);\n const iv = combined.subarray(SALT_LENGTH, SALT_LENGTH + IV_LENGTH);\n const authTag = combined.subarray(\n SALT_LENGTH + IV_LENGTH,\n SALT_LENGTH + IV_LENGTH + AUTH_TAG_LENGTH,\n );\n const encrypted = combined.subarray(SALT_LENGTH + IV_LENGTH + AUTH_TAG_LENGTH);\n\n const key = deriveKey(secret, salt);\n\n const decipher = createDecipheriv(ALGORITHM, key, iv, { authTagLength: AUTH_TAG_LENGTH });\n decipher.setAuthTag(authTag);\n\n const decrypted = Buffer.concat([decipher.update(encrypted), decipher.final()]);\n\n return decrypted.toString('utf8');\n } catch {\n throw new Error('Decryption failed: invalid token or secret');\n }\n}\n\n/**\n * Authorization code payload structure\n */\nexport interface AuthCodePayload {\n orgId: string;\n apiToken: string;\n userId?: string;\n codeChallenge?: string;\n codeChallengeMethod?: string;\n}\n\n/**\n * Create an encrypted authorization code containing credentials and PKCE challenge\n *\n * @param credentials - Object with orgId, apiToken, userId, and optional PKCE params\n * @param expiresInSeconds - Code expiration time (default: 5 minutes)\n * @returns Encrypted authorization code\n */\nexport function createAuthCode(\n credentials: AuthCodePayload,\n expiresInSeconds: number = 300,\n): string {\n const payload = {\n ...credentials,\n exp: Date.now() + expiresInSeconds * 1000,\n };\n return encrypt(JSON.stringify(payload));\n}\n\n/**\n * Decode and validate an authorization code\n *\n * @param code - Encrypted authorization code\n * @returns Decoded payload with credentials and PKCE challenge\n * @throws Error if code is invalid or expired\n */\nexport function decodeAuthCode(code: string): AuthCodePayload {\n const payload = JSON.parse(decrypt(code));\n\n if (payload.exp && Date.now() > payload.exp) {\n throw new Error('Authorization code expired');\n }\n\n const { orgId, apiToken, userId, codeChallenge, codeChallengeMethod } = payload;\n\n if (!orgId || !apiToken) {\n throw new Error('Invalid authorization code: missing credentials');\n }\n\n return { orgId, apiToken, userId, codeChallenge, codeChallengeMethod };\n}\n"],"mappings":";;;;;;;;;AAUA,IAAM,YAAY;AAClB,IAAM,YAAY;AAClB,IAAM,kBAAkB;AACxB,IAAM,cAAc;;;;AAKpB,SAAS,UAAU,UAAkB,MAAsB;CACzD,OAAO,WAAW,UAAU,MAAM,EAAE;AACtC;;;;;AAMA,SAAgB,YAAoB;CAClC,MAAM,SAAS,QAAQ,IAAI;CAC3B,IAAI,CAAC,QAAQ;EACX,QAAQ,KACN,sFACF;EACA,OAAO;CACT;CACA,OAAO;AACT;;;;;;;;;;AAWA,SAAgB,QAAQ,WAAmB,SAAiB,UAAU,GAAW;CAC/E,MAAM,OAAO,YAAY,WAAW;CACpC,MAAM,MAAM,UAAU,QAAQ,IAAI;CAClC,MAAM,KAAK,YAAY,SAAS;CAEhC,MAAM,SAAS,eAAe,WAAW,KAAK,EAAE;CAChD,MAAM,YAAY,OAAO,OAAO,CAAC,OAAO,OAAO,WAAW,MAAM,GAAG,OAAO,MAAM,CAAC,CAAC;CAClF,MAAM,UAAU,OAAO,WAAW;CAKlC,OAFiB,OAAO,OAAO;EAAC;EAAM;EAAI;EAAS;CAAS,CAErD,EAAS,SAAS,WAAW;AACtC;;;;;;;;;AAUA,SAAgB,QAAQ,YAAoB,SAAiB,UAAU,GAAW;CAChF,IAAI;EACF,MAAM,WAAW,OAAO,KAAK,YAAY,WAAW;EAGpD,MAAM,OAAO,SAAS,SAAS,GAAG,WAAW;EAC7C,MAAM,KAAK,SAAS,SAAS,aAAa,EAAuB;EACjE,MAAM,UAAU,SAAS,SACvB,IACA,EACF;EACA,MAAM,YAAY,SAAS,SAAS,EAAyC;EAI7E,MAAM,WAAW,iBAAiB,WAFtB,UAAU,QAAQ,IAEe,GAAK,IAAI,EAAE,eAAe,gBAAgB,CAAC;EACxF,SAAS,WAAW,OAAO;EAI3B,OAFkB,OAAO,OAAO,CAAC,SAAS,OAAO,SAAS,GAAG,SAAS,MAAM,CAAC,CAEtE,EAAU,SAAS,MAAM;CAClC,QAAQ;EACN,MAAM,IAAI,MAAM,4CAA4C;CAC9D;AACF;;;;;;;;AAoBA,SAAgB,eACd,aACA,mBAA2B,KACnB;CACR,MAAM,UAAU;EACd,GAAG;EACH,KAAK,KAAK,IAAI,IAAI,mBAAmB;CACvC;CACA,OAAO,QAAQ,KAAK,UAAU,OAAO,CAAC;AACxC;;;;;;;;AASA,SAAgB,eAAe,MAA+B;CAC5D,MAAM,UAAU,KAAK,MAAM,QAAQ,IAAI,CAAC;CAExC,IAAI,QAAQ,OAAO,KAAK,IAAI,IAAI,QAAQ,KACtC,MAAM,IAAI,MAAM,4BAA4B;CAG9C,MAAM,EAAE,OAAO,UAAU,QAAQ,eAAe,wBAAwB;CAExE,IAAI,CAAC,SAAS,CAAC,UACb,MAAM,IAAI,MAAM,iDAAiD;CAGnE,OAAO;EAAE;EAAO;EAAU;EAAQ;EAAe;CAAoB;AACvE"}
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAgB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjC,YAAY,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,EAI5C;IAED;;OAEG;IACH,kBAAkB,IAAI,MAAM,CAM3B;CACF;AAED;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;CAuGhB,CAAC;AAEX;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAExE"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAgB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAEjC,YAAY,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,EAI5C;IAED;;OAEG;IACH,kBAAkB,IAAI,MAAM,CAM3B;CACF;AAED;;GAEG;AACH,eAAO,MAAM,aAAa;aAExB,SAAS,WAAW,MAAM;aAM1B,qBAAqB,aAAa,MAAM,UAAU,MAAM,EAAE;aAU1D,aAAa,WAAW,MAAM,YAAY,MAAM,gBAAgB,MAAM,EAAE;aAOxE,eAAe,aAAa,MAAM,kBAAkB,MAAM,EAAE;aAO5D,iBAAiB;aAMjB,iBAAiB,eAAe,MAAM,cAAc,MAAM,EAAE;aAO5D,sBAAsB;aAOtB,kBAAkB;aAOlB,oBAAoB;aAOpB,oBAAoB;aAOpB,uBAAuB,kBAAkB,MAAM,EAAE;aAOjD,QAAQ,eAAe,MAAM,WAAW,MAAM;CAuBtC,CAAC;AAEX;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,cAAc,CAExE"}
@@ -20,103 +20,7 @@ export interface ActivityArgs extends CommonArgs {
20
20
  * Supports: list
21
21
  */
22
22
  export declare const handleActivities: (action: string, args: ActivityArgs & {
23
- query?: string | undefined;
24
- type?: import("@studiometa/productive-core").ResolvableResourceType | undefined;
25
- }, ctx: import("./types.js").HandlerContext) => Promise<{
26
- [x: string]: unknown;
27
- _meta?: {
28
- [x: string]: unknown;
29
- progressToken?: string | number | undefined;
30
- "io.modelcontextprotocol/related-task"?: {
31
- taskId: string;
32
- } | undefined;
33
- } | undefined;
34
- content: ({
35
- type: "text";
36
- text: string;
37
- annotations?: {
38
- audience?: ("assistant" | "user")[] | undefined;
39
- priority?: number | undefined;
40
- lastModified?: string | undefined;
41
- } | undefined;
42
- _meta?: {
43
- [x: string]: unknown;
44
- } | undefined;
45
- } | {
46
- type: "image";
47
- data: string;
48
- mimeType: string;
49
- annotations?: {
50
- audience?: ("assistant" | "user")[] | undefined;
51
- priority?: number | undefined;
52
- lastModified?: string | undefined;
53
- } | undefined;
54
- _meta?: {
55
- [x: string]: unknown;
56
- } | undefined;
57
- } | {
58
- type: "audio";
59
- data: string;
60
- mimeType: string;
61
- annotations?: {
62
- audience?: ("assistant" | "user")[] | undefined;
63
- priority?: number | undefined;
64
- lastModified?: string | undefined;
65
- } | undefined;
66
- _meta?: {
67
- [x: string]: unknown;
68
- } | undefined;
69
- } | {
70
- uri: string;
71
- description?: string | undefined;
72
- mimeType?: string | undefined;
73
- size?: number | undefined;
74
- annotations?: {
75
- audience?: ("assistant" | "user")[] | undefined;
76
- priority?: number | undefined;
77
- lastModified?: string | undefined;
78
- } | undefined;
79
- _meta?: {
80
- [x: string]: unknown;
81
- } | undefined;
82
- icons?: {
83
- src: string;
84
- mimeType?: string | undefined;
85
- sizes?: string[] | undefined;
86
- theme?: "dark" | "light" | undefined;
87
- }[] | undefined;
88
- name: string;
89
- title?: string | undefined;
90
- type: "resource_link";
91
- } | {
92
- type: "resource";
93
- resource: {
94
- uri: string;
95
- mimeType?: string | undefined;
96
- _meta?: {
97
- [x: string]: unknown;
98
- } | undefined;
99
- text: string;
100
- } | {
101
- uri: string;
102
- mimeType?: string | undefined;
103
- _meta?: {
104
- [x: string]: unknown;
105
- } | undefined;
106
- blob: string;
107
- };
108
- annotations?: {
109
- audience?: ("assistant" | "user")[] | undefined;
110
- priority?: number | undefined;
111
- lastModified?: string | undefined;
112
- } | undefined;
113
- _meta?: {
114
- [x: string]: unknown;
115
- } | undefined;
116
- })[];
117
- structuredContent?: {
118
- [x: string]: unknown;
119
- } | undefined;
120
- isError?: boolean | undefined;
121
- }>;
23
+ query?: string;
24
+ type?: import("@studiometa/productive-core").ResolvableResourceType;
25
+ }, ctx: import("./types.js").HandlerContext) => Promise<import("./types.js").ToolResult>;
122
26
  //# sourceMappingURL=activities.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"activities.d.ts","sourceRoot":"","sources":["../../src/handlers/activities.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK7C;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,wDAAwD;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAc3B,CAAC"}
1
+ {"version":3,"file":"activities.d.ts","sourceRoot":"","sources":["../../src/handlers/activities.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAK7C;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,wDAAwD;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qDAAqD;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB;;;wFAc3B,CAAC"}
@@ -3,103 +3,7 @@
3
3
  */
4
4
  import type { AttachmentArgs } from './types.js';
5
5
  export declare const handleAttachments: (action: string, args: AttachmentArgs & {
6
- query?: string | undefined;
7
- type?: import("@studiometa/productive-core").ResolvableResourceType | undefined;
8
- }, ctx: import("./types.js").HandlerContext) => Promise<{
9
- [x: string]: unknown;
10
- _meta?: {
11
- [x: string]: unknown;
12
- progressToken?: string | number | undefined;
13
- "io.modelcontextprotocol/related-task"?: {
14
- taskId: string;
15
- } | undefined;
16
- } | undefined;
17
- content: ({
18
- type: "text";
19
- text: string;
20
- annotations?: {
21
- audience?: ("assistant" | "user")[] | undefined;
22
- priority?: number | undefined;
23
- lastModified?: string | undefined;
24
- } | undefined;
25
- _meta?: {
26
- [x: string]: unknown;
27
- } | undefined;
28
- } | {
29
- type: "image";
30
- data: string;
31
- mimeType: string;
32
- annotations?: {
33
- audience?: ("assistant" | "user")[] | undefined;
34
- priority?: number | undefined;
35
- lastModified?: string | undefined;
36
- } | undefined;
37
- _meta?: {
38
- [x: string]: unknown;
39
- } | undefined;
40
- } | {
41
- type: "audio";
42
- data: string;
43
- mimeType: string;
44
- annotations?: {
45
- audience?: ("assistant" | "user")[] | undefined;
46
- priority?: number | undefined;
47
- lastModified?: string | undefined;
48
- } | undefined;
49
- _meta?: {
50
- [x: string]: unknown;
51
- } | undefined;
52
- } | {
53
- uri: string;
54
- description?: string | undefined;
55
- mimeType?: string | undefined;
56
- size?: number | undefined;
57
- annotations?: {
58
- audience?: ("assistant" | "user")[] | undefined;
59
- priority?: number | undefined;
60
- lastModified?: string | undefined;
61
- } | undefined;
62
- _meta?: {
63
- [x: string]: unknown;
64
- } | undefined;
65
- icons?: {
66
- src: string;
67
- mimeType?: string | undefined;
68
- sizes?: string[] | undefined;
69
- theme?: "dark" | "light" | undefined;
70
- }[] | undefined;
71
- name: string;
72
- title?: string | undefined;
73
- type: "resource_link";
74
- } | {
75
- type: "resource";
76
- resource: {
77
- uri: string;
78
- mimeType?: string | undefined;
79
- _meta?: {
80
- [x: string]: unknown;
81
- } | undefined;
82
- text: string;
83
- } | {
84
- uri: string;
85
- mimeType?: string | undefined;
86
- _meta?: {
87
- [x: string]: unknown;
88
- } | undefined;
89
- blob: string;
90
- };
91
- annotations?: {
92
- audience?: ("assistant" | "user")[] | undefined;
93
- priority?: number | undefined;
94
- lastModified?: string | undefined;
95
- } | undefined;
96
- _meta?: {
97
- [x: string]: unknown;
98
- } | undefined;
99
- })[];
100
- structuredContent?: {
101
- [x: string]: unknown;
102
- } | undefined;
103
- isError?: boolean | undefined;
104
- }>;
6
+ query?: string;
7
+ type?: import("@studiometa/productive-core").ResolvableResourceType;
8
+ }, ctx: import("./types.js").HandlerContext) => Promise<import("./types.js").ToolResult>;
105
9
  //# sourceMappingURL=attachments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"attachments.d.ts","sourceRoot":"","sources":["../../src/handlers/attachments.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAMjD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoB5B,CAAC"}
1
+ {"version":3,"file":"attachments.d.ts","sourceRoot":"","sources":["../../src/handlers/attachments.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAMjD,eAAO,MAAM,iBAAiB;;;wFAoB5B,CAAC"}
@@ -3,103 +3,7 @@
3
3
  */
4
4
  import type { BookingArgs } from './types.js';
5
5
  export declare const handleBookings: (action: string, args: BookingArgs & {
6
- query?: string | undefined;
7
- type?: import("@studiometa/productive-core").ResolvableResourceType | undefined;
8
- }, ctx: import("./types.js").HandlerContext) => Promise<{
9
- [x: string]: unknown;
10
- _meta?: {
11
- [x: string]: unknown;
12
- progressToken?: string | number | undefined;
13
- "io.modelcontextprotocol/related-task"?: {
14
- taskId: string;
15
- } | undefined;
16
- } | undefined;
17
- content: ({
18
- type: "text";
19
- text: string;
20
- annotations?: {
21
- audience?: ("assistant" | "user")[] | undefined;
22
- priority?: number | undefined;
23
- lastModified?: string | undefined;
24
- } | undefined;
25
- _meta?: {
26
- [x: string]: unknown;
27
- } | undefined;
28
- } | {
29
- type: "image";
30
- data: string;
31
- mimeType: string;
32
- annotations?: {
33
- audience?: ("assistant" | "user")[] | undefined;
34
- priority?: number | undefined;
35
- lastModified?: string | undefined;
36
- } | undefined;
37
- _meta?: {
38
- [x: string]: unknown;
39
- } | undefined;
40
- } | {
41
- type: "audio";
42
- data: string;
43
- mimeType: string;
44
- annotations?: {
45
- audience?: ("assistant" | "user")[] | undefined;
46
- priority?: number | undefined;
47
- lastModified?: string | undefined;
48
- } | undefined;
49
- _meta?: {
50
- [x: string]: unknown;
51
- } | undefined;
52
- } | {
53
- uri: string;
54
- description?: string | undefined;
55
- mimeType?: string | undefined;
56
- size?: number | undefined;
57
- annotations?: {
58
- audience?: ("assistant" | "user")[] | undefined;
59
- priority?: number | undefined;
60
- lastModified?: string | undefined;
61
- } | undefined;
62
- _meta?: {
63
- [x: string]: unknown;
64
- } | undefined;
65
- icons?: {
66
- src: string;
67
- mimeType?: string | undefined;
68
- sizes?: string[] | undefined;
69
- theme?: "dark" | "light" | undefined;
70
- }[] | undefined;
71
- name: string;
72
- title?: string | undefined;
73
- type: "resource_link";
74
- } | {
75
- type: "resource";
76
- resource: {
77
- uri: string;
78
- mimeType?: string | undefined;
79
- _meta?: {
80
- [x: string]: unknown;
81
- } | undefined;
82
- text: string;
83
- } | {
84
- uri: string;
85
- mimeType?: string | undefined;
86
- _meta?: {
87
- [x: string]: unknown;
88
- } | undefined;
89
- blob: string;
90
- };
91
- annotations?: {
92
- audience?: ("assistant" | "user")[] | undefined;
93
- priority?: number | undefined;
94
- lastModified?: string | undefined;
95
- } | undefined;
96
- _meta?: {
97
- [x: string]: unknown;
98
- } | undefined;
99
- })[];
100
- structuredContent?: {
101
- [x: string]: unknown;
102
- } | undefined;
103
- isError?: boolean | undefined;
104
- }>;
6
+ query?: string;
7
+ type?: import("@studiometa/productive-core").ResolvableResourceType;
8
+ }, ctx: import("./types.js").HandlerContext) => Promise<import("./types.js").ToolResult>;
105
9
  //# sourceMappingURL=bookings.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bookings.d.ts","sourceRoot":"","sources":["../../src/handlers/bookings.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQ9C,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6CzB,CAAC"}
1
+ {"version":3,"file":"bookings.d.ts","sourceRoot":"","sources":["../../src/handlers/bookings.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQ9C,eAAO,MAAM,cAAc;;;wFA6CzB,CAAC"}
@@ -3,103 +3,7 @@
3
3
  */
4
4
  import type { CommentArgs } from './types.js';
5
5
  export declare const handleComments: (action: string, args: CommentArgs & {
6
- query?: string | undefined;
7
- type?: import("@studiometa/productive-core").ResolvableResourceType | undefined;
8
- }, ctx: import("./types.js").HandlerContext) => Promise<{
9
- [x: string]: unknown;
10
- _meta?: {
11
- [x: string]: unknown;
12
- progressToken?: string | number | undefined;
13
- "io.modelcontextprotocol/related-task"?: {
14
- taskId: string;
15
- } | undefined;
16
- } | undefined;
17
- content: ({
18
- type: "text";
19
- text: string;
20
- annotations?: {
21
- audience?: ("assistant" | "user")[] | undefined;
22
- priority?: number | undefined;
23
- lastModified?: string | undefined;
24
- } | undefined;
25
- _meta?: {
26
- [x: string]: unknown;
27
- } | undefined;
28
- } | {
29
- type: "image";
30
- data: string;
31
- mimeType: string;
32
- annotations?: {
33
- audience?: ("assistant" | "user")[] | undefined;
34
- priority?: number | undefined;
35
- lastModified?: string | undefined;
36
- } | undefined;
37
- _meta?: {
38
- [x: string]: unknown;
39
- } | undefined;
40
- } | {
41
- type: "audio";
42
- data: string;
43
- mimeType: string;
44
- annotations?: {
45
- audience?: ("assistant" | "user")[] | undefined;
46
- priority?: number | undefined;
47
- lastModified?: string | undefined;
48
- } | undefined;
49
- _meta?: {
50
- [x: string]: unknown;
51
- } | undefined;
52
- } | {
53
- uri: string;
54
- description?: string | undefined;
55
- mimeType?: string | undefined;
56
- size?: number | undefined;
57
- annotations?: {
58
- audience?: ("assistant" | "user")[] | undefined;
59
- priority?: number | undefined;
60
- lastModified?: string | undefined;
61
- } | undefined;
62
- _meta?: {
63
- [x: string]: unknown;
64
- } | undefined;
65
- icons?: {
66
- src: string;
67
- mimeType?: string | undefined;
68
- sizes?: string[] | undefined;
69
- theme?: "dark" | "light" | undefined;
70
- }[] | undefined;
71
- name: string;
72
- title?: string | undefined;
73
- type: "resource_link";
74
- } | {
75
- type: "resource";
76
- resource: {
77
- uri: string;
78
- mimeType?: string | undefined;
79
- _meta?: {
80
- [x: string]: unknown;
81
- } | undefined;
82
- text: string;
83
- } | {
84
- uri: string;
85
- mimeType?: string | undefined;
86
- _meta?: {
87
- [x: string]: unknown;
88
- } | undefined;
89
- blob: string;
90
- };
91
- annotations?: {
92
- audience?: ("assistant" | "user")[] | undefined;
93
- priority?: number | undefined;
94
- lastModified?: string | undefined;
95
- } | undefined;
96
- _meta?: {
97
- [x: string]: unknown;
98
- } | undefined;
99
- })[];
100
- structuredContent?: {
101
- [x: string]: unknown;
102
- } | undefined;
103
- isError?: boolean | undefined;
104
- }>;
6
+ query?: string;
7
+ type?: import("@studiometa/productive-core").ResolvableResourceType;
8
+ }, ctx: import("./types.js").HandlerContext) => Promise<import("./types.js").ToolResult>;
105
9
  //# sourceMappingURL=comments.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"comments.d.ts","sourceRoot":"","sources":["../../src/handlers/comments.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQ9C,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8CzB,CAAC"}
1
+ {"version":3,"file":"comments.d.ts","sourceRoot":"","sources":["../../src/handlers/comments.ts"],"names":[],"mappings":"AAAA;;GAEG;AASH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAQ9C,eAAO,MAAM,cAAc;;;wFA8CzB,CAAC"}
@@ -10,103 +10,7 @@ import type { CompanyArgs } from './types.js';
10
10
  * Supports: list, get, create, update, resolve
11
11
  */
12
12
  export declare const handleCompanies: (action: string, args: CompanyArgs & {
13
- query?: string | undefined;
14
- type?: import("@studiometa/productive-core").ResolvableResourceType | undefined;
15
- }, ctx: import("./types.js").HandlerContext) => Promise<{
16
- [x: string]: unknown;
17
- _meta?: {
18
- [x: string]: unknown;
19
- progressToken?: string | number | undefined;
20
- "io.modelcontextprotocol/related-task"?: {
21
- taskId: string;
22
- } | undefined;
23
- } | undefined;
24
- content: ({
25
- type: "text";
26
- text: string;
27
- annotations?: {
28
- audience?: ("assistant" | "user")[] | undefined;
29
- priority?: number | undefined;
30
- lastModified?: string | undefined;
31
- } | undefined;
32
- _meta?: {
33
- [x: string]: unknown;
34
- } | undefined;
35
- } | {
36
- type: "image";
37
- data: string;
38
- mimeType: string;
39
- annotations?: {
40
- audience?: ("assistant" | "user")[] | undefined;
41
- priority?: number | undefined;
42
- lastModified?: string | undefined;
43
- } | undefined;
44
- _meta?: {
45
- [x: string]: unknown;
46
- } | undefined;
47
- } | {
48
- type: "audio";
49
- data: string;
50
- mimeType: string;
51
- annotations?: {
52
- audience?: ("assistant" | "user")[] | undefined;
53
- priority?: number | undefined;
54
- lastModified?: string | undefined;
55
- } | undefined;
56
- _meta?: {
57
- [x: string]: unknown;
58
- } | undefined;
59
- } | {
60
- uri: string;
61
- description?: string | undefined;
62
- mimeType?: string | undefined;
63
- size?: number | undefined;
64
- annotations?: {
65
- audience?: ("assistant" | "user")[] | undefined;
66
- priority?: number | undefined;
67
- lastModified?: string | undefined;
68
- } | undefined;
69
- _meta?: {
70
- [x: string]: unknown;
71
- } | undefined;
72
- icons?: {
73
- src: string;
74
- mimeType?: string | undefined;
75
- sizes?: string[] | undefined;
76
- theme?: "dark" | "light" | undefined;
77
- }[] | undefined;
78
- name: string;
79
- title?: string | undefined;
80
- type: "resource_link";
81
- } | {
82
- type: "resource";
83
- resource: {
84
- uri: string;
85
- mimeType?: string | undefined;
86
- _meta?: {
87
- [x: string]: unknown;
88
- } | undefined;
89
- text: string;
90
- } | {
91
- uri: string;
92
- mimeType?: string | undefined;
93
- _meta?: {
94
- [x: string]: unknown;
95
- } | undefined;
96
- blob: string;
97
- };
98
- annotations?: {
99
- audience?: ("assistant" | "user")[] | undefined;
100
- priority?: number | undefined;
101
- lastModified?: string | undefined;
102
- } | undefined;
103
- _meta?: {
104
- [x: string]: unknown;
105
- } | undefined;
106
- })[];
107
- structuredContent?: {
108
- [x: string]: unknown;
109
- } | undefined;
110
- isError?: boolean | undefined;
111
- }>;
13
+ query?: string;
14
+ type?: import("@studiometa/productive-core").ResolvableResourceType;
15
+ }, ctx: import("./types.js").HandlerContext) => Promise<import("./types.js").ToolResult>;
112
16
  //# sourceMappingURL=companies.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"companies.d.ts","sourceRoot":"","sources":["../../src/handlers/companies.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAS9C;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmB1B,CAAC"}
1
+ {"version":3,"file":"companies.d.ts","sourceRoot":"","sources":["../../src/handlers/companies.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAS9C;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;wFAmB1B,CAAC"}