Skip to main content
Glama
GET-Technology-Inc

Jamf Docs MCP Server

Batch Get Jamf Documentation Articles

jamf_docs_batch_get_articles
Read-onlyIdempotent

Fetch up to 10 Jamf documentation articles in one parallel request to compare pages or gather bulk research, with per-article success or failure reporting.

Instructions

Retrieve multiple Jamf documentation articles in a single request.

Fetches up to 10 articles in parallel with concurrency control. Useful for comparing articles, gathering information from multiple pages, or bulk research.

Args:

  • urls (string[], required): Array of 1-10 https:// article URLs on learn.jamf.com, docs.jamf.com, concepts.jamf.com, support.jamf.com, each at most 2048 characters. Any other URL fails as its own per-article error, and a longer one fails the call's input validation

  • concurrency (number, optional): Max parallel requests 1-5 (default: 3)

  • language (string, optional): Documentation language/locale. Overrides the locale in each URL, which is used when this is omitted. A learn.jamf.com publication Jamf does not publish in it is served in en-US, and a concepts.jamf.com or support.jamf.com page with no edition in it as its URL names it, both with a note; each result's contentLocale says which language was served

  • maxTokens (number, optional): Total token budget across all articles 100-50000 (default: 5000). Distributed evenly.

  • outputMode ('full' | 'compact'): Output detail level (default: 'full'). Use 'compact' for brief output.

  • responseFormat ('markdown' | 'json'): Output format (default: 'markdown')

Returns: An array of article results. Each article independently succeeds or fails. For JSON format, returns a BatchResponse object with results, summary, and tokenInfo. A result carries contentLocale, the language its content is in, where the article says.

Examples:

Note: Token budget is split evenly across articles. Use higher maxTokens for more articles. A note on an article (such as one about language) counts toward its share. Partial failures are reported per-article without failing the entire batch.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlsYesArray of Jamf documentation article URLs (1-10), each at most 2048 characters
languageNoDocumentation language/locale. Overrides the locale in the article URL, which is used when this is omitted. A learn.jamf.com publication Jamf does not publish in it is served in en-US, and a concepts.jamf.com or support.jamf.com page with no edition in it as the URL names it, both with a note; contentLocale says which language was served. Options: en-US, ja-JP, zh-TW, de-DE, es-ES, fr-FR, nl-NL, th-TH, it-IT, pt-BR, zh-CN
maxTokensNoTotal token budget across all articles (100-50000, default: 5000)
outputModeNoOutput detail level: "full" for detailed output or "compact" for brief outputfull
concurrencyNoMaximum parallel requests (1-5, default: 3)
responseFormatNoOutput format: "markdown" for human-readable or "json" for machine-readablemarkdown

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultsYes
summaryYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv6.0.14
    • changedInput schema / properties / language / description
      Previous value: -"Documentation language/locale. Overrides the locale in the article URL, which is used when this is omitted. Has no effect on concepts.jamf.com or support.jamf.com URLs. Options: en-US, ja-JP, zh-TW, de-DE, es-ES, fr-FR, nl-NL, th-TH, it-IT, pt-BR, zh-CN"New value: +"Documentation language/locale. Overrides the locale in the article URL, which is used when this is omitted. A learn.jamf.com publication Jamf does not publish in it is served in en-US, and a concepts.jamf.com or support.jamf.com page with no edition in it as the URL names it, both with a note; contentLocale says which language was served. Options: en-US, ja-JP, zh-TW, de-DE, es-ES, fr-FR, nl-NL, th-TH, it-IT, pt-BR, zh-CN"
    • changedInput schema / properties / urls / description
      Previous value: -"Array of Jamf documentation article URLs (1-10)"New value: +"Array of Jamf documentation article URLs (1-10), each at most 2048 characters"
    • addedInput schema / properties / urls / items / maxLength
      Added value: +2048
    • addedOutput schema / properties / results / items / properties / contentLocale
      Added value: +{
      +  "type": "string"
      +}
  2. Changed1 schema field changedv6.0.11
    • changedInput schema / properties / language / description
      Previous value: -"Documentation language/locale (default: en-US). Options: en-US, ja-JP, zh-TW, de-DE, es-ES, fr-FR, nl-NL, th-TH, it-IT, pt-BR, zh-CN"New value: +"Documentation language/locale. Overrides the locale in the article URL, which is used when this is omitted. Has no effect on concepts.jamf.com or support.jamf.com URLs. Options: en-US, ja-JP, zh-TW, de-DE, es-ES, fr-FR, nl-NL, th-TH, it-IT, pt-BR, zh-CN"
  3. Changed2 schema fields changedv5.10.1
    • changedInput schema / properties / language / description
      Previous value: -"Documentation language/locale (default: en-US). Options: en-US, ja-JP, zh-TW, de-DE, es-ES, fr-FR, nl-NL, th-TH"New value: +"Documentation language/locale (default: en-US). Options: en-US, ja-JP, zh-TW, de-DE, es-ES, fr-FR, nl-NL, th-TH, it-IT, pt-BR, zh-CN"
    • changedInput schema / properties / language / enum
      Previous value: -[
      -  "en-US",
      -  "ja-JP",
      -  "zh-TW",
      -  "de-DE",
      -  "es-ES",
      -  "fr-FR",
      -  "nl-NL",
      -  "th-TH"
      -]New value: +[
      +  "en-US",
      +  "ja-JP",
      +  "zh-TW",
      +  "de-DE",
      +  "es-ES",
      +  "fr-FR",
      +  "nl-NL",
      +  "th-TH",
      +  "it-IT",
      +  "pt-BR",
      +  "zh-CN"
      +]
  4. Changed2 schema fields changedv4.0.6
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
    • changedOutput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  5. First observedv3.0.25

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations cover the safety profile (readOnly, idempotent, non-destructive, openWorld), and the description adds substantial behavior beyond that: per-article independent success/failure, partial failures not aborting the batch, concurrency control limits, token budget split evenly across articles, and locale fallback to en-US with a note. This is rich operational context an agent could not get from the structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the one-line purpose, then organized into Args/Returns/Examples/Notes, with zero filler sentences and the key constraint (token budget split) called out last. Slightly verbose because the Args block restates ranges already present in the schema, but the added notes justify the length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 6-parameter batch tool with an output schema, the description covers everything an agent needs to call it correctly: URL domain restrictions, concurrency, budget behavior, locale fallback, partial-failure reporting, and response format. Return values are described but the output schema already handles them, so nothing is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is already 100%, so the baseline would be 3, but the description goes further: it explains that maxTokens is distributed evenly across articles (not per-article), that language overrides the URL locale, and that out-of-domain URLs fail as their own per-article error while over-length URLs fail input validation. Those are semantics the schema does not convey.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Retrieve multiple Jamf documentation articles in a single request') and the batch scope, which cleanly separates it from the sibling jamf_docs_get_article for single articles. An agent can route on the plural/batch distinction without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear intended contexts ('comparing articles, gathering information from multiple pages, or bulk research'), which is genuine when-to-use guidance. It does not explicitly name jamf_docs_get_article as the single-article alternative, so selection between the two is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.