@get-technology-inc/jamf-docs-mcp-server 5.1.1 → 5.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.
- package/README.md +18 -2
- package/dist/core/constants/products.d.ts +144 -0
- package/dist/core/constants/products.d.ts.map +1 -1
- package/dist/core/constants/products.js +172 -0
- package/dist/core/constants/products.js.map +1 -1
- package/dist/core/schemas/output.d.ts +9 -0
- package/dist/core/schemas/output.d.ts.map +1 -1
- package/dist/core/schemas/output.js +23 -0
- package/dist/core/schemas/output.js.map +1 -1
- package/dist/core/tools/list-products.d.ts.map +1 -1
- package/dist/core/tools/list-products.js +112 -5
- package/dist/core/tools/list-products.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
An MCP server that gives AI assistants (Claude, Cursor, etc.) direct access to Jamf official documentation. Ask Jamf-related questions and get answers based on the latest docs from learn.jamf.com.
|
|
8
8
|
|
|
9
|
-
**Supported Products
|
|
9
|
+
**Supported Products** (28): Jamf Pro, Jamf School, Jamf Connect, Jamf Protect, Jamf Now, Jamf Safe Internet, Jamf Insights, RapidIdentity, Jamf Trust, Jamf Routines, Self Service+, Jamf App Catalog, Jamf Account, Jamf Security Cloud, Elevate, Composer, Jamf Parent, Jamf Teacher, Jamf Setup and Reset, Jamf Assessment, Title Editor, Jamf Infrastructure Manager, Jamf AD CS Connector, Jamf PKI Proxy, Jamf Migrate, Jamf Remote Assist, Jamf Cloud Distribution Service, Healthcare Listener
|
|
10
10
|
|
|
11
11
|
[中文文件](docs/README.zh-TW.md)
|
|
12
12
|
|
|
@@ -115,7 +115,7 @@ Once configured, just ask your AI assistant:
|
|
|
115
115
|
| `jamf_docs_list_products` | List all supported products, topics, and document type filters |
|
|
116
116
|
| `jamf_docs_search` | Search documentation by keyword with filtering and pagination |
|
|
117
117
|
| `jamf_docs_get_article` | Retrieve full content of a specific documentation article |
|
|
118
|
-
| `jamf_docs_get_toc` | Browse the table of contents for a product |
|
|
118
|
+
| `jamf_docs_get_toc` | Browse the table of contents for a product or any single publication |
|
|
119
119
|
| `jamf_docs_batch_get_articles` | Fetch multiple articles in one call (up to 10 URLs) |
|
|
120
120
|
| `jamf_docs_glossary_lookup` | Look up Jamf terminology and definitions (fuzzy matching) |
|
|
121
121
|
|
|
@@ -266,6 +266,22 @@ Instructs the AI to compare table-of-contents structures and key articles betwee
|
|
|
266
266
|
| `jamf-routines` | Jamf Routines | Automated workflow orchestration for device management |
|
|
267
267
|
| `self-service-plus` | Self Service+ | Next-generation self-service portal for macOS and mobile |
|
|
268
268
|
| `jamf-app-catalog` | Jamf App Catalog | Curated application catalog for managed deployments |
|
|
269
|
+
| `jamf-account` | Jamf Account | Identity, licensing, and platform services portal |
|
|
270
|
+
| `jamf-security-cloud` | Jamf Security Cloud | Cloud security portal for Jamf Connect and Jamf Protect |
|
|
271
|
+
| `elevate` | Elevate | Guided remediation and device health portal |
|
|
272
|
+
| `composer` | Composer | macOS package building and editing |
|
|
273
|
+
| `jamf-parent` | Jamf Parent | Parental device controls for school-issued devices |
|
|
274
|
+
| `jamf-teacher` | Jamf Teacher | Classroom device management for teachers |
|
|
275
|
+
| `jamf-setup-reset` | Jamf Setup and Reset | Device personalisation and wipe-and-reprovision apps |
|
|
276
|
+
| `jamf-assessment` | Jamf Assessment | Locked-down assessment mode for education devices |
|
|
277
|
+
| `title-editor` | Title Editor | Custom software title patch definitions |
|
|
278
|
+
| `jamf-infrastructure-manager` | Jamf Infrastructure Manager | On-premises proxy for LDAP and other internal services |
|
|
279
|
+
| `jamf-adcs-connector` | Jamf AD CS Connector | Certificate issuance via Active Directory Certificate Services |
|
|
280
|
+
| `jamf-pki-proxy` | Jamf PKI Proxy | Proxy for certificate authorities behind a firewall |
|
|
281
|
+
| `jamf-migrate` | Jamf Migrate | Migrating macOS devices between Jamf Pro instances |
|
|
282
|
+
| `jamf-remote-assist` | Jamf Remote Assist | Remote screen sharing and support sessions |
|
|
283
|
+
| `jamf-cloud-distribution-service` | Jamf Cloud Distribution Service | Jamf-hosted package distribution (JCDS) |
|
|
284
|
+
| `healthcare-listener` | Healthcare Listener | Integration with healthcare information systems |
|
|
269
285
|
|
|
270
286
|
## Key Features
|
|
271
287
|
|
|
@@ -121,6 +121,150 @@ export declare const JAMF_PRODUCTS: {
|
|
|
121
121
|
readonly latestVersion: "current";
|
|
122
122
|
readonly versions: readonly ["current"];
|
|
123
123
|
};
|
|
124
|
+
readonly 'jamf-account': {
|
|
125
|
+
readonly id: "jamf-account";
|
|
126
|
+
readonly name: "Jamf Account";
|
|
127
|
+
readonly description: "Identity, licensing, and platform services portal";
|
|
128
|
+
readonly bundleId: "jamf-account-documentation";
|
|
129
|
+
readonly searchLabel: "product-account";
|
|
130
|
+
readonly latestVersion: "current";
|
|
131
|
+
readonly versions: readonly ["current"];
|
|
132
|
+
};
|
|
133
|
+
readonly 'jamf-security-cloud': {
|
|
134
|
+
readonly id: "jamf-security-cloud";
|
|
135
|
+
readonly name: "Jamf Security Cloud";
|
|
136
|
+
readonly description: "Cloud security portal for Jamf Connect and Jamf Protect";
|
|
137
|
+
readonly bundleId: "jamf-security-cloud-setup-guide";
|
|
138
|
+
readonly searchLabel: "product-security";
|
|
139
|
+
readonly latestVersion: "current";
|
|
140
|
+
readonly versions: readonly ["current"];
|
|
141
|
+
};
|
|
142
|
+
readonly elevate: {
|
|
143
|
+
readonly id: "elevate";
|
|
144
|
+
readonly name: "Elevate";
|
|
145
|
+
readonly description: "Guided remediation and device health portal";
|
|
146
|
+
readonly bundleId: "elevate-documentation";
|
|
147
|
+
readonly searchLabel: "product-elevate";
|
|
148
|
+
readonly latestVersion: "current";
|
|
149
|
+
readonly versions: readonly ["current"];
|
|
150
|
+
};
|
|
151
|
+
readonly composer: {
|
|
152
|
+
readonly id: "composer";
|
|
153
|
+
readonly name: "Composer";
|
|
154
|
+
readonly description: "macOS package building and editing";
|
|
155
|
+
readonly bundleId: "composer-user-guide";
|
|
156
|
+
readonly searchLabel: "product-composer";
|
|
157
|
+
readonly latestVersion: "current";
|
|
158
|
+
readonly versions: readonly ["current"];
|
|
159
|
+
};
|
|
160
|
+
readonly 'jamf-parent': {
|
|
161
|
+
readonly id: "jamf-parent";
|
|
162
|
+
readonly name: "Jamf Parent";
|
|
163
|
+
readonly description: "Parental device controls for school-issued devices";
|
|
164
|
+
readonly bundleId: "jamf-parent-configuration-guide";
|
|
165
|
+
readonly searchLabel: "product-parent";
|
|
166
|
+
readonly latestVersion: "current";
|
|
167
|
+
readonly versions: readonly ["current"];
|
|
168
|
+
};
|
|
169
|
+
readonly 'jamf-teacher': {
|
|
170
|
+
readonly id: "jamf-teacher";
|
|
171
|
+
readonly name: "Jamf Teacher";
|
|
172
|
+
readonly description: "Classroom device management for teachers";
|
|
173
|
+
readonly bundleId: "jamf-teacher-configuration-guide";
|
|
174
|
+
readonly searchLabel: "product-teacher";
|
|
175
|
+
readonly latestVersion: "current";
|
|
176
|
+
readonly versions: readonly ["current"];
|
|
177
|
+
};
|
|
178
|
+
readonly 'jamf-setup-reset': {
|
|
179
|
+
readonly id: "jamf-setup-reset";
|
|
180
|
+
readonly name: "Jamf Setup and Reset";
|
|
181
|
+
readonly description: "Device personalisation and wipe-and-reprovision apps";
|
|
182
|
+
readonly bundleId: "jamf-setup-reset-configuration-guide";
|
|
183
|
+
readonly searchLabel: "product-setup";
|
|
184
|
+
readonly latestVersion: "current";
|
|
185
|
+
readonly versions: readonly ["current"];
|
|
186
|
+
};
|
|
187
|
+
readonly 'jamf-assessment': {
|
|
188
|
+
readonly id: "jamf-assessment";
|
|
189
|
+
readonly name: "Jamf Assessment";
|
|
190
|
+
readonly description: "Locked-down assessment mode for education devices";
|
|
191
|
+
readonly bundleId: "jamf-assessment-configuration-guide";
|
|
192
|
+
readonly searchLabel: "product-assessment";
|
|
193
|
+
readonly latestVersion: "current";
|
|
194
|
+
readonly versions: readonly ["current"];
|
|
195
|
+
};
|
|
196
|
+
readonly 'title-editor': {
|
|
197
|
+
readonly id: "title-editor";
|
|
198
|
+
readonly name: "Title Editor";
|
|
199
|
+
readonly description: "Custom software title patch definitions";
|
|
200
|
+
readonly bundleId: "title-editor";
|
|
201
|
+
readonly searchLabel: "product-titleeditor";
|
|
202
|
+
readonly latestVersion: "current";
|
|
203
|
+
readonly versions: readonly ["current"];
|
|
204
|
+
};
|
|
205
|
+
readonly 'jamf-infrastructure-manager': {
|
|
206
|
+
readonly id: "jamf-infrastructure-manager";
|
|
207
|
+
readonly name: "Jamf Infrastructure Manager";
|
|
208
|
+
readonly description: "On-premises proxy for LDAP and other internal services";
|
|
209
|
+
readonly bundleId: "jamf-infrastructure-manager-ldap-proxy-install-guide";
|
|
210
|
+
readonly searchLabel: "product-infrastructuremanager";
|
|
211
|
+
readonly latestVersion: "current";
|
|
212
|
+
readonly versions: readonly ["current"];
|
|
213
|
+
};
|
|
214
|
+
readonly 'jamf-adcs-connector': {
|
|
215
|
+
readonly id: "jamf-adcs-connector";
|
|
216
|
+
readonly name: "Jamf AD CS Connector";
|
|
217
|
+
readonly description: "Certificate issuance via Active Directory Certificate Services";
|
|
218
|
+
readonly bundleId: "technical-paper-integrating-ad-cs";
|
|
219
|
+
readonly searchLabel: "product-adcsconnector";
|
|
220
|
+
readonly latestVersion: "current";
|
|
221
|
+
readonly versions: readonly ["current"];
|
|
222
|
+
};
|
|
223
|
+
readonly 'jamf-pki-proxy': {
|
|
224
|
+
readonly id: "jamf-pki-proxy";
|
|
225
|
+
readonly name: "Jamf PKI Proxy";
|
|
226
|
+
readonly description: "Proxy for certificate authorities behind a firewall";
|
|
227
|
+
readonly bundleId: "jamf-pki-proxy-install-guide";
|
|
228
|
+
readonly searchLabel: "product-pki-proxy";
|
|
229
|
+
readonly latestVersion: "current";
|
|
230
|
+
readonly versions: readonly ["current"];
|
|
231
|
+
};
|
|
232
|
+
readonly 'jamf-migrate': {
|
|
233
|
+
readonly id: "jamf-migrate";
|
|
234
|
+
readonly name: "Jamf Migrate";
|
|
235
|
+
readonly description: "Migrating macOS devices between Jamf Pro instances";
|
|
236
|
+
readonly bundleId: "jamf-migrate-user-guide";
|
|
237
|
+
readonly searchLabel: "product-migrate";
|
|
238
|
+
readonly latestVersion: "current";
|
|
239
|
+
readonly versions: readonly ["current"];
|
|
240
|
+
};
|
|
241
|
+
readonly 'jamf-remote-assist': {
|
|
242
|
+
readonly id: "jamf-remote-assist";
|
|
243
|
+
readonly name: "Jamf Remote Assist";
|
|
244
|
+
readonly description: "Remote screen sharing and support sessions";
|
|
245
|
+
readonly bundleId: "jamf-remote-assist-release-notes";
|
|
246
|
+
readonly searchLabel: "product-remote-assist";
|
|
247
|
+
readonly latestVersion: "current";
|
|
248
|
+
readonly versions: readonly ["current"];
|
|
249
|
+
};
|
|
250
|
+
readonly 'jamf-cloud-distribution-service': {
|
|
251
|
+
readonly id: "jamf-cloud-distribution-service";
|
|
252
|
+
readonly name: "Jamf Cloud Distribution Service";
|
|
253
|
+
readonly description: "Jamf-hosted package distribution (JCDS)";
|
|
254
|
+
readonly bundleId: "jamf-cloud-distribution-service-release-notes";
|
|
255
|
+
readonly searchLabel: "product-jcds";
|
|
256
|
+
readonly latestVersion: "current";
|
|
257
|
+
readonly versions: readonly ["current"];
|
|
258
|
+
};
|
|
259
|
+
readonly 'healthcare-listener': {
|
|
260
|
+
readonly id: "healthcare-listener";
|
|
261
|
+
readonly name: "Healthcare Listener";
|
|
262
|
+
readonly description: "Integration with healthcare information systems";
|
|
263
|
+
readonly bundleId: "healthcare-listener-install-guide";
|
|
264
|
+
readonly searchLabel: "product-healthcarelistener";
|
|
265
|
+
readonly latestVersion: "current";
|
|
266
|
+
readonly versions: readonly ["current"];
|
|
267
|
+
};
|
|
124
268
|
};
|
|
125
269
|
export type ProductId = keyof typeof JAMF_PRODUCTS;
|
|
126
270
|
export declare const PRODUCT_IDS: [string, ...string[]];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"products.d.ts","sourceRoot":"","sources":["../../../src/core/constants/products.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,WAAW,+RAA+R,CAAC;AAGxT,eAAO,MAAM,aAAa,2BAA2B,CAAC;AAEtD,eAAO,MAAM,WAAW,2BAAgB,CAAC;AAEzC;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAElF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAExE;AAGD,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"products.d.ts","sourceRoot":"","sources":["../../../src/core/constants/products.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,eAAO,MAAM,WAAW,+RAA+R,CAAC;AAGxT,eAAO,MAAM,aAAa,2BAA2B,CAAC;AAEtD,eAAO,MAAM,WAAW,2BAAgB,CAAC;AAEzC;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAElF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAExE;AAGD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuShB,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,aAAa,CAAC;AAGnD,eAAO,MAAM,WAAW,EAAiC,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;AAE/E;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,eAAe,QAAyB,CAAC"}
|
|
@@ -141,6 +141,178 @@ export const JAMF_PRODUCTS = {
|
|
|
141
141
|
searchLabel: 'product-appcatalog',
|
|
142
142
|
latestVersion: 'current',
|
|
143
143
|
versions: ['current']
|
|
144
|
+
},
|
|
145
|
+
// ─── Registered from Jamf's own classification ──────────────────────
|
|
146
|
+
//
|
|
147
|
+
// Every row below names something Jamf itself files under `jamf:portal`,
|
|
148
|
+
// `jamf:app` or `jamf:utility` in the map metadata, and carries a
|
|
149
|
+
// `product-*` label whose maps are 100% that entity's. Those two
|
|
150
|
+
// conditions are the test: an entity Jamf does not name is not a product,
|
|
151
|
+
// and a label that spans entities cannot be a search filter.
|
|
152
|
+
//
|
|
153
|
+
// Deliberately absent: FusionID and Manager for Android. Jamf names both
|
|
154
|
+
// as portals but tags their maps with no `product-*` label at all, so a
|
|
155
|
+
// `product` filter for them would match nothing. They are reachable as
|
|
156
|
+
// publications `fluidid-documentation` and `manager-for-android-documentation`.
|
|
157
|
+
'jamf-account': {
|
|
158
|
+
// `product-account` also tags the AI Governance guide and two training
|
|
159
|
+
// video sets. All four are Jamf Account documentation, so one product
|
|
160
|
+
// whose search returns all of them is the honest shape; the other three
|
|
161
|
+
// remain individually browsable on the publication axis.
|
|
162
|
+
id: 'jamf-account',
|
|
163
|
+
name: 'Jamf Account',
|
|
164
|
+
description: 'Identity, licensing, and platform services portal',
|
|
165
|
+
bundleId: 'jamf-account-documentation',
|
|
166
|
+
searchLabel: 'product-account',
|
|
167
|
+
latestVersion: 'current',
|
|
168
|
+
versions: ['current']
|
|
169
|
+
},
|
|
170
|
+
'jamf-security-cloud': {
|
|
171
|
+
id: 'jamf-security-cloud',
|
|
172
|
+
name: 'Jamf Security Cloud',
|
|
173
|
+
description: 'Cloud security portal for Jamf Connect and Jamf Protect',
|
|
174
|
+
bundleId: 'jamf-security-cloud-setup-guide',
|
|
175
|
+
searchLabel: 'product-security',
|
|
176
|
+
latestVersion: 'current',
|
|
177
|
+
versions: ['current']
|
|
178
|
+
},
|
|
179
|
+
'elevate': {
|
|
180
|
+
id: 'elevate',
|
|
181
|
+
name: 'Elevate',
|
|
182
|
+
description: 'Guided remediation and device health portal',
|
|
183
|
+
bundleId: 'elevate-documentation',
|
|
184
|
+
searchLabel: 'product-elevate',
|
|
185
|
+
latestVersion: 'current',
|
|
186
|
+
versions: ['current']
|
|
187
|
+
},
|
|
188
|
+
'composer': {
|
|
189
|
+
id: 'composer',
|
|
190
|
+
name: 'Composer',
|
|
191
|
+
description: 'macOS package building and editing',
|
|
192
|
+
bundleId: 'composer-user-guide',
|
|
193
|
+
searchLabel: 'product-composer',
|
|
194
|
+
latestVersion: 'current',
|
|
195
|
+
versions: ['current']
|
|
196
|
+
},
|
|
197
|
+
'jamf-parent': {
|
|
198
|
+
// `bundleId` is the administrator-facing configuration guide, which is
|
|
199
|
+
// what a Jamf admin asking for "the Jamf Parent docs" wants. The
|
|
200
|
+
// parent-facing guide is the same product's other publication - 11
|
|
201
|
+
// locales, the widest in the whole library and the only source of th-TH -
|
|
202
|
+
// and stays reachable as publication `jamf-parent-guide-for-parents`.
|
|
203
|
+
// `product-parent` covers both, so search spans them either way.
|
|
204
|
+
id: 'jamf-parent',
|
|
205
|
+
name: 'Jamf Parent',
|
|
206
|
+
description: 'Parental device controls for school-issued devices',
|
|
207
|
+
bundleId: 'jamf-parent-configuration-guide',
|
|
208
|
+
searchLabel: 'product-parent',
|
|
209
|
+
latestVersion: 'current',
|
|
210
|
+
versions: ['current']
|
|
211
|
+
},
|
|
212
|
+
'jamf-teacher': {
|
|
213
|
+
// Same split as jamf-parent: admin guide here, `jamf-teacher-guide-for-teachers`
|
|
214
|
+
// on the publication axis.
|
|
215
|
+
id: 'jamf-teacher',
|
|
216
|
+
name: 'Jamf Teacher',
|
|
217
|
+
description: 'Classroom device management for teachers',
|
|
218
|
+
bundleId: 'jamf-teacher-configuration-guide',
|
|
219
|
+
searchLabel: 'product-teacher',
|
|
220
|
+
latestVersion: 'current',
|
|
221
|
+
versions: ['current']
|
|
222
|
+
},
|
|
223
|
+
'jamf-setup-reset': {
|
|
224
|
+
// Two Jamf apps documented in one guide. `product-setup` and
|
|
225
|
+
// `product-reset` select the identical six maps, so either works as the
|
|
226
|
+
// filter and a second product row would only duplicate this one -
|
|
227
|
+
// and would collide on `bundleId`, which the registry invariants forbid.
|
|
228
|
+
id: 'jamf-setup-reset',
|
|
229
|
+
name: 'Jamf Setup and Reset',
|
|
230
|
+
description: 'Device personalisation and wipe-and-reprovision apps',
|
|
231
|
+
bundleId: 'jamf-setup-reset-configuration-guide',
|
|
232
|
+
searchLabel: 'product-setup',
|
|
233
|
+
latestVersion: 'current',
|
|
234
|
+
versions: ['current']
|
|
235
|
+
},
|
|
236
|
+
'jamf-assessment': {
|
|
237
|
+
id: 'jamf-assessment',
|
|
238
|
+
name: 'Jamf Assessment',
|
|
239
|
+
description: 'Locked-down assessment mode for education devices',
|
|
240
|
+
bundleId: 'jamf-assessment-configuration-guide',
|
|
241
|
+
searchLabel: 'product-assessment',
|
|
242
|
+
latestVersion: 'current',
|
|
243
|
+
versions: ['current']
|
|
244
|
+
},
|
|
245
|
+
'title-editor': {
|
|
246
|
+
id: 'title-editor',
|
|
247
|
+
name: 'Title Editor',
|
|
248
|
+
description: 'Custom software title patch definitions',
|
|
249
|
+
bundleId: 'title-editor',
|
|
250
|
+
searchLabel: 'product-titleeditor',
|
|
251
|
+
latestVersion: 'current',
|
|
252
|
+
versions: ['current']
|
|
253
|
+
},
|
|
254
|
+
'jamf-infrastructure-manager': {
|
|
255
|
+
id: 'jamf-infrastructure-manager',
|
|
256
|
+
name: 'Jamf Infrastructure Manager',
|
|
257
|
+
description: 'On-premises proxy for LDAP and other internal services',
|
|
258
|
+
bundleId: 'jamf-infrastructure-manager-ldap-proxy-install-guide',
|
|
259
|
+
searchLabel: 'product-infrastructuremanager',
|
|
260
|
+
latestVersion: 'current',
|
|
261
|
+
versions: ['current']
|
|
262
|
+
},
|
|
263
|
+
'jamf-adcs-connector': {
|
|
264
|
+
id: 'jamf-adcs-connector',
|
|
265
|
+
name: 'Jamf AD CS Connector',
|
|
266
|
+
description: 'Certificate issuance via Active Directory Certificate Services',
|
|
267
|
+
bundleId: 'technical-paper-integrating-ad-cs',
|
|
268
|
+
searchLabel: 'product-adcsconnector',
|
|
269
|
+
latestVersion: 'current',
|
|
270
|
+
versions: ['current']
|
|
271
|
+
},
|
|
272
|
+
'jamf-pki-proxy': {
|
|
273
|
+
id: 'jamf-pki-proxy',
|
|
274
|
+
name: 'Jamf PKI Proxy',
|
|
275
|
+
description: 'Proxy for certificate authorities behind a firewall',
|
|
276
|
+
bundleId: 'jamf-pki-proxy-install-guide',
|
|
277
|
+
searchLabel: 'product-pki-proxy',
|
|
278
|
+
latestVersion: 'current',
|
|
279
|
+
versions: ['current']
|
|
280
|
+
},
|
|
281
|
+
'jamf-migrate': {
|
|
282
|
+
id: 'jamf-migrate',
|
|
283
|
+
name: 'Jamf Migrate',
|
|
284
|
+
description: 'Migrating macOS devices between Jamf Pro instances',
|
|
285
|
+
bundleId: 'jamf-migrate-user-guide',
|
|
286
|
+
searchLabel: 'product-migrate',
|
|
287
|
+
latestVersion: 'current',
|
|
288
|
+
versions: ['current']
|
|
289
|
+
},
|
|
290
|
+
'jamf-remote-assist': {
|
|
291
|
+
id: 'jamf-remote-assist',
|
|
292
|
+
name: 'Jamf Remote Assist',
|
|
293
|
+
description: 'Remote screen sharing and support sessions',
|
|
294
|
+
bundleId: 'jamf-remote-assist-release-notes',
|
|
295
|
+
searchLabel: 'product-remote-assist',
|
|
296
|
+
latestVersion: 'current',
|
|
297
|
+
versions: ['current']
|
|
298
|
+
},
|
|
299
|
+
'jamf-cloud-distribution-service': {
|
|
300
|
+
id: 'jamf-cloud-distribution-service',
|
|
301
|
+
name: 'Jamf Cloud Distribution Service',
|
|
302
|
+
description: 'Jamf-hosted package distribution (JCDS)',
|
|
303
|
+
bundleId: 'jamf-cloud-distribution-service-release-notes',
|
|
304
|
+
searchLabel: 'product-jcds',
|
|
305
|
+
latestVersion: 'current',
|
|
306
|
+
versions: ['current']
|
|
307
|
+
},
|
|
308
|
+
'healthcare-listener': {
|
|
309
|
+
id: 'healthcare-listener',
|
|
310
|
+
name: 'Healthcare Listener',
|
|
311
|
+
description: 'Integration with healthcare information systems',
|
|
312
|
+
bundleId: 'healthcare-listener-install-guide',
|
|
313
|
+
searchLabel: 'product-healthcarelistener',
|
|
314
|
+
latestVersion: 'current',
|
|
315
|
+
versions: ['current']
|
|
144
316
|
}
|
|
145
317
|
};
|
|
146
318
|
// Derived ID array (shared by schemas, completions, etc.)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"products.js","sourceRoot":"","sources":["../../../src/core/constants/products.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"products.js","sourceRoot":"","sources":["../../../src/core/constants/products.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,2DAA2D;AAC3D,MAAM,CAAC,MAAM,WAAW,GAAG,4RAA4R,CAAC;AAExT,YAAY;AACZ,MAAM,CAAC,MAAM,aAAa,GAAG,wBAAwB,CAAC;AACtD,iDAAiD;AACjD,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC;AAEzC;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,QAAgB,EAAE,IAAY;IACxE,OAAO,GAAG,aAAa,IAAI,MAAM,WAAW,QAAQ,SAAS,IAAI,EAAE,CAAC;AACtE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,QAAgB;IAC9D,OAAO,GAAG,MAAM,WAAW,QAAQ,OAAO,CAAC;AAC7C,CAAC;AAED,+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,QAAQ,EAAE,wBAAwB;QAClC,WAAW,EAAE,aAAa,EAAG,6CAA6C;QAC1E,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,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,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,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,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,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,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,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,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,QAAQ,EAAE,6BAA6B;QACvC,4EAA4E;QAC5E,yEAAyE;QACzE,wEAAwE;QACxE,wEAAwE;QACxE,8EAA8E;QAC9E,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,0DAA0D;QACvE,QAAQ,EAAE,iCAAiC;QAC3C,yEAAyE;QACzE,qEAAqE;QACrE,uEAAuE;QACvE,oEAAoE;QACpE,wEAAwE;QACxE,wEAAwE;QACxE,yEAAyE;QACzE,8DAA8D;QAC9D,WAAW,EAAE,qBAAqB;QAClC,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,QAAQ,EAAE,kBAAkB;QAC5B,WAAW,EAAE,oBAAoB;QACjC,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IAED,uEAAuE;IACvE,EAAE;IACF,yEAAyE;IACzE,kEAAkE;IAClE,iEAAiE;IACjE,0EAA0E;IAC1E,6DAA6D;IAC7D,EAAE;IACF,yEAAyE;IACzE,wEAAwE;IACxE,uEAAuE;IACvE,gFAAgF;IAChF,cAAc,EAAE;QACd,uEAAuE;QACvE,sEAAsE;QACtE,wEAAwE;QACxE,yDAAyD;QACzD,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,mDAAmD;QAChE,QAAQ,EAAE,4BAA4B;QACtC,WAAW,EAAE,iBAAiB;QAC9B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,qBAAqB,EAAE;QACrB,EAAE,EAAE,qBAAqB;QACzB,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,yDAAyD;QACtE,QAAQ,EAAE,iCAAiC;QAC3C,WAAW,EAAE,kBAAkB;QAC/B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,SAAS,EAAE;QACT,EAAE,EAAE,SAAS;QACb,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,6CAA6C;QAC1D,QAAQ,EAAE,uBAAuB;QACjC,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,oCAAoC;QACjD,QAAQ,EAAE,qBAAqB;QAC/B,WAAW,EAAE,kBAAkB;QAC/B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,aAAa,EAAE;QACb,uEAAuE;QACvE,iEAAiE;QACjE,mEAAmE;QACnE,0EAA0E;QAC1E,sEAAsE;QACtE,iEAAiE;QACjE,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,oDAAoD;QACjE,QAAQ,EAAE,iCAAiC;QAC3C,WAAW,EAAE,gBAAgB;QAC7B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,cAAc,EAAE;QACd,iFAAiF;QACjF,2BAA2B;QAC3B,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,0CAA0C;QACvD,QAAQ,EAAE,kCAAkC;QAC5C,WAAW,EAAE,iBAAiB;QAC9B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,kBAAkB,EAAE;QAClB,6DAA6D;QAC7D,wEAAwE;QACxE,kEAAkE;QAClE,yEAAyE;QACzE,EAAE,EAAE,kBAAkB;QACtB,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,sDAAsD;QACnE,QAAQ,EAAE,sCAAsC;QAChD,WAAW,EAAE,eAAe;QAC5B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,iBAAiB,EAAE;QACjB,EAAE,EAAE,iBAAiB;QACrB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,mDAAmD;QAChE,QAAQ,EAAE,qCAAqC;QAC/C,WAAW,EAAE,oBAAoB;QACjC,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,cAAc,EAAE;QACd,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,yCAAyC;QACtD,QAAQ,EAAE,cAAc;QACxB,WAAW,EAAE,qBAAqB;QAClC,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,6BAA6B,EAAE;QAC7B,EAAE,EAAE,6BAA6B;QACjC,IAAI,EAAE,6BAA6B;QACnC,WAAW,EAAE,wDAAwD;QACrE,QAAQ,EAAE,sDAAsD;QAChE,WAAW,EAAE,+BAA+B;QAC5C,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,qBAAqB,EAAE;QACrB,EAAE,EAAE,qBAAqB;QACzB,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,gEAAgE;QAC7E,QAAQ,EAAE,mCAAmC;QAC7C,WAAW,EAAE,uBAAuB;QACpC,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,gBAAgB,EAAE;QAChB,EAAE,EAAE,gBAAgB;QACpB,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,qDAAqD;QAClE,QAAQ,EAAE,8BAA8B;QACxC,WAAW,EAAE,mBAAmB;QAChC,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,cAAc,EAAE;QACd,EAAE,EAAE,cAAc;QAClB,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,oDAAoD;QACjE,QAAQ,EAAE,yBAAyB;QACnC,WAAW,EAAE,iBAAiB;QAC9B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,oBAAoB,EAAE;QACpB,EAAE,EAAE,oBAAoB;QACxB,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,4CAA4C;QACzD,QAAQ,EAAE,kCAAkC;QAC5C,WAAW,EAAE,uBAAuB;QACpC,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,iCAAiC,EAAE;QACjC,EAAE,EAAE,iCAAiC;QACrC,IAAI,EAAE,iCAAiC;QACvC,WAAW,EAAE,yCAAyC;QACtD,QAAQ,EAAE,+CAA+C;QACzD,WAAW,EAAE,cAAc;QAC3B,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;IACD,qBAAqB,EAAE;QACrB,EAAE,EAAE,qBAAqB;QACzB,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,iDAAiD;QAC9D,QAAQ,EAAE,mCAAmC;QAC7C,WAAW,EAAE,4BAA4B;QACzC,aAAa,EAAE,SAAS;QACxB,QAAQ,EAAE,CAAC,SAAS,CAAC;KACtB;CACO,CAAC;AAIX,0DAA0D;AAC1D,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAA0B,CAAC;AAE/E;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -16,6 +16,15 @@ export declare const ProductListOutputSchema: z.ZodObject<{
|
|
|
16
16
|
name: z.ZodString;
|
|
17
17
|
keywords: z.ZodArray<z.ZodString>;
|
|
18
18
|
}, z.core.$strip>>;
|
|
19
|
+
publications: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
20
|
+
id: z.ZodString;
|
|
21
|
+
title: z.ZodString;
|
|
22
|
+
portal: z.ZodOptional<z.ZodString>;
|
|
23
|
+
app: z.ZodOptional<z.ZodString>;
|
|
24
|
+
utility: z.ZodOptional<z.ZodString>;
|
|
25
|
+
locales: z.ZodArray<z.ZodString>;
|
|
26
|
+
versions: z.ZodArray<z.ZodString>;
|
|
27
|
+
}, z.core.$strip>>>;
|
|
19
28
|
}, z.core.$strip>;
|
|
20
29
|
export declare const SearchOutputSchema: z.ZodObject<{
|
|
21
30
|
query: z.ZodString;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../src/core/schemas/output.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,uBAAuB
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../../src/core/schemas/output.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;iBAqClC,CAAC;AAEH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA4D7B,CAAC;AAQH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0D9B,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAE1E,eAAO,MAAM,0BAA0B;;;;;;;;;;iBAUrC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;iBAepC,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;iBAqE1B,CAAC"}
|
|
@@ -16,6 +16,29 @@ export const ProductListOutputSchema = z.object({
|
|
|
16
16
|
name: z.string(),
|
|
17
17
|
keywords: z.array(z.string()),
|
|
18
18
|
})),
|
|
19
|
+
/**
|
|
20
|
+
* Every bundle family Fluid Topics publishes — the publication axis.
|
|
21
|
+
*
|
|
22
|
+
* Separate from `products` on purpose. `products` is the curated set the
|
|
23
|
+
* `product` search filter accepts; this is the set `jamf_docs_get_toc`'s
|
|
24
|
+
* `publication` parameter accepts, and it is an order of magnitude larger
|
|
25
|
+
* (97 vs 12) because most Jamf documents share a product label with
|
|
26
|
+
* another document rather than having one of their own. Folding them
|
|
27
|
+
* together would turn "which product" into "which document".
|
|
28
|
+
*
|
|
29
|
+
* Optional: it comes from the live maps registry, so a request that cannot
|
|
30
|
+
* reach it still gets the products and topics it asked for.
|
|
31
|
+
*/
|
|
32
|
+
publications: z.array(z.object({
|
|
33
|
+
id: z.string(),
|
|
34
|
+
title: z.string(),
|
|
35
|
+
/** Jamf's own classification. Fields absent when Jamf assigns none. */
|
|
36
|
+
portal: z.string().optional(),
|
|
37
|
+
app: z.string().optional(),
|
|
38
|
+
utility: z.string().optional(),
|
|
39
|
+
locales: z.array(z.string()),
|
|
40
|
+
versions: z.array(z.string()),
|
|
41
|
+
})).optional(),
|
|
19
42
|
});
|
|
20
43
|
export const SearchOutputSchema = z.object({
|
|
21
44
|
query: z.string(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../../src/core/schemas/output.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QACzB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;QACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;QAC1B,iBAAiB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QACtC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE;KACxB,CAAC,CAAC;IACH,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QACvB,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;QACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;QAChB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KAC9B,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../../src/core/schemas/output.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-products.d.ts","sourceRoot":"","sources":["../../../src/core/tools/list-products.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"list-products.d.ts","sourceRoot":"","sources":["../../../src/core/tools/list-products.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AA4JzD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,aAAa,GAAG,IAAI,CA4KpF"}
|
|
@@ -10,11 +10,19 @@ import { getProductAvailability } from '../services/metadata.js';
|
|
|
10
10
|
import { getSafeErrorMessage } from '../utils/sanitize.js';
|
|
11
11
|
import { reportProgress } from '../utils/progress.js';
|
|
12
12
|
const TOOL_NAME = 'jamf_docs_list_products';
|
|
13
|
-
const TOOL_DESCRIPTION = `List
|
|
13
|
+
const TOOL_DESCRIPTION = `List Jamf products, publications, topics, and documentation versions.
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
Returns two separate catalogues:
|
|
16
|
+
- Products: the IDs the \`product\` filter in jamf_docs_search accepts, and the
|
|
17
|
+
\`product\` parameter of jamf_docs_get_toc. Jamf Pro, Jamf School, Jamf Connect,
|
|
18
|
+
Jamf Protect, Jamf Now, Jamf Safe Internet and more.
|
|
19
|
+
- Publications: every document Jamf publishes - release notes, technical papers,
|
|
20
|
+
courses, evaluation and configuration guides - grouped the way Jamf classifies
|
|
21
|
+
them. Pass one of these IDs as the \`publication\` parameter of jamf_docs_get_toc.
|
|
22
|
+
These are documents, not products, and the search \`product\` filter does not
|
|
23
|
+
take them.
|
|
24
|
+
|
|
25
|
+
Also lists available topic and docType filters for search.
|
|
18
26
|
|
|
19
27
|
Args:
|
|
20
28
|
- maxTokens (number, optional): Maximum tokens in response ${TOKEN_CONFIG.MIN_TOKENS}-${TOKEN_CONFIG.MAX_TOKENS_LIMIT} (default: ${TOKEN_CONFIG.DEFAULT_MAX_TOKENS})
|
|
@@ -25,6 +33,7 @@ Returns:
|
|
|
25
33
|
For JSON format:
|
|
26
34
|
{
|
|
27
35
|
"products": [...],
|
|
36
|
+
"publications": [...], // omitted if the maps registry is unreachable
|
|
28
37
|
"topics": [...],
|
|
29
38
|
"tokenInfo": {
|
|
30
39
|
"tokenCount": number,
|
|
@@ -40,8 +49,96 @@ Examples:
|
|
|
40
49
|
- "What Jamf products are available?" → use this tool
|
|
41
50
|
- "List all Jamf documentation" → use this tool
|
|
42
51
|
- "What topics can I filter by?" → use this tool
|
|
52
|
+
- "Where are the Jamf Pro release notes?" → use this tool, then get_toc with the publication ID
|
|
43
53
|
|
|
44
54
|
Note: This is a read-only operation that does not modify any state.`;
|
|
55
|
+
/**
|
|
56
|
+
* The publication axis, or null when the registry cannot answer.
|
|
57
|
+
*
|
|
58
|
+
* `products` and `topics` are compiled in; this needs a live `/api/khub/maps`.
|
|
59
|
+
* Making the whole tool fail because the newest section could not load would
|
|
60
|
+
* be a regression for every caller that only wanted the product list.
|
|
61
|
+
*/
|
|
62
|
+
async function listPublicationsQuietly(ctx) {
|
|
63
|
+
try {
|
|
64
|
+
const pubs = await ctx.mapsRegistry.listPublications();
|
|
65
|
+
return pubs.map(pub => ({
|
|
66
|
+
id: pub.id,
|
|
67
|
+
title: pub.title,
|
|
68
|
+
...(pub.portal !== '' ? { portal: pub.portal } : {}),
|
|
69
|
+
...(pub.app !== '' ? { app: pub.app } : {}),
|
|
70
|
+
...(pub.utility !== '' ? { utility: pub.utility } : {}),
|
|
71
|
+
locales: pub.locales,
|
|
72
|
+
versions: pub.versions,
|
|
73
|
+
}));
|
|
74
|
+
}
|
|
75
|
+
catch (error) {
|
|
76
|
+
ctx.logger.createLogger('list-products').warning(`Could not list publications: ${String(error)}`);
|
|
77
|
+
return null;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* How Jamf files a publication, as one display string.
|
|
82
|
+
*
|
|
83
|
+
* `jamf:portal`, `jamf:app` and `jamf:utility` are three slots of one
|
|
84
|
+
* taxonomy — a map carries at most one of each and most carry exactly one —
|
|
85
|
+
* so they read as a single answer to "what is this about" rather than three
|
|
86
|
+
* independent fields. Grouping by it is what keeps 97 rows navigable.
|
|
87
|
+
*/
|
|
88
|
+
function classificationOf(pub) {
|
|
89
|
+
return pub.portal ?? pub.app ?? pub.utility ?? 'Other';
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Render the publication axis.
|
|
93
|
+
*
|
|
94
|
+
* Deliberately its own section rather than extra rows under Products: the
|
|
95
|
+
* `product` search filter accepts the twelve above and nothing here, and
|
|
96
|
+
* merging the two lists is exactly the dilution #239 asked to avoid.
|
|
97
|
+
*/
|
|
98
|
+
function renderPublications(publications, mode) {
|
|
99
|
+
if (publications === null || publications.length === 0) {
|
|
100
|
+
return '';
|
|
101
|
+
}
|
|
102
|
+
const groups = new Map();
|
|
103
|
+
for (const pub of publications) {
|
|
104
|
+
const key = classificationOf(pub);
|
|
105
|
+
groups.set(key, [...(groups.get(key) ?? []), pub]);
|
|
106
|
+
}
|
|
107
|
+
// 'Other' last; everything else alphabetical.
|
|
108
|
+
const ordered = [...groups.entries()].sort(([a], [b]) => a === 'Other' ? 1 : b === 'Other' ? -1 : a.localeCompare(b));
|
|
109
|
+
if (mode === OutputMode.COMPACT) {
|
|
110
|
+
let out = `\n## Publications (${String(publications.length)})\n`;
|
|
111
|
+
for (const [group, rows] of ordered) {
|
|
112
|
+
out += `\n### ${group}\n`;
|
|
113
|
+
for (const pub of rows) {
|
|
114
|
+
out += `- \`${pub.id}\`\n`;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
return out;
|
|
118
|
+
}
|
|
119
|
+
let out = '---\n\n';
|
|
120
|
+
out += `# Publications (${String(publications.length)})\n\n`;
|
|
121
|
+
out += 'Every document Jamf publishes, grouped the way Jamf classifies it. ';
|
|
122
|
+
out += 'Pass an ID as the `publication` parameter of `jamf_docs_get_toc` to browse one. ';
|
|
123
|
+
out += 'These are documents, not products — the `product` filter in `jamf_docs_search` ';
|
|
124
|
+
out += 'takes the product IDs above, not these.\n\n';
|
|
125
|
+
for (const [group, rows] of ordered) {
|
|
126
|
+
out += `## ${group}\n\n`;
|
|
127
|
+
for (const pub of rows) {
|
|
128
|
+
const extras = [];
|
|
129
|
+
if (pub.versions.length > 0) {
|
|
130
|
+
extras.push(`${String(pub.versions.length)} versions, latest ${pub.versions[0] ?? ''}`);
|
|
131
|
+
}
|
|
132
|
+
if (pub.locales.length === 1) {
|
|
133
|
+
extras.push(`${pub.locales[0] ?? ''} only`);
|
|
134
|
+
}
|
|
135
|
+
out += `- **\`${pub.id}\`**: ${pub.title}`;
|
|
136
|
+
out += extras.length > 0 ? ` *(${extras.join('; ')})*\n` : '\n';
|
|
137
|
+
}
|
|
138
|
+
out += '\n';
|
|
139
|
+
}
|
|
140
|
+
return out;
|
|
141
|
+
}
|
|
45
142
|
export function registerListProductsTool(server, ctx) {
|
|
46
143
|
server.registerTool(TOOL_NAME, {
|
|
47
144
|
title: 'List Jamf Products',
|
|
@@ -86,7 +183,15 @@ export function registerListProductsTool(server, ctx) {
|
|
|
86
183
|
name: topic.name,
|
|
87
184
|
keywords: topic.keywords
|
|
88
185
|
}));
|
|
89
|
-
|
|
186
|
+
// The publication axis. Best-effort: it needs the live maps registry,
|
|
187
|
+
// and the products and topics above do not, so a registry that cannot
|
|
188
|
+
// answer costs this section rather than the whole response.
|
|
189
|
+
const publications = await listPublicationsQuietly(ctx);
|
|
190
|
+
const structuredContent = {
|
|
191
|
+
products,
|
|
192
|
+
topics,
|
|
193
|
+
...(publications !== null ? { publications } : {}),
|
|
194
|
+
};
|
|
90
195
|
await reportProgress(extra, { progress: 2, total: 3, message: 'Formatting output...' });
|
|
91
196
|
if (params.responseFormat === ResponseFormat.JSON) {
|
|
92
197
|
const jsonData = JSON.stringify(structuredContent);
|
|
@@ -113,6 +218,7 @@ export function registerListProductsTool(server, ctx) {
|
|
|
113
218
|
for (const topic of topics) {
|
|
114
219
|
markdown += `- \`${topic.id}\`: ${topic.name}\n`;
|
|
115
220
|
}
|
|
221
|
+
markdown += renderPublications(publications, OutputMode.COMPACT);
|
|
116
222
|
const compactResult = truncateToTokenLimit(markdown, maxTokens);
|
|
117
223
|
await reportProgress(extra, { progress: 3, total: 3 });
|
|
118
224
|
return {
|
|
@@ -136,6 +242,7 @@ export function registerListProductsTool(server, ctx) {
|
|
|
136
242
|
}
|
|
137
243
|
markdown += '\n';
|
|
138
244
|
}
|
|
245
|
+
markdown += renderPublications(publications, OutputMode.FULL);
|
|
139
246
|
markdown += '---\n\n';
|
|
140
247
|
markdown += '# Available Topics for Filtering\n\n';
|
|
141
248
|
markdown += 'Use these topic IDs with the `topic` parameter in `jamf_docs_search`:\n\n';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-products.js","sourceRoot":"","sources":["../../../src/core/tools/list-products.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAElH,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACjG,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,SAAS,GAAG,yBAAyB,CAAC;AAE5C,MAAM,gBAAgB,GAAG
|
|
1
|
+
{"version":3,"file":"list-products.js","sourceRoot":"","sources":["../../../src/core/tools/list-products.ts"],"names":[],"mappings":"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"}
|