@get-technology-inc/jamf-docs-mcp-server 1.1.0 → 1.3.0

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 (94) hide show
  1. package/README.md +233 -21
  2. package/dist/completions.d.ts +13 -0
  3. package/dist/completions.d.ts.map +1 -0
  4. package/dist/completions.js +31 -0
  5. package/dist/completions.js.map +1 -0
  6. package/dist/constants.d.ts +125 -1
  7. package/dist/constants.d.ts.map +1 -1
  8. package/dist/constants.js +187 -14
  9. package/dist/constants.js.map +1 -1
  10. package/dist/index.js +43 -7
  11. package/dist/index.js.map +1 -1
  12. package/dist/prompts/compare-versions.d.ts +7 -0
  13. package/dist/prompts/compare-versions.d.ts.map +1 -0
  14. package/dist/prompts/compare-versions.js +56 -0
  15. package/dist/prompts/compare-versions.js.map +1 -0
  16. package/dist/prompts/index.d.ts +6 -0
  17. package/dist/prompts/index.d.ts.map +1 -0
  18. package/dist/prompts/index.js +12 -0
  19. package/dist/prompts/index.js.map +1 -0
  20. package/dist/prompts/setup-guide.d.ts +7 -0
  21. package/dist/prompts/setup-guide.d.ts.map +1 -0
  22. package/dist/prompts/setup-guide.js +53 -0
  23. package/dist/prompts/setup-guide.js.map +1 -0
  24. package/dist/prompts/troubleshoot.d.ts +7 -0
  25. package/dist/prompts/troubleshoot.d.ts.map +1 -0
  26. package/dist/prompts/troubleshoot.js +52 -0
  27. package/dist/prompts/troubleshoot.js.map +1 -0
  28. package/dist/resources/index.d.ts.map +1 -1
  29. package/dist/resources/index.js +78 -2
  30. package/dist/resources/index.js.map +1 -1
  31. package/dist/schemas/index.d.ts +10 -7
  32. package/dist/schemas/index.d.ts.map +1 -1
  33. package/dist/schemas/index.js +18 -16
  34. package/dist/schemas/index.js.map +1 -1
  35. package/dist/schemas/output.d.ts +78 -0
  36. package/dist/schemas/output.d.ts.map +1 -0
  37. package/dist/schemas/output.js +78 -0
  38. package/dist/schemas/output.js.map +1 -0
  39. package/dist/services/cache.d.ts +37 -3
  40. package/dist/services/cache.d.ts.map +1 -1
  41. package/dist/services/cache.js +139 -15
  42. package/dist/services/cache.js.map +1 -1
  43. package/dist/services/metadata.d.ts +4 -0
  44. package/dist/services/metadata.d.ts.map +1 -1
  45. package/dist/services/metadata.js +52 -9
  46. package/dist/services/metadata.js.map +1 -1
  47. package/dist/services/scraper.d.ts +9 -1
  48. package/dist/services/scraper.d.ts.map +1 -1
  49. package/dist/services/scraper.js +171 -20
  50. package/dist/services/scraper.js.map +1 -1
  51. package/dist/services/tokenizer.d.ts +5 -0
  52. package/dist/services/tokenizer.d.ts.map +1 -1
  53. package/dist/services/tokenizer.js +20 -5
  54. package/dist/services/tokenizer.js.map +1 -1
  55. package/dist/tools/get-article.d.ts.map +1 -1
  56. package/dist/tools/get-article.js +37 -11
  57. package/dist/tools/get-article.js.map +1 -1
  58. package/dist/tools/get-toc.d.ts.map +1 -1
  59. package/dist/tools/get-toc.js +54 -10
  60. package/dist/tools/get-toc.js.map +1 -1
  61. package/dist/tools/list-products.d.ts.map +1 -1
  62. package/dist/tools/list-products.js +34 -15
  63. package/dist/tools/list-products.js.map +1 -1
  64. package/dist/tools/search.d.ts.map +1 -1
  65. package/dist/tools/search.js +83 -22
  66. package/dist/tools/search.js.map +1 -1
  67. package/dist/transport/http.d.ts +12 -0
  68. package/dist/transport/http.d.ts.map +1 -0
  69. package/dist/transport/http.js +297 -0
  70. package/dist/transport/http.js.map +1 -0
  71. package/dist/transport/index.d.ts +13 -0
  72. package/dist/transport/index.d.ts.map +1 -0
  73. package/dist/transport/index.js +40 -0
  74. package/dist/transport/index.js.map +1 -0
  75. package/dist/types.d.ts +30 -9
  76. package/dist/types.d.ts.map +1 -1
  77. package/dist/types.js.map +1 -1
  78. package/dist/utils/doc-type.d.ts +9 -0
  79. package/dist/utils/doc-type.d.ts.map +1 -0
  80. package/dist/utils/doc-type.js +16 -0
  81. package/dist/utils/doc-type.js.map +1 -0
  82. package/dist/utils/progress.d.ts +13 -0
  83. package/dist/utils/progress.d.ts.map +1 -0
  84. package/dist/utils/progress.js +18 -0
  85. package/dist/utils/progress.js.map +1 -0
  86. package/dist/utils/sanitize.d.ts +30 -0
  87. package/dist/utils/sanitize.d.ts.map +1 -0
  88. package/dist/utils/sanitize.js +57 -0
  89. package/dist/utils/sanitize.js.map +1 -0
  90. package/dist/utils/url.d.ts +11 -0
  91. package/dist/utils/url.d.ts.map +1 -0
  92. package/dist/utils/url.js +23 -0
  93. package/dist/utils/url.js.map +1 -0
  94. package/package.json +11 -4
package/dist/constants.js CHANGED
@@ -4,18 +4,39 @@
4
4
  * Note: Jamf documentation has moved from docs.jamf.com to learn.jamf.com
5
5
  * The new URL structure is: learn.jamf.com/en-US/bundle/{product}-documentation/page/{page}.html
6
6
  */
7
+ import * as path from 'path';
8
+ import { createRequire } from 'module';
7
9
  // Environment variable helpers
8
- function getEnvNumber(key, defaultValue) {
10
+ export function getEnvNumber(key, defaultValue, min, max) {
9
11
  const value = process.env[key];
10
12
  if (value === undefined) {
11
13
  return defaultValue;
12
14
  }
13
15
  const parsed = parseInt(value, 10);
14
- return isNaN(parsed) ? defaultValue : parsed;
16
+ if (isNaN(parsed)) {
17
+ return defaultValue;
18
+ }
19
+ if (min !== undefined && parsed < min) {
20
+ console.error(`[WARNING] ${key}=${parsed} is below minimum ${min}. Using default ${defaultValue}.`);
21
+ return defaultValue;
22
+ }
23
+ if (max !== undefined && parsed > max) {
24
+ console.error(`[WARNING] ${key}=${parsed} exceeds maximum ${max}. Using default ${defaultValue}.`);
25
+ return defaultValue;
26
+ }
27
+ return parsed;
15
28
  }
16
29
  function getEnvString(key, defaultValue) {
17
- return process.env[key] ?? defaultValue;
30
+ const value = process.env[key] ?? defaultValue;
31
+ // Strip CRLF characters to prevent HTTP header injection
32
+ return value.replace(/[\r\n]/g, '');
18
33
  }
34
+ // Server icon (32x32 PNG, document theme, base64 data URI)
35
+ export const SERVER_ICON = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAiUlEQVR4nGNgGAU4QEpKxX9qYpItpwSA9N+58wyOSXYENR0AYw+IA9AdQr4DehgQmEgHYIsGujuA7IRIqQNwOYp8B1ABUOQAOat4svDwcQA1wNB2ACVBPzwcQA0wtB0w4NlwwB1ADTC0HUBu1hs+DqAGGNoOAAbxCVLx8HIANQBZvaMB65qNKAAA5fafYXNsHh0AAAAASUVORK5CYII=';
36
+ // Server metadata (auto-read from package.json)
37
+ const require = createRequire(import.meta.url);
38
+ const pkg = require('../package.json');
39
+ export const SERVER_VERSION = pkg.version;
19
40
  // Base URLs
20
41
  export const DOCS_BASE_URL = 'https://learn.jamf.com';
21
42
  export const DOCS_API_URL = 'https://learn-be.jamf.com';
@@ -60,6 +81,86 @@ export const JAMF_PRODUCTS = {
60
81
  searchLabel: 'product-protect',
61
82
  latestVersion: 'current',
62
83
  versions: ['current']
84
+ },
85
+ 'jamf-now': {
86
+ id: 'jamf-now',
87
+ name: 'Jamf Now',
88
+ description: 'Simple Apple device management for small businesses',
89
+ urlPattern: 'en-US/bundle/jamf-now-documentation/page',
90
+ bundleId: 'jamf-now-documentation',
91
+ searchLabel: 'product-now',
92
+ latestVersion: 'current',
93
+ versions: ['current']
94
+ },
95
+ 'jamf-safe-internet': {
96
+ id: 'jamf-safe-internet',
97
+ name: 'Jamf Safe Internet',
98
+ description: 'Content filtering and web security for education and business',
99
+ urlPattern: 'en-US/bundle/jamf-safe-internet-documentation/page',
100
+ bundleId: 'jamf-safe-internet-documentation',
101
+ searchLabel: 'product-safeinternet',
102
+ latestVersion: 'current',
103
+ versions: ['current']
104
+ },
105
+ 'jamf-insights': {
106
+ id: 'jamf-insights',
107
+ name: 'Jamf Insights',
108
+ description: 'Analytics and reporting platform for Apple fleet',
109
+ urlPattern: 'en-US/bundle/jamf-insights-documentation/page',
110
+ bundleId: 'jamf-insights-documentation',
111
+ searchLabel: 'product-insights',
112
+ latestVersion: 'current',
113
+ versions: ['current']
114
+ },
115
+ 'jamf-rapididentity': {
116
+ id: 'jamf-rapididentity',
117
+ name: 'RapidIdentity',
118
+ description: 'Identity and access management platform',
119
+ urlPattern: 'en-US/bundle/jamf-rapididentity-documentation/page',
120
+ bundleId: 'jamf-rapididentity-documentation',
121
+ searchLabel: 'product-rapididentity',
122
+ latestVersion: 'current',
123
+ versions: ['current']
124
+ },
125
+ 'jamf-trust': {
126
+ id: 'jamf-trust',
127
+ name: 'Jamf Trust',
128
+ description: 'Zero-trust network access for Apple devices',
129
+ urlPattern: 'en-US/bundle/jamf-trust-documentation/page',
130
+ bundleId: 'jamf-trust-documentation',
131
+ searchLabel: 'product-trust',
132
+ latestVersion: 'current',
133
+ versions: ['current']
134
+ },
135
+ 'jamf-routines': {
136
+ id: 'jamf-routines',
137
+ name: 'Jamf Routines',
138
+ description: 'Automated workflow orchestration for device management',
139
+ urlPattern: 'en-US/bundle/jamf-routines-documentation/page',
140
+ bundleId: 'jamf-routines-documentation',
141
+ searchLabel: 'product-routines',
142
+ latestVersion: 'current',
143
+ versions: ['current']
144
+ },
145
+ 'self-service-plus': {
146
+ id: 'self-service-plus',
147
+ name: 'Self Service+',
148
+ description: 'Next-generation self-service portal for macOS',
149
+ urlPattern: 'en-US/bundle/self-service-plus-documentation/page',
150
+ bundleId: 'self-service-plus-documentation',
151
+ searchLabel: 'product-self-service',
152
+ latestVersion: 'current',
153
+ versions: ['current']
154
+ },
155
+ 'jamf-app-catalog': {
156
+ id: 'jamf-app-catalog',
157
+ name: 'Jamf App Catalog',
158
+ description: 'Curated application catalog for managed deployments',
159
+ urlPattern: 'en-US/bundle/jamf-app-catalog/page',
160
+ bundleId: 'jamf-app-catalog',
161
+ searchLabel: 'product-appcatalog',
162
+ latestVersion: 'current',
163
+ versions: ['current']
63
164
  }
64
165
  };
65
166
  // Response format
@@ -75,20 +176,51 @@ export var OutputMode;
75
176
  OutputMode["COMPACT"] = "compact";
76
177
  })(OutputMode || (OutputMode = {}));
77
178
  // Cache settings (in milliseconds) - configurable via environment variables
179
+ // Range: 1 minute to 30 days
180
+ const CACHE_TTL_MIN = 60_000;
181
+ const CACHE_TTL_MAX = 30 * 24 * 60 * 60 * 1000;
78
182
  export const CACHE_TTL = {
79
- SEARCH_RESULTS: getEnvNumber('CACHE_TTL_SEARCH', 30 * 60 * 1000), // 30 minutes
80
- ARTICLE_CONTENT: getEnvNumber('CACHE_TTL_ARTICLE', 24 * 60 * 60 * 1000), // 24 hours
81
- PRODUCT_LIST: getEnvNumber('CACHE_TTL_PRODUCTS', 7 * 24 * 60 * 60 * 1000), // 7 days
82
- TOC: getEnvNumber('CACHE_TTL_TOC', 24 * 60 * 60 * 1000) // 24 hours
183
+ SEARCH_RESULTS: getEnvNumber('CACHE_TTL_SEARCH', 30 * 60 * 1000, CACHE_TTL_MIN, CACHE_TTL_MAX),
184
+ ARTICLE_CONTENT: getEnvNumber('CACHE_TTL_ARTICLE', 24 * 60 * 60 * 1000, CACHE_TTL_MIN, CACHE_TTL_MAX),
185
+ PRODUCT_LIST: getEnvNumber('CACHE_TTL_PRODUCTS', 7 * 24 * 60 * 60 * 1000, CACHE_TTL_MIN, CACHE_TTL_MAX),
186
+ TOC: getEnvNumber('CACHE_TTL_TOC', 24 * 60 * 60 * 1000, CACHE_TTL_MIN, CACHE_TTL_MAX)
83
187
  };
84
- // Cache directory - configurable via environment variable
85
- export const CACHE_DIR = getEnvString('CACHE_DIR', '.cache');
188
+ // Cache memory limits
189
+ export const CACHE_MAX_ENTRIES = getEnvNumber('CACHE_MAX_ENTRIES', 500, 10, 10000);
190
+ // Cache directory - configurable via environment variable with path traversal protection
191
+ const DEFAULT_CACHE_DIR = '.cache';
192
+ // System-sensitive directory prefixes that should not be used as cache directories
193
+ const SENSITIVE_DIR_PREFIXES = ['/etc', '/usr', '/var', '/sys', '/proc', '/dev', '/sbin', '/bin'];
194
+ function getValidatedCacheDir() {
195
+ const raw = getEnvString('CACHE_DIR', DEFAULT_CACHE_DIR);
196
+ const resolved = path.resolve(raw);
197
+ const cwd = process.cwd();
198
+ if (path.isAbsolute(raw)) {
199
+ // Reject absolute paths pointing to system-sensitive directories
200
+ const normalizedResolved = resolved.toLowerCase();
201
+ for (const prefix of SENSITIVE_DIR_PREFIXES) {
202
+ if (normalizedResolved === prefix || normalizedResolved.startsWith(`${prefix}/`)) {
203
+ console.error(`[SECURITY WARNING] CACHE_DIR "${raw}" points to a sensitive system directory. Using default "${DEFAULT_CACHE_DIR}".`);
204
+ return DEFAULT_CACHE_DIR;
205
+ }
206
+ }
207
+ }
208
+ else {
209
+ // Relative paths must resolve within cwd
210
+ if (!resolved.startsWith(cwd)) {
211
+ console.error(`[SECURITY WARNING] CACHE_DIR "${raw}" resolves outside project directory. Using default "${DEFAULT_CACHE_DIR}".`);
212
+ return DEFAULT_CACHE_DIR;
213
+ }
214
+ }
215
+ return raw;
216
+ }
217
+ export const CACHE_DIR = getValidatedCacheDir();
86
218
  // Request settings - configurable via environment variables
87
219
  export const REQUEST_CONFIG = {
88
- TIMEOUT: getEnvNumber('REQUEST_TIMEOUT', 15000), // 15 seconds
89
- MAX_RETRIES: getEnvNumber('MAX_RETRIES', 3),
90
- RETRY_DELAY: getEnvNumber('RETRY_DELAY', 1000), // 1 second
91
- RATE_LIMIT_DELAY: getEnvNumber('RATE_LIMIT_DELAY', 500), // 500ms between requests
220
+ TIMEOUT: getEnvNumber('REQUEST_TIMEOUT', 15000, 1000, 60000), // 15s (1s-60s)
221
+ MAX_RETRIES: getEnvNumber('MAX_RETRIES', 3, 0, 10), // 3 (0-10)
222
+ RETRY_DELAY: getEnvNumber('RETRY_DELAY', 1000, 100, 30000), // 1s (100ms-30s)
223
+ RATE_LIMIT_DELAY: getEnvNumber('RATE_LIMIT_DELAY', 500, 0, 10000), // 500ms (0-10s)
92
224
  USER_AGENT: getEnvString('USER_AGENT', 'JamfDocsMCP/1.0 (https://github.com/GET-Technology-Inc/jamf-docs-mcp-server)')
93
225
  };
94
226
  // Content limits
@@ -101,7 +233,7 @@ export const CONTENT_LIMITS = {
101
233
  // Token configuration (Context7 style)
102
234
  export const TOKEN_CONFIG = {
103
235
  DEFAULT_MAX_TOKENS: 5000,
104
- MAX_TOKENS_LIMIT: 20000,
236
+ MAX_TOKENS_LIMIT: 50000,
105
237
  MIN_TOKENS: 100,
106
238
  CHARS_PER_TOKEN: 4, // Estimation ratio
107
239
  CODE_CHARS_PER_TOKEN: 3 // Code blocks have higher token density
@@ -292,6 +424,47 @@ export const JAMF_TOPICS = {
292
424
  keywords: ['apple school manager', 'asm', 'shared ipad', 'location', 'google classroom']
293
425
  }
294
426
  };
427
+ // Document types for filtering search results by content category
428
+ export const DOC_TYPES = {
429
+ 'documentation': {
430
+ name: 'Documentation',
431
+ description: 'Main product documentation',
432
+ },
433
+ 'release-notes': {
434
+ name: 'Release Notes',
435
+ description: 'Version release notes and changelogs',
436
+ bundlePattern: /-release-notes/,
437
+ },
438
+ 'install-guide': {
439
+ name: 'Installation Guide',
440
+ description: 'Installation and configuration guides',
441
+ bundlePattern: /-install-guide-/,
442
+ },
443
+ 'technical-paper': {
444
+ name: 'Technical Paper',
445
+ description: 'Technical white papers and integration guides',
446
+ bundlePattern: /^technical-paper-/,
447
+ },
448
+ 'configuration-guide': {
449
+ name: 'Configuration Guide',
450
+ description: 'Setup and configuration guides',
451
+ bundlePattern: /-configuration-guide|compliance-benchmarks|blueprints/,
452
+ },
453
+ 'training': {
454
+ name: 'Training',
455
+ description: 'Training materials and video guides',
456
+ bundlePattern: /^training-|^jamf-100-|^jamf-170-/,
457
+ },
458
+ 'technical-article': {
459
+ name: 'Technical Article',
460
+ description: 'Technical articles and knowledge base content',
461
+ bundlePattern: /^technical-article-/,
462
+ },
463
+ };
464
+ // Derived ID arrays (shared by schemas, completions, etc.)
465
+ export const PRODUCT_IDS = Object.keys(JAMF_PRODUCTS);
466
+ export const TOPIC_IDS = Object.keys(JAMF_TOPICS);
467
+ export const DOC_TYPE_IDS = Object.keys(DOC_TYPES);
295
468
  // HTML selectors for learn.jamf.com (React-based site)
296
469
  export const SELECTORS = {
297
470
  // Main content - learn.jamf.com uses semantic article tag
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEvC,+BAA+B;AAC/B,MAAM,UAAU,YAAY,CAC1B,GAAW,EACX,YAAoB,EACpB,GAAY,EACZ,GAAY;IAEZ,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACnC,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAClB,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IAAI,GAAG,KAAK,SAAS,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;QACtC,OAAO,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,MAAM,qBAAqB,GAAG,mBAAmB,YAAY,GAAG,CAAC,CAAC;QACpG,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IAAI,GAAG,KAAK,SAAS,IAAI,MAAM,GAAG,GAAG,EAAE,CAAC;QACtC,OAAO,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,MAAM,oBAAoB,GAAG,mBAAmB,YAAY,GAAG,CAAC,CAAC;QACnG,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,YAAY,CAAC,GAAW,EAAE,YAAoB;IACrD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC;IAC/C,yDAAyD;IACzD,OAAO,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;AACtC,CAAC;AAED,2DAA2D;AAC3D,MAAM,CAAC,MAAM,WAAW,GAAG,4RAA4R,CAAC;AAExT,gDAAgD;AAChD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAwB,CAAC;AAC9D,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC;AAE1C,YAAY;AACZ,MAAM,CAAC,MAAM,aAAa,GAAG,wBAAwB,CAAC;AACtD,MAAM,CAAC,MAAM,YAAY,GAAG,2BAA2B,CAAC;AAExD,+DAA+D;AAC/D,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,UAAU,EAAE;QACV,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,wCAAwC;QACrD,UAAU,EAAE,0CAA0C;QACtD,QAAQ,EAAE,wBAAwB;QAClC,WAAW,EAAE,aAAa,EAAG,kCAAkC;QAC/D,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAE,0CAA0C;KAClE;IACD,aAAa,EAAE;QACb,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,uCAAuC;QACpD,UAAU,EAAE,6CAA6C;QACzD,QAAQ,EAAE,2BAA2B;QACrC,WAAW,EAAE,gBAAgB;QAC7B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,cAAc,EAAE;QACd,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,gCAAgC;QAC7C,UAAU,EAAE,8CAA8C;QAC1D,QAAQ,EAAE,4BAA4B;QACtC,WAAW,EAAE,iBAAiB;QAC9B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,cAAc,EAAE;QACd,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,6BAA6B;QAC1C,UAAU,EAAE,8CAA8C;QAC1D,QAAQ,EAAE,4BAA4B;QACtC,WAAW,EAAE,iBAAiB;QAC9B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,UAAU,EAAE;QACV,EAAE,EAAE,UAAU;QACd,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,qDAAqD;QAClE,UAAU,EAAE,0CAA0C;QACtD,QAAQ,EAAE,wBAAwB;QAClC,WAAW,EAAE,aAAa;QAC1B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,oBAAoB,EAAE;QACpB,EAAE,EAAE,oBAAoB;QACxB,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,+DAA+D;QAC5E,UAAU,EAAE,oDAAoD;QAChE,QAAQ,EAAE,kCAAkC;QAC5C,WAAW,EAAE,sBAAsB;QACnC,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,eAAe,EAAE;QACf,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,kDAAkD;QAC/D,UAAU,EAAE,+CAA+C;QAC3D,QAAQ,EAAE,6BAA6B;QACvC,WAAW,EAAE,kBAAkB;QAC/B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,oBAAoB,EAAE;QACpB,EAAE,EAAE,oBAAoB;QACxB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,yCAAyC;QACtD,UAAU,EAAE,oDAAoD;QAChE,QAAQ,EAAE,kCAAkC;QAC5C,WAAW,EAAE,uBAAuB;QACpC,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,YAAY,EAAE;QACZ,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,6CAA6C;QAC1D,UAAU,EAAE,4CAA4C;QACxD,QAAQ,EAAE,0BAA0B;QACpC,WAAW,EAAE,eAAe;QAC5B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,eAAe,EAAE;QACf,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,wDAAwD;QACrE,UAAU,EAAE,+CAA+C;QAC3D,QAAQ,EAAE,6BAA6B;QACvC,WAAW,EAAE,kBAAkB;QAC/B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,mBAAmB,EAAE;QACnB,EAAE,EAAE,mBAAmB;QACvB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,+CAA+C;QAC5D,UAAU,EAAE,mDAAmD;QAC/D,QAAQ,EAAE,iCAAiC;QAC3C,WAAW,EAAE,sBAAsB;QACnC,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,kBAAkB,EAAE;QAClB,EAAE,EAAE,kBAAkB;QACtB,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,qDAAqD;QAClE,UAAU,EAAE,oCAAoC;QAChD,QAAQ,EAAE,kBAAkB;QAC5B,WAAW,EAAE,oBAAoB;QACjC,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;CACO,CAAC;AAIX,kBAAkB;AAClB,MAAM,CAAN,IAAY,cAGX;AAHD,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,+BAAa,CAAA;AACf,CAAC,EAHW,cAAc,KAAd,cAAc,QAGzB;AAED,6BAA6B;AAC7B,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,2BAAa,CAAA;IACb,iCAAmB,CAAA;AACrB,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB;AAED,4EAA4E;AAC5E,6BAA6B;AAC7B,MAAM,aAAa,GAAG,MAAM,CAAC;AAC7B,MAAM,aAAa,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE/C,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,cAAc,EAAE,YAAY,CAAC,kBAAkB,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,aAAa,CAAC;IAC9F,eAAe,EAAE,YAAY,CAAC,mBAAmB,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,aAAa,CAAC;IACrG,YAAY,EAAE,YAAY,CAAC,oBAAoB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,aAAa,CAAC;IACvG,GAAG,EAAE,YAAY,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,aAAa,CAAC;CAC7E,CAAC;AAEX,sBAAsB;AACtB,MAAM,CAAC,MAAM,iBAAiB,GAAG,YAAY,CAAC,mBAAmB,EAAE,GAAG,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC;AAEnF,yFAAyF;AACzF,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAEnC,mFAAmF;AACnF,MAAM,sBAAsB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AAElG,SAAS,oBAAoB;IAC3B,MAAM,GAAG,GAAG,YAAY,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACnC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAE1B,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACzB,iEAAiE;QACjE,MAAM,kBAAkB,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC;QAClD,KAAK,MAAM,MAAM,IAAI,sBAAsB,EAAE,CAAC;YAC5C,IAAI,kBAAkB,KAAK,MAAM,IAAI,kBAAkB,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjF,OAAO,CAAC,KAAK,CAAC,iCAAiC,GAAG,4DAA4D,iBAAiB,IAAI,CAAC,CAAC;gBACrI,OAAO,iBAAiB,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,yCAAyC;QACzC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,KAAK,CAAC,iCAAiC,GAAG,wDAAwD,iBAAiB,IAAI,CAAC,CAAC;YACjI,OAAO,iBAAiB,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;AAEhD,4DAA4D;AAC5D,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,OAAO,EAAE,YAAY,CAAC,iBAAiB,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,EAAW,eAAe;IACtF,WAAW,EAAE,YAAY,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAoB,WAAW;IACjF,WAAW,EAAE,YAAY,CAAC,aAAa,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,EAAY,iBAAiB;IACvF,gBAAgB,EAAE,YAAY,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,EAAK,gBAAgB;IACtF,UAAU,EAAE,YAAY,CAAC,YAAY,EAAE,8EAA8E,CAAC;CAC9G,CAAC;AAEX,iBAAiB;AACjB,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,kBAAkB,EAAE,EAAE;IACtB,sBAAsB,EAAE,EAAE;IAC1B,kBAAkB,EAAE,MAAM,EAAY,QAAQ;IAC9C,kBAAkB,EAAE,GAAG;CACf,CAAC;AAEX,uCAAuC;AACvC,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,kBAAkB,EAAE,IAAI;IACxB,gBAAgB,EAAE,KAAK;IACvB,UAAU,EAAE,GAAG;IACf,eAAe,EAAE,CAAC,EAAG,mBAAmB;IACxC,oBAAoB,EAAE,CAAC,CAAE,wCAAwC;CACzD,CAAC;AAEX,2BAA2B;AAC3B,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,YAAY,EAAE,CAAC;IACf,iBAAiB,EAAE,EAAE;IACrB,QAAQ,EAAE,GAAG;CACL,CAAC;AAEX,yFAAyF;AACzF,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,kCAAkC;IAClC,YAAY,EAAE;QACZ,IAAI,EAAE,yBAAyB;QAC/B,QAAQ,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,6BAA6B,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,SAAS,EAAE,UAAU,EAAE,mBAAmB,CAAC;KACvJ;IAED,4BAA4B;IAC5B,qBAAqB,EAAE;QACrB,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,CAAC,qBAAqB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,CAAC;KAC1K;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,0BAA0B;QAChC,QAAQ,EAAE,CAAC,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,kBAAkB,CAAC;KACvG;IAED,wBAAwB;IACxB,UAAU,EAAE;QACV,IAAI,EAAE,wBAAwB;QAC9B,QAAQ,EAAE,CAAC,uBAAuB,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,sBAAsB,CAAC;KAClJ;IACD,UAAU,EAAE;QACV,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,SAAS,CAAC;KAC9H;IAED,8BAA8B;IAC9B,UAAU,EAAE;QACV,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,WAAW,CAAC;KAC7F;IACD,SAAS,EAAE;QACT,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,qBAAqB,CAAC;KAC/F;IACD,OAAO,EAAE;QACP,IAAI,EAAE,kBAAkB;QACxB,QAAQ,EAAE,CAAC,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,CAAC;KAChI;IACD,MAAM,EAAE;QACN,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,KAAK,EAAE,iBAAiB,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,CAAC;KACzH;IAED,uBAAuB;IACvB,cAAc,EAAE;QACd,IAAI,EAAE,cAAc;QACpB,QAAQ,EAAE,CAAC,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,CAAC;KAC/F;IAED,mBAAmB;IACnB,UAAU,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,QAAQ,EAAE,CAAC,UAAU,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,cAAc,EAAE,mBAAmB,EAAE,YAAY,CAAC;KACtH;IACD,WAAW,EAAE;QACX,IAAI,EAAE,wBAAwB;QAC9B,QAAQ,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,mBAAmB,CAAC;KACxH;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,CAAC;KAC3G;IAED,6CAA6C;IAC7C,mBAAmB,EAAE;QACnB,IAAI,EAAE,kBAAkB;QACxB,QAAQ,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,OAAO,CAAC;KACrH;IACD,eAAe,EAAE;QACf,IAAI,EAAE,eAAe;QACrB,QAAQ,EAAE,CAAC,cAAc,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,mBAAmB,CAAC;KAC1F;IACD,kBAAkB,EAAE;QAClB,IAAI,EAAE,yBAAyB;QAC/B,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE,kBAAkB,CAAC;KAC9I;IAED,oCAAoC;IACpC,KAAK,EAAE;QACL,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,CAAC;KAC7F;IACD,MAAM,EAAE;QACN,IAAI,EAAE,oBAAoB;QAC1B,QAAQ,EAAE,CAAC,MAAM,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,oBAAoB,CAAC;KACpG;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,oBAAoB;QAC1B,QAAQ,EAAE,CAAC,mBAAmB,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,QAAQ,EAAE,gBAAgB,CAAC;KACtH;IAED,uBAAuB;IACvB,eAAe,EAAE;QACf,IAAI,EAAE,oBAAoB;QAC1B,QAAQ,EAAE,CAAC,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,gBAAgB,CAAC;KACvH;IACD,kBAAkB,EAAE;QAClB,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,CAAC,eAAe,EAAE,UAAU,EAAE,iBAAiB,EAAE,gBAAgB,CAAC;KAC7E;IACD,qBAAqB,EAAE;QACrB,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,CAAC,qBAAqB,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,CAAC;KACxF;IAED,2BAA2B;IAC3B,OAAO,EAAE;QACP,IAAI,EAAE,kBAAkB;QACxB,QAAQ,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,6BAA6B,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,CAAC;KACzH;IACD,YAAY,EAAE;QACZ,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,UAAU,EAAE,cAAc,CAAC;KACrG;IAED,gCAAgC;IAChC,WAAW,EAAE;QACX,IAAI,EAAE,WAAW;QACjB,QAAQ,EAAE,CAAC,WAAW,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,mBAAmB,CAAC;KACtI;IACD,sBAAsB,EAAE;QACtB,IAAI,EAAE,sBAAsB;QAC5B,QAAQ,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,IAAI,EAAE,cAAc,EAAE,qBAAqB,CAAC;KACnG;IACD,SAAS,EAAE;QACT,IAAI,EAAE,oBAAoB;QAC1B,QAAQ,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,iBAAiB,EAAE,eAAe,EAAE,aAAa,EAAE,UAAU,EAAE,iBAAiB,CAAC;KACjH;IACD,SAAS,EAAE;QACT,IAAI,EAAE,gBAAgB;QACtB,QAAQ,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,YAAY,CAAC;KAC3G;IAED,4BAA4B;IAC5B,KAAK,EAAE;QACL,IAAI,EAAE,kBAAkB;QACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,CAAC;KACvG;IACD,SAAS,EAAE;QACT,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,CAAC;KACpE;IACD,UAAU,EAAE;QACV,IAAI,EAAE,0BAA0B;QAChC,QAAQ,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,oBAAoB,EAAE,cAAc,EAAE,OAAO,CAAC;KACrF;IAED,6BAA6B;IAC7B,SAAS,EAAE;QACT,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC;KACvF;IACD,cAAc,EAAE;QACd,IAAI,EAAE,cAAc;QACpB,QAAQ,EAAE,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,SAAS,CAAC;KAChF;IACD,UAAU,EAAE;QACV,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC;KAC9C;IAED,wBAAwB;IACxB,eAAe,EAAE;QACf,IAAI,EAAE,eAAe;QACrB,QAAQ,EAAE,CAAC,eAAe,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,KAAK,EAAE,uBAAuB,CAAC;KAC3G;IAED,gCAAgC;IAChC,cAAc,EAAE;QACd,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,CAAC,QAAQ,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,EAAE,iBAAiB,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,CAAC;KACnI;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,mBAAmB;QACzB,QAAQ,EAAE,CAAC,mBAAmB,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC;KAC9E;IAED,6BAA6B;IAC7B,WAAW,EAAE;QACX,IAAI,EAAE,oBAAoB;QAC1B,QAAQ,EAAE,CAAC,SAAS,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,eAAe,EAAE,WAAW,CAAC;KAC/F;IAED,kCAAkC;IAClC,WAAW,EAAE;QACX,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,WAAW,EAAE,WAAW,CAAC;KAC7H;IACD,oBAAoB,EAAE;QACpB,IAAI,EAAE,qBAAqB;QAC3B,QAAQ,EAAE,CAAC,sBAAsB,EAAE,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,kBAAkB,CAAC;KACzF;CACO,CAAC;AAIX,kEAAkE;AAClE,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,eAAe,EAAE;QACf,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,4BAA4B;KAC1C;IACD,eAAe,EAAE;QACf,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,sCAAsC;QACnD,aAAa,EAAE,gBAAgB;KAChC;IACD,eAAe,EAAE;QACf,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,uCAAuC;QACpD,aAAa,EAAE,iBAAiB;KACjC;IACD,iBAAiB,EAAE;QACjB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,+CAA+C;QAC5D,aAAa,EAAE,mBAAmB;KACnC;IACD,qBAAqB,EAAE;QACrB,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,gCAAgC;QAC7C,aAAa,EAAE,uDAAuD;KACvE;IACD,UAAU,EAAE;QACV,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,qCAAqC;QAClD,aAAa,EAAE,kCAAkC;KAClD;IACD,mBAAmB,EAAE;QACnB,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,+CAA+C;QAC5D,aAAa,EAAE,qBAAqB;KACrC;CACO,CAAC;AAIX,2DAA2D;AAC3D,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAA0B,CAAC;AAC/E,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAA0B,CAAC;AAC3E,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAA0B,CAAC;AAE5E,uDAAuD;AACvD,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,0DAA0D;IAC1D,OAAO,EAAE,mDAAmD;IAC5D,KAAK,EAAE,IAAI;IAEX,wCAAwC;IACxC,UAAU,EAAE,yDAAyD;IACrE,GAAG,EAAE,6DAA6D;IAElE,kBAAkB;IAClB,OAAO,EAAE,8DAA8D;IAEvE,+CAA+C;IAC/C,MAAM,EAAE,oHAAoH;CACpH,CAAC"}
package/dist/index.js CHANGED
@@ -12,10 +12,37 @@ import { registerGetArticleTool } from './tools/get-article.js';
12
12
  import { registerListProductsTool } from './tools/list-products.js';
13
13
  import { registerGetTocTool } from './tools/get-toc.js';
14
14
  import { registerResources } from './resources/index.js';
15
+ import { registerPrompts } from './prompts/index.js';
16
+ import { SERVER_ICON, SERVER_VERSION } from './constants.js';
17
+ import { parseCliArgs } from './transport/index.js';
18
+ // Server instructions for AI clients
19
+ const SERVER_INSTRUCTIONS = `This server provides access to Jamf official documentation (learn.jamf.com) for Jamf Pro, Jamf School, Jamf Connect, and Jamf Protect.
20
+
21
+ ## Tool Usage Order
22
+ 1. Use jamf_docs_list_products to discover available products and versions.
23
+ 2. Use jamf_docs_search to find relevant articles by keyword. Always search before fetching a full article.
24
+ 3. Use jamf_docs_get_article to retrieve full content of a specific article found via search.
25
+ 4. Use jamf_docs_get_toc to browse the table of contents for a product.
26
+
27
+ ## Output Modes
28
+ - Use outputMode: "compact" when browsing or listing results to save tokens.
29
+ - Use outputMode: "full" when reading a specific article in detail.
30
+
31
+ ## Token Management
32
+ - Use the maxTokens parameter to control response size (default: 5000, max: 20000).
33
+ - Start with a lower maxTokens value and increase only when more detail is needed.
34
+ - Use summaryOnly: true on jamf_docs_get_article to get an article outline before fetching full content.
35
+
36
+ ## Product Filtering
37
+ - When the target Jamf product is known, filter by product ID to narrow results: jamf-pro, jamf-school, jamf-connect, jamf-protect.
38
+ - Combine product and topic filters on jamf_docs_search for the most relevant results.`;
15
39
  // Create server instance
16
40
  const server = new McpServer({
17
41
  name: 'jamf-docs-mcp-server',
18
- version: '1.0.0',
42
+ version: SERVER_VERSION,
43
+ icons: [{ src: SERVER_ICON, mimeType: 'image/png', sizes: ['32x32'] }],
44
+ }, {
45
+ instructions: SERVER_INSTRUCTIONS,
19
46
  });
20
47
  // Register all tools
21
48
  registerListProductsTool(server);
@@ -24,14 +51,23 @@ registerGetArticleTool(server);
24
51
  registerGetTocTool(server);
25
52
  // Register resources
26
53
  registerResources(server);
54
+ // Register prompts
55
+ registerPrompts(server);
27
56
  // Start server
28
57
  async function main() {
29
- const transport = new StdioServerTransport();
30
- await server.connect(transport);
31
- // Log to stderr (not stdout, which is used for MCP protocol)
32
- console.error('Jamf Docs MCP Server running on stdio');
33
- console.error('Available tools: jamf_docs_list_products, jamf_docs_search, jamf_docs_get_article, jamf_docs_get_toc');
34
- console.error('Available resources: jamf://products, jamf://topics');
58
+ const args = parseCliArgs(process.argv.slice(2));
59
+ if (args.transport === 'http') {
60
+ const { startHttpServer } = await import('./transport/http.js');
61
+ await startHttpServer(server, args.port, args.host);
62
+ }
63
+ else {
64
+ const transport = new StdioServerTransport();
65
+ await server.connect(transport);
66
+ console.error('Jamf Docs MCP Server running on stdio');
67
+ console.error('Available tools: jamf_docs_list_products, jamf_docs_search, jamf_docs_get_article, jamf_docs_get_toc');
68
+ console.error('Available resources: jamf://products, jamf://topics');
69
+ console.error('Available prompts: jamf_troubleshoot, jamf_setup_guide, jamf_compare_versions');
70
+ }
35
71
  }
36
72
  main().catch((error) => {
37
73
  console.error('Fatal error:', error);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,yBAAyB;AACzB,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,sBAAsB;IAC5B,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,qBAAqB;AACrB,wBAAwB,CAAC,MAAM,CAAC,CAAC;AACjC,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC3B,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAE3B,qBAAqB;AACrB,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAE1B,eAAe;AACf,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,6DAA6D;IAC7D,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;IACvD,OAAO,CAAC,KAAK,CAAC,sGAAsG,CAAC,CAAC;IACtH,OAAO,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;AACvE,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,qCAAqC;AACrC,MAAM,mBAAmB,GAAG;;;;;;;;;;;;;;;;;;;uFAmB2D,CAAC;AAExF,yBAAyB;AACzB,MAAM,MAAM,GAAG,IAAI,SAAS,CAC1B;IACE,IAAI,EAAE,sBAAsB;IAC5B,OAAO,EAAE,cAAc;IACvB,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;CACvE,EACD;IACE,YAAY,EAAE,mBAAmB;CAClC,CACF,CAAC;AAEF,qBAAqB;AACrB,wBAAwB,CAAC,MAAM,CAAC,CAAC;AACjC,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAC3B,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAE3B,qBAAqB;AACrB,iBAAiB,CAAC,MAAM,CAAC,CAAC;AAE1B,mBAAmB;AACnB,eAAe,CAAC,MAAM,CAAC,CAAC;AAExB,eAAe;AACf,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjD,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;QAC9B,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAChE,MAAM,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAEhC,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,sGAAsG,CAAC,CAAC;QACtH,OAAO,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACrE,OAAO,CAAC,KAAK,CAAC,+EAA+E,CAAC,CAAC;IACjG,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * jamf_compare_versions prompt
3
+ * Guides AI through comparing documentation between two versions.
4
+ */
5
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
6
+ export declare function registerCompareVersionsPrompt(server: McpServer): void;
7
+ //# sourceMappingURL=compare-versions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compare-versions.d.ts","sourceRoot":"","sources":["../../src/prompts/compare-versions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAyDrE"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * jamf_compare_versions prompt
3
+ * Guides AI through comparing documentation between two versions.
4
+ */
5
+ import { z } from 'zod';
6
+ import { completable } from '@modelcontextprotocol/sdk/server/completable.js';
7
+ import { completeProduct } from '../completions.js';
8
+ export function registerCompareVersionsPrompt(server) {
9
+ server.registerPrompt('jamf_compare_versions', {
10
+ title: 'Compare Jamf Versions',
11
+ description: 'Compare documentation between two versions of a Jamf product to identify changes',
12
+ argsSchema: {
13
+ product: completable(z.string().max(100).describe('Jamf product ID (jamf-pro, jamf-school, jamf-connect, jamf-protect)'), completeProduct),
14
+ version_a: z.string().max(50).describe('First version to compare (e.g., "11.5.0")'),
15
+ version_b: z.string().max(50).describe('Second version to compare (e.g., "11.12.0")'),
16
+ },
17
+ }, ({ product, version_a: versionA, version_b: versionB }) => {
18
+ return {
19
+ messages: [
20
+ {
21
+ role: 'user',
22
+ content: {
23
+ type: 'text',
24
+ text: `I need to compare what changed between version ${versionA} and ${versionB} of ${product}.
25
+
26
+ Please follow these steps using the Jamf documentation tools:
27
+
28
+ 1. **Get the table of contents for both versions**
29
+ Use \`jamf_docs_get_toc\` with product="${product}" and version="${versionA}", then again with version="${versionB}".
30
+
31
+ 2. **Identify structural differences**
32
+ Compare the two TOC structures to find:
33
+ - New sections added in ${versionB}
34
+ - Sections removed from ${versionA}
35
+ - Sections that may have been renamed or reorganized
36
+
37
+ 3. **Review key changed articles**
38
+ For significant changes, use \`jamf_docs_get_article\` with \`summaryOnly: true\` to understand what's new or different.
39
+
40
+ 4. **Summarize the changes**
41
+ Provide a structured comparison:
42
+ - New features/capabilities in ${versionB}
43
+ - Removed or deprecated features
44
+ - Notable changes to existing functionality
45
+ - Migration considerations
46
+
47
+ Product: ${product}
48
+ Version A: ${versionA}
49
+ Version B: ${versionB}`,
50
+ },
51
+ },
52
+ ],
53
+ };
54
+ });
55
+ }
56
+ //# sourceMappingURL=compare-versions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compare-versions.js","sourceRoot":"","sources":["../../src/prompts/compare-versions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,UAAU,6BAA6B,CAAC,MAAiB;IAC7D,MAAM,CAAC,cAAc,CACnB,uBAAuB,EACvB;QACE,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EACT,kFAAkF;QACpF,UAAU,EAAE;YACV,OAAO,EAAE,WAAW,CAClB,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAC1B,qEAAqE,CACtE,EACD,eAAe,CAChB;YACD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;YACnF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,6CAA6C,CAAC;SACtF;KACF,EACD,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;QACxD,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAe;oBACrB,OAAO,EAAE;wBACP,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,kDAAkD,QAAQ,QAAQ,QAAQ,OAAO,OAAO;;;;;6CAK/D,OAAO,kBAAkB,QAAQ,+BAA+B,QAAQ;;;;6BAIxF,QAAQ;6BACR,QAAQ;;;;;;;;oCAQD,QAAQ;;;;;WAKjC,OAAO;aACL,QAAQ;aACR,QAAQ,EAAE;qBACV;iBACF;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * MCP Prompt registration
3
+ */
4
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
5
+ export declare function registerPrompts(server: McpServer): void;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAIvD"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * MCP Prompt registration
3
+ */
4
+ import { registerTroubleshootPrompt } from './troubleshoot.js';
5
+ import { registerSetupGuidePrompt } from './setup-guide.js';
6
+ import { registerCompareVersionsPrompt } from './compare-versions.js';
7
+ export function registerPrompts(server) {
8
+ registerTroubleshootPrompt(server);
9
+ registerSetupGuidePrompt(server);
10
+ registerCompareVersionsPrompt(server);
11
+ }
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/prompts/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,uBAAuB,CAAC;AAEtE,MAAM,UAAU,eAAe,CAAC,MAAiB;IAC/C,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACnC,wBAAwB,CAAC,MAAM,CAAC,CAAC;IACjC,6BAA6B,CAAC,MAAM,CAAC,CAAC;AACxC,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * jamf_setup_guide prompt
3
+ * Guides AI through creating a setup guide from Jamf documentation.
4
+ */
5
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
6
+ export declare function registerSetupGuidePrompt(server: McpServer): void;
7
+ //# sourceMappingURL=setup-guide.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-guide.d.ts","sourceRoot":"","sources":["../../src/prompts/setup-guide.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAsDhE"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * jamf_setup_guide prompt
3
+ * Guides AI through creating a setup guide from Jamf documentation.
4
+ */
5
+ import { z } from 'zod';
6
+ import { completable } from '@modelcontextprotocol/sdk/server/completable.js';
7
+ import { completeProduct } from '../completions.js';
8
+ export function registerSetupGuidePrompt(server) {
9
+ server.registerPrompt('jamf_setup_guide', {
10
+ title: 'Jamf Setup Guide',
11
+ description: 'Generate a step-by-step setup guide for a Jamf feature using official documentation',
12
+ argsSchema: {
13
+ feature: z.string().max(2000).describe('The feature or capability to set up'),
14
+ product: completable(z.string().optional().describe('Jamf product ID (jamf-pro, jamf-school, jamf-connect, jamf-protect)'), completeProduct),
15
+ },
16
+ }, ({ feature, product }) => {
17
+ const productFilter = product !== undefined && product !== ''
18
+ ? `, product: "${product}"`
19
+ : '';
20
+ return {
21
+ messages: [
22
+ {
23
+ role: 'user',
24
+ content: {
25
+ type: 'text',
26
+ text: `I need a step-by-step setup guide for: "${feature}"
27
+
28
+ Please follow these steps using the Jamf documentation tools:
29
+
30
+ 1. **Search for setup documentation**
31
+ Use \`jamf_docs_search\` with query related to "${feature}" setup/configuration${productFilter !== '' ? ` and filter by ${productFilter}` : ''}.
32
+
33
+ 2. **Find the primary setup article**
34
+ Review search results and use \`jamf_docs_get_article\` with \`summaryOnly: true\` to identify the main setup/configuration article.
35
+
36
+ 3. **Extract detailed steps**
37
+ Use \`jamf_docs_get_article\` to get the full content of the primary article. If it's long, use the \`section\` parameter to fetch specific sections like "Prerequisites" or "Configuration".
38
+
39
+ 4. **Compile the setup guide**
40
+ Based on the documentation, provide:
41
+ - Prerequisites and requirements
42
+ - Step-by-step setup instructions
43
+ - Configuration options and recommendations
44
+ - Verification steps to confirm successful setup
45
+
46
+ Feature: ${feature}${product !== undefined && product !== '' ? `\nProduct: ${product}` : ''}`,
47
+ },
48
+ },
49
+ ],
50
+ };
51
+ });
52
+ }
53
+ //# sourceMappingURL=setup-guide.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-guide.js","sourceRoot":"","sources":["../../src/prompts/setup-guide.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,UAAU,wBAAwB,CAAC,MAAiB;IACxD,MAAM,CAAC,cAAc,CACnB,kBAAkB,EAClB;QACE,KAAK,EAAE,kBAAkB;QACzB,WAAW,EACT,qFAAqF;QACvF,UAAU,EAAE;YACV,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,qCAAqC,CAAC;YAC7E,OAAO,EAAE,WAAW,CAClB,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC5B,qEAAqE,CACtE,EACD,eAAe,CAChB;SACF;KACF,EACD,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;QACvB,MAAM,aAAa,GAAG,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE;YAC3D,CAAC,CAAC,eAAe,OAAO,GAAG;YAC3B,CAAC,CAAC,EAAE,CAAC;QACP,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAe;oBACrB,OAAO,EAAE;wBACP,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,2CAA2C,OAAO;;;;;qDAKjB,OAAO,wBAAwB,aAAa,KAAK,EAAE,CAAC,CAAC,CAAC,kBAAkB,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;;WAetI,OAAO,GAAG,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;qBAChF;iBACF;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * jamf_troubleshoot prompt
3
+ * Guides AI through a troubleshooting workflow using Jamf documentation.
4
+ */
5
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
6
+ export declare function registerTroubleshootPrompt(server: McpServer): void;
7
+ //# sourceMappingURL=troubleshoot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"troubleshoot.d.ts","sourceRoot":"","sources":["../../src/prompts/troubleshoot.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAKzE,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAoDlE"}
@@ -0,0 +1,52 @@
1
+ /**
2
+ * jamf_troubleshoot prompt
3
+ * Guides AI through a troubleshooting workflow using Jamf documentation.
4
+ */
5
+ import { z } from 'zod';
6
+ import { completable } from '@modelcontextprotocol/sdk/server/completable.js';
7
+ import { completeProduct } from '../completions.js';
8
+ export function registerTroubleshootPrompt(server) {
9
+ server.registerPrompt('jamf_troubleshoot', {
10
+ title: 'Troubleshoot Jamf Issue',
11
+ description: 'Guide through troubleshooting a Jamf issue using official documentation',
12
+ argsSchema: {
13
+ problem: z.string().max(2000).describe('Description of the issue to troubleshoot'),
14
+ product: completable(z.string().optional().describe('Jamf product ID (jamf-pro, jamf-school, jamf-connect, jamf-protect)'), completeProduct),
15
+ },
16
+ }, ({ problem, product }) => {
17
+ const productFilter = product !== undefined && product !== ''
18
+ ? `, product: "${product}"`
19
+ : '';
20
+ return {
21
+ messages: [
22
+ {
23
+ role: 'user',
24
+ content: {
25
+ type: 'text',
26
+ text: `I need help troubleshooting a Jamf issue: "${problem}"
27
+
28
+ Please follow these steps using the Jamf documentation tools:
29
+
30
+ 1. **Search for relevant documentation**
31
+ Use \`jamf_docs_search\` with query based on the problem description${productFilter !== '' ? ` and filter by ${productFilter}` : ''}.
32
+
33
+ 2. **Review the most relevant articles**
34
+ For each promising search result, use \`jamf_docs_get_article\` with \`summaryOnly: true\` to quickly assess relevance.
35
+
36
+ 3. **Deep dive into the solution**
37
+ For the most relevant article(s), use \`jamf_docs_get_article\` with the full content to find specific troubleshooting steps.
38
+
39
+ 4. **Provide a structured diagnosis**
40
+ Based on the documentation, provide:
41
+ - Likely root cause(s)
42
+ - Step-by-step resolution
43
+ - Related articles for further reference
44
+
45
+ Problem: ${problem}${product !== undefined && product !== '' ? `\nProduct: ${product}` : ''}`,
46
+ },
47
+ },
48
+ ],
49
+ };
50
+ });
51
+ }
52
+ //# sourceMappingURL=troubleshoot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"troubleshoot.js","sourceRoot":"","sources":["../../src/prompts/troubleshoot.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,UAAU,0BAA0B,CAAC,MAAiB;IAC1D,MAAM,CAAC,cAAc,CACnB,mBAAmB,EACnB;QACE,KAAK,EAAE,yBAAyB;QAChC,WAAW,EAAE,yEAAyE;QACtF,UAAU,EAAE;YACV,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,0CAA0C,CAAC;YAClF,OAAO,EAAE,WAAW,CAClB,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC5B,qEAAqE,CACtE,EACD,eAAe,CAChB;SACF;KACF,EACD,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE;QACvB,MAAM,aAAa,GAAG,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE;YAC3D,CAAC,CAAC,eAAe,OAAO,GAAG;YAC3B,CAAC,CAAC,EAAE,CAAC;QACP,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAe;oBACrB,OAAO,EAAE;wBACP,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,8CAA8C,OAAO;;;;;yEAKA,aAAa,KAAK,EAAE,CAAC,CAAC,CAAC,kBAAkB,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;WAc3H,OAAO,GAAG,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;qBAChF;iBACF;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAMzE;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA4CzD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resources/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgCzE;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAoHzD"}