Skip to main content
Glama
Apple Docs 2.0 MCP

Apple Docs 2.0 MCP

List Technologies

list_technologies
Read-only

Browse Apple's framework and technology catalog to find frameworks by category, language or tag, get exact names and links, and see which are beta.

Instructions

Browse four of Apple's catalogs. catalog "technologies": every Apple framework and technology, grouped by Apple's categories, each with its link, languages, tags and Apple's one-line summary, beta ones marked; use it to see which frameworks fit a task (category "Machine learning") or to get a framework's exact name and link. catalog "samples": Apple's Sample Code Library, each sample with its framework, sections and summary, featured ones first, then by the library's sections ("WWDC26" holds that year's); to find a sample by what it does, search_apple_docs with type "sample" ranks every sample on the site, including ones this library leaves out. catalog "updates": Apple's Updates page as links with summaries, each framework's updates page ("SwiftUI updates"), the release notes of each OS, Xcode and Safari, and each past WWDC's What's new page; use it to find what changed in a framework or a release. catalog "overviews": Apple's Technology Overviews, guides to which technologies to use for a goal (app design and UI, Liquid Glass, games, AI and machine learning and more), the collections with their summaries and the articles in each; use it to choose an approach before choosing APIs. Read any entry with get_apple_doc_content. The technologies and samples answers also name a TSV of the whole catalog, one entry a line, for a grep the parameters can't make.

Input Schema

NameRequiredDescriptionDefault
limitNoMost entries to show, in all; if left out, 200 technologies, 50 samples, 50 updates, 50 overview entries.
catalogNo"technologies": Apple's frameworks and technologies; "samples": Apple's Sample Code Library; "updates": Apple's Updates page; "overviews": Apple's Technology Overviews.technologies
categoryNoKeeps one part of the catalog, in any case: technologies, the ones whose category or one of whose tags contains it ("Machine learning" finds Core ML, Create ML and Vision); samples, a library section, by any part of its name ("WWDC26" lists that year's samples); updates, a section of the page, by any part of its title ("Release notes"); overviews, one collection, by its whole title or the last part of its link. Technologies, updates and overviews answer a value they lack with the ones they have.
languageNotechnologies only: keeps the technologies available in Swift ("swift") or Objective-C ("occ").
frameworkNosamples only: keeps the samples whose framework, title or link names this framework, in any spelling ("SwiftUI", "storekit", "Core ML").
technologyNoupdates only: keeps the entries whose framework, title or summary contains this name ("SwiftUI"), in any case.
includeBetaNofalse leaves out beta technologies, samples or updates.
searchQueryNosamples: words that must all appear, in any case, in a sample's title, sections, framework, link or summary ("SwiftData widget"); the list keeps the library's order. updates: keeps the entries whose title or summary contains this text, in any case. overviews: keeps the collections and articles whose title or link contains this text, in any case; a collection's summary counts too.
includeSubcategoriesNooverviews only: false lists only the collections, without their articles.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changedv0.1.1
    • addedInput schema / properties / catalog
      Added value: +{
      +  "default": "technologies",
      +  "description": "\"technologies\": Apple's frameworks and technologies; \"samples\": Apple's Sample Code Library; \"updates\": Apple's Updates page; \"overviews\": Apple's Technology Overviews.",
      +  "enum": [
      +    "technologies",
      +    "samples",
      +    "updates",
      +    "overviews"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / category / description
      Previous value: -"Keeps the categories whose name contains this or, failing that, the technologies with a tag that contains it (the Categories line of each), in any case: \"Machine learning\" finds Core ML, Create ML and Vision. Popular: \"App frameworks\" (SwiftUI, UIKit), \"Graphics and games\" (Metal, SpriteKit), \"App services\" (CloudKit, StoreKit), \"Media\" (AVFoundation), \"System\" (Foundation). Leave empty to see all categories."New value: +"Keeps one part of the catalog, in any case: technologies, the ones whose category or one of whose tags contains it (\"Machine learning\" finds Core ML, Create ML and Vision); samples, a library section, by any part of its name (\"WWDC26\" lists that year's samples); updates, a section of the page, by any part of its title (\"Release notes\"); overviews, one collection, by its whole title or the last part of its link. Technologies, updates and overviews answer a value they lack with the ones they have."
    • addedInput schema / properties / framework
      Added value: +{
      +  "description": "samples only: keeps the samples whose framework, title or link names this framework, in any spelling (\"SwiftUI\", \"storekit\", \"Core ML\").",
      +  "type": "string"
      +}
    • changedInput schema / properties / includeBeta / description
      Previous value: -"Include beta/preview technologies. Set to false to see only stable frameworks. Default: true"New value: +"false leaves out beta technologies, samples or updates."
    • addedInput schema / properties / includeSubcategories
      Added value: +{
      +  "default": true,
      +  "description": "overviews only: false lists only the collections, without their articles.",
      +  "type": "boolean"
      +}
    • changedInput schema / properties / language / description
      Previous value: -"Filter by language support. \"swift\" for Swift-compatible frameworks, \"occ\" for Objective-C. Leave empty for all."New value: +"technologies only: keeps the technologies available in Swift (\"swift\") or Objective-C (\"occ\")."
    • removedInput schema / properties / limit / default
      Removed value: -200
    • changedInput schema / properties / limit / description
      Previous value: -"Max results per category. Useful for quick overviews. Default: 200"New value: +"Most entries to show, in all; if left out, 200 technologies, 50 samples, 50 updates, 50 overview entries."
    • addedInput schema / properties / searchQuery
      Added value: +{
      +  "description": "samples: words that must all appear, in any case, in a sample's title, sections, framework, link or summary (\"SwiftData widget\"); the list keeps the library's order. updates: keeps the entries whose title or summary contains this text, in any case. overviews: keeps the collections and articles whose title or link contains this text, in any case; a collection's summary counts too.",
      +  "type": "string"
      +}
    • addedInput schema / properties / technology
      Added value: +{
      +  "description": "updates only: keeps the entries whose framework, title or summary contains this name (\"SwiftUI\"), in any case.",
      +  "type": "string"
      +}
  2. First observedv0.1.0

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only cover readOnlyHint, so the description carries the disclosure burden and does so richly: per-catalog entry fields, ordering rules (featured first, then library sections), beta marking, per-catalog default limits, and the notable extra behavior of returning a TSV of the whole catalog for grep. This is well beyond what annotations provide.

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

Conciseness3/5

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

It is front-loaded with a clear 'Browse four of Apple's catalogs' opening, but at roughly 300 words it is dense and duplicates much of what the catalog enum descriptions already say. The per-catalog sentences carry usage value, yet the catalog re-descriptions do not earn their space.

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 9-parameter, four-mode tool with no output schema, the description supplies the return shape per catalog, ordering, defaults, and how to continue with get_apple_doc_content. Nothing an agent needs to invoke it correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100% and the schema descriptions are themselves exhaustive (enum meanings, per-catalog filtering semantics, defaults). The description largely restates catalog purposes already documented in the schema, adding only the TSV/grep note, so the baseline 3 is appropriate.

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?

The opening sentence states the resource and scope precisely (four Apple catalogs), then names each catalog and exactly what it contains (frameworks grouped by category, sample library, updates page, technology overviews). Despite the name suggesting only technologies, an agent can tell this apart from all siblings without opening the schema.

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

Usage Guidelines5/5

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

Every catalog is paired with an explicit use case ('see which frameworks fit a task', 'find what changed in a framework', 'choose an approach before choosing APIs'), and it names an alternative with its trigger condition: search_apple_docs with type 'sample' for behavioral lookup. get_apple_doc_content is cited for reading entries.

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