---
type: Agentic Web Standard
title: "AI Catalog well-known file"
description: "Which AI artifacts (MCP Server Cards, A2A Agent Cards, Agent Skills, APIs, or nested catalogs) does this domain publish, and what signed trust manifests back them?"
resource: "https://ai-catalog.io/spec/"
tags: ["discover", "well-known-file", "vendor-consortium", "discover-my-api", "describe-agent-capabilities"]
status: draft
generated: { by: agenticweb-builder/1.0, at: 2026-10-30T00:00:00Z }
verified: { by: process:agenticweb-engine, at: 2026-10-29T00:00:00Z }
stale_after: 2026-11-28T00:00:00Z
sources:
  - id: ref-1
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/specification/ai-catalog.md"
    title: "Agent Card Working Group, AI Catalog Specification (specification/ai-catalog.md, specVersion 1.0 draft), checked 2026-10-29: \"This document defines the AI Catalog: a typed, nestable JSON container for discovering heterogeneous AI artifacts. Each entry declares its artifact type via a type identifier (which is an IANA media type) and may reference or embed the native artifact metadata. A minimal catalog is simply a list of entries — names, types, and URLs — requiring no additional infrastructure.\" \"The AI Catalog is intentionally agnostic about the artifacts it indexes. It does not define or constrain the schema of MCP server manifests, A2A agent cards, or any other artifact format. Instead, it relies on type identifiers to indicate what each entry is, and delegates the definition of artifact-specific metadata to the respective protocol specifications.\" \"An AI Catalog document is identified by the media type: application/ai-catalog+json\" \"An AI Catalog document is a JSON object that MUST contain the following members: specVersion: A string indicating the version of this specification that the catalog conforms to, in \"Major.Minor\" format (e.g., \"1.0\"). See Version Handling for compatibility rules. entries: An array of Catalog Entry objects as defined in Catalog Entry. This array MAY be empty.\" \"An artifact publisher that wants an entry identifier to be preserved when the artifact appears in other catalogs SHOULD use the AI Catalog-specific urn:air naming structure with its own domain in the {publisher} segment. A catalog operator incorporating an entry for the first time with a publisher-authorized urn:air identifier MUST preserve that identifier exactly.\" \"A Catalog Entry MUST contain exactly one of the following members to provide the artifact content: url: A string containing a URL where the full artifact document can be retrieved. The document served at this URL SHOULD be served with the media type declared in the type field. data: A JSON value containing the complete artifact document inline. The structure of this value is determined by the type field and is opaque to this specification.\" \"The Publisher object identifies the entity responsible for an artifact. It appears on the Catalog Entry and is the canonical location for publisher information.\" \"A Trust Manifest is an OPTIONAL collection of one contributor's trust metadata about the artifact represented by an entry. The entry's trustManifests array contains these independent contributions. Each manifest MUST contain contributor and MAY contain the optional members below.\" \"This profile is selected by the exact profile value did-web-v1. It authenticates a signer using a root did:web DID and an ES256 assertion key.\" \"Publisher authorization: The entry MUST use the standard urn:air syntax. Its {publisher} component is the text following urn:air: and preceding the next colon and MUST satisfy the root did:web domain restrictions above. The authenticated signer identity MUST exactly match did:web: followed by that component.\" \"Verification procedures direct consumers to fetch artifact URLs, evidence references (attestation.uri, statementUri, and registryUri), and identity-resolution endpoints derived from signing metadata. These inputs may be attacker-controlled before authentication, so these fetches are a server-side request forgery (SSRF) and denial-of-service surface.\" \"Clients processing nested catalogs SHOULD impose a maximum nesting depth to prevent circular references. A depth limit of 4 is RECOMMENDED.\" \"While publishers are free to create custom extensions, this specification defines a set of \"Official\" known types for commonly requested schemas: 1. Metadata (https://ai-catalog.org/extensions/metadata) - Used to store generic, schemaless key-value pairs. 2. Policy URLs (https://ai-catalog.org/extensions/policy-urls) - Links to the policies governing an artifact, defined below.\" \"To support automated discovery, hosts MAY serve an AI Catalog at the following well-known URI [[RFC8615]]: /.well-known/ai-catalog.json Clients performing domain-level discovery SHOULD attempt to retrieve this well-known URL.\" \"Websites MAY advertise their AI Catalog by including an ai-catalog link relation in HTTP responses or HTML documents. This enables AI agents, crawlers, and other automated clients to discover the catalog associated with any website without prior knowledge of its location.\" \"This specification defines three conformance levels. Each level builds on the previous one. Implementations MUST satisfy all requirements of their declared level.\" \"This specification supports a progressive trust model. Each layer builds on the previous one, adding confidence without requiring all consumers to implement every layer. Consumers choose the level appropriate to their threat model.\" \"This section registers the ai-catalog.json well-known URI in the IANA \"Well-Known URIs\" registry [[RFC8615]]. URI Suffix:: ai-catalog.json Change Controller:: Agent Card Working Group\""
  - id: ref-2
    resource: "https://ai-catalog.io/spec/"
    title: "Agent Card Working Group, AI Catalog (published ReSpec specification at ai-catalog.io/spec/), checked 2026-10-29: \"The specification defines three conformance levels — Minimal, Discoverable, and Trusted — allowing implementations to start with a simple list of entries and progressively add host identity, well-known URI discovery, and verifiable trust metadata as needed.\" \"Status of This Document This is a draft document and may be updated at any time.\""
  - id: ref-3
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/README.md"
    title: "Agent Card Working Group, Agent-Card/ai-catalog Common AI Catalog and Registry Standard (README.md), checked 2026-10-29: \"This is a temporary working repo maintained by the Linux Foundation. Proposals and changes will be made in public in this repo. This project will be moved to a permanent location a later date with a permanent governance model.\" \"Important Note: The AI Catalog standard does not replace or redefine protocol-specific artifact formats. It provides a common discovery and trust layer around them.\""
  - id: ref-4
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/GOVERNANCE.md"
    title: "Agent Card Working Group, Agent-Card/ai-catalog Governance (GOVERNANCE.md), checked 2026-10-29: \"The AI Catalog project is governed by the Technical Steering Committee.\" \"At the inception of the Project, four TSC members will be nominated. Two will be nominated by MCP Core Maintainers (https://github.com/modelcontextprotocol/modelcontextprotocol/blob/main/MAINTAINERS.md) and two will be nominated by the the Linux Foundation A2A Technical Steering Committee (https://github.com/a2aproject/A2A/blob/main/GOVERNANCE.md).\""
  - id: ref-5
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/LICENSE.md"
    title: "Agent Card Working Group, Agent-Card/ai-catalog License (LICENSE.md), checked 2026-10-29: \"Unless otherwise noted, this repository uses a split-license model. Software And Code Software and code in this repository are licensed under the Apache License, Version 2.0.\" \"The specification and documentation in this repository are licensed under the Creative Commons Attribution 4.0 International License.\""
  - id: ref-6
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/MAINTAINERS.md"
    title: "Agent Card Working Group, Agent-Card/ai-catalog Maintainers (MAINTAINERS.md), checked 2026-10-29: \"Repository: Agent-Card/ai-catalog-rust\" \"Cisco\" \"Luca Muscariello\" \"AWS\" \"Jeffrey Damick\""
  - id: ref-7
    resource: "https://api.github.com/repos/Agent-Card/ai-catalog"
    title: "GitHub REST API, Agent-Card/ai-catalog repository metadata (created 2025-10-29), checked 2026-10-29: \"\"html_url\": \"https://github.com/Agent-Card/ai-catalog\", \"description\": \"Working repository for common AI Card standard\"\" \"\"created_at\": \"2025-10-29T23:15:51Z\"\""
    last_modified: 2025-10-29T00:00:00Z
  - id: ref-8
    resource: "https://api.github.com/repos/Agent-Card/ai-catalog/pulls/4"
    title: "Junjie Bu (mindpower) and Luca Muscariello (muscariello), Agent-Card/ai-catalog Pull Request #4: spec: AI card and AI catalog draft proposal (opened 2025-11-05, merged 2026-03-11), checked 2026-10-29: \"\"title\": \"spec: AI card and AI catalog draft proposal\"\" \"\"created_at\": \"2025-11-05T16:39:57Z\"\" \"\"merged_at\": \"2026-03-11T13:44:15Z\"\""
    last_modified: 2025-11-05T00:00:00Z
  - id: ref-9
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/adr/0014-media-type-to-type.md"
    title: "Agent Card Working Group, ADR 0014: Move from mediaType to type in Catalog Entries and Remove mediaType in Attestations (2026-04-30, updated 2026-06-25), checked 2026-10-29: \"We will rename the mediaType field to type in the CatalogEntry schema. The type field is an open text format, so any string value is accepted. To ensure clarity of ownership and governance, the recognized \"known types\" are partitioned into core protocol types and integrated third-party/ecosystem types:\""
    last_modified: 2026-04-30T00:00:00Z
  - id: ref-10
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/adr/0017-ard-loose-coupling.md"
    title: "Agent Card Working Group, ADR-0017: Loose Coupling of ARD and AI-Catalog (discussed 2026-07-02, agreed 2026-07-09), checked 2026-10-29: \"AI-Catalog will proceed without native @context support and will instead rely on simpler mechanisms (such as an extensions map) for minimal extensions. ARD will evolve its data model independently to fully support the rich, namespaced metadata and semantic schemas required for comprehensive, web-scale agentic resource discovery.\""
    last_modified: 2026-07-09T00:00:00Z
  - id: ref-11
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/adr/0027-did-web-entry-signature-profile.md"
    title: "Agent Card Working Group, ADR-0027: Define a did:web Signature Profile for Entry Trust Manifests (2026-09-04), checked 2026-10-29: \"AI Catalog defines one signature profile for signed Entry Trust Manifests: The artifact identifier uses the standard urn:air syntax defined in Catalog Entry. The {publisher} component is a lowercase ASCII DNS domain name. The Trust Manifest issuer is exactly the root did:web DID for that domain. The JWS algorithm is ES256. The signing key is a P-256 publicKeyJwk authorized by the current DID document's assertionMethod relationship.\""
    last_modified: 2026-09-04T00:00:00Z
  - id: ref-12
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/adr/0028-independent-trust-manifests-and-whole-object-signatures.md"
    title: "Agent Card Working Group, ADR-0028: Independent Trust Manifests and Whole-Object Signatures (2026-09-12), checked 2026-10-29: \"Replace entry.trustManifest with an entry.trustManifests array. Each Trust Manifest identifies its contributor with an absolute identity URI. The contributor is required even when the manifest is unsigned. A signed manifest has one signature, whose authenticated signer must exactly match contributor, and a subject identifying the artifact release.\""
    last_modified: 2026-09-12T00:00:00Z
  - id: ref-13
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/adr/0029-define-the-policy-urls-extension.md"
    title: "Agent Card Working Group, ADR-0029: Define the Policy URLs Extension (2026-10-05), checked 2026-10-29: \"Replace the core entry fields privacyPolicyUrl and termsOfServiceUrl with one official entry extension:\""
    last_modified: 2026-10-05T00:00:00Z
  - id: ref-14
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/specification/trust-manifest-threat-model.md"
    title: "Agent Card Working Group, Trust Manifest Threat Model (specification/trust-manifest-threat-model.md, 2026-06-20), checked 2026-10-29: \"It exists to answer the substitution-attack concern raised in ADR-0009: \"The substitution attack of changing out the trust manifest is very real, especially if there's no tamper-proofness built in.\"\""
    last_modified: 2026-06-20T00:00:00Z
  - id: ref-15
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/docs/mappings/mcp-servers.md"
    title: "Agent Card Working Group, Mapping to MCP Servers (docs/mappings/mcp-servers.md), checked 2026-10-29: \"The documented, supported path is to reference each server's MCP Server Card (SEP-2127) as the artifact content of a Catalog Entry.\""
  - id: ref-16
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/docs/mappings/oci-distribution.md"
    title: "Agent Card Working Group, Mapping to OCI Distribution (docs/mappings/oci-distribution.md), checked 2026-10-29: \"Of the binding invariants, the OCI binding delegates identity, content integrity, and signing to OCI's own primitives. Consequently entry.digest is expected to equal the OCI descriptor digest of the served artifact, and the Trust Manifest signatures MAY be omitted from the packed representation because Cosign/Notation referrers carry signing instead.\""
  - id: ref-17
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/docs/mappings/xregistry.md"
    title: "Agent Card Working Group, Mapping to xRegistry (docs/mappings/xregistry.md), checked 2026-10-29: \"An AI Catalog document maps to an xRegistry Group whose Resources are the catalog entries; each entry's artifact is the Resource document.\""
  - id: ref-18
    resource: "https://raw.githubusercontent.com/ards-project/ard-spec/main/spec/ard-v0.9.md"
    title: "Junjie Bu, R.V. Guha, and Shaun Smith, Agentic Resource Discovery (ARD) Specification v0.9 (Draft, 2026-05-28), checked 2026-10-29: \"4.1 The Capability Manifest (ai-catalog.json) A manifest file hosted at /.well-known/ai-catalog.json lists the available artifacts.\""
    last_modified: 2026-05-28T00:00:00Z
  - id: ref-19
    resource: "https://raw.githubusercontent.com/ards-project/ard-spec/main/adr/0010-ard-and-ai-catalog-loose-coupling.md"
    title: "ARD Working Group and R.V. Guha, ADR 0010: Loose Coupling Between ARD Entries and AI Catalog Entries (2026-07-09), checked 2026-10-29: \"ARD is a search mechanism which necessarily has to synthesize signals from many sources, whereas ai-catalog wants to be the \"master\" descriptor from the provider of the service.\" \"So an AIR is the ai-catalog entry core plus flat, namespaced extensions. Nothing else changes.\""
    last_modified: 2026-07-09T00:00:00Z
  - id: ref-20
    resource: "https://raw.githubusercontent.com/ards-project/ard-spec/main/spec/ard.md"
    title: "Junjie Bu, R.V. Guha, and Shaun Smith, Agentic Resource Discovery (ARD) Specification v0.91 (Proposal, 2026-08-26), checked 2026-10-29: \"A consumer resolving a domain's entries MUST fetch /.well-known/ard.json, and MUST honour a rel=\"ard\" link. ARD's predecessor specified the path /.well-known/ai-catalog.json and the link relation ai-catalog; a consumer MAY additionally consult these, and a consumer that does treats them as equivalent entry sources.\" \"A resource that remains only at /.well-known/ai-catalog.json may not be found, since consulting that path is optional for consumers — a publisher on the predecessor path SHOULD move to ard.json.\""
    last_modified: 2026-08-26T00:00:00Z
  - id: ref-21
    resource: "https://modelcontextprotocol.io/seps/2127-mcp-server-cards"
    title: "David Soria Parra, Sam Morrow, and Tadas Antanavicius, SEP-2127: MCP Server Cards - HTTP Server Discovery - Model Context Protocol (created 2026-01-21, Final), checked 2026-10-29: \"The AI Catalog provides a decentralized, protocol-agnostic mechanism for identifying AI artifacts. An AI Catalog entry can link to or embed an MCP Server Card, leaving the catalog responsible for domain-level discovery and the Server Card responsible for MCP-specific identity and connection details.\" \"For automated domain-level discovery, an AI Catalog can be published at /.well-known/ai-catalog.json. The.well-known URI pattern is an established IETF standard (RFC 8615) used by many protocols for service discovery, including OAuth 2.0 Authorization Server Metadata (RFC 8414).\""
    last_modified: 2026-01-21T00:00:00Z
  - id: ref-22
    resource: "https://api.github.com/repos/modelcontextprotocol/modelcontextprotocol/pulls/2127"
    title: "David Soria Parra (dsp-ant), modelcontextprotocol/modelcontextprotocol Pull Request #2127: SEP-2127: MCP Server Cards - HTTP Server Discovery (merged 2026-10-06), checked 2026-10-29: \"\"created_at\": \"2026-01-21T17:35:02Z\"\" \"\"merged_at\": \"2026-10-06T14:43:46Z\"\""
    last_modified: 2026-10-06T00:00:00Z
  - id: ref-23
    resource: "https://raw.githubusercontent.com/modelcontextprotocol/ext-server-card/main/docs/discovery.md"
    title: "MCP Server Card Working Group, modelcontextprotocol/ext-server-card Discovery via AI Catalog (docs/discovery.md), checked 2026-10-29: \"For automated domain-level discovery, hosts MAY publish one at: /.well-known/ai-catalog.json Clients performing domain-level discovery SHOULD attempt to retrieve this well-known URL. When served over HTTP, the document SHOULD use the application/ai-catalog+json media type.\""
  - id: ref-24
    resource: "https://www.rfc-editor.org/rfc/rfc9727.html"
    title: "Kevin Smith (Vodafone), RFC 9727: api-catalog: A Well-Known URI and Link Relation to Help Discovery of APIs (IETF Standards Track, June 2025), checked 2026-10-29: \"This document defines the \"api-catalog\" well-known URI and link relation. It is intended to facilitate automated discovery and usage of published Application Programming Interfaces (APIs). A request to the api-catalog resource will return a document providing information about, and links to, the Publisher's APIs.\""
    last_modified: 2025-06-01T00:00:00Z
  - id: ref-25
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog-rust/main/README.md"
    title: "Agent Card Working Group, Agent-Card/ai-catalog-rust AI Catalog Rust (README.md), checked 2026-10-29: \"ai-catalog, ai-catalog-validate, ai-catalog-trust, and ai-catalog-discover implement the specification. ai-catalog-oci is a convenience for distributing catalogs over existing registry infrastructure; OCI packaging is not part of the spec.\""
  - id: ref-26
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog-go/main/README.md"
    title: "Agent Card Working Group, Agent-Card/ai-catalog-go AI Catalog Go SDK (README.md), checked 2026-10-29: \"A Go toolkit for consuming and validating AI Catalog documents, the JSON format for making AI artifacts (MCP servers, A2A agents, datasets, model cards, nested catalogs, …) discoverable. It implements the AI Catalog specification.\" \"discovery.Discover takes a URL or a bare domain and follows the spec's discovery procedure: a catalog at the URL itself, then a Link header with rel=\"ai-catalog\", then an HTML <link rel=\"ai-catalog\">, then /.well-known/ai-catalog.json.\""
  - id: ref-27
    resource: "https://raw.githubusercontent.com/Agent-Card/ai-catalog-cli/main/README.md"
    title: "Agent Card Working Group, Agent-Card/ai-catalog-cli ai-catalog (README.md), checked 2026-10-29: \"Command-line tool for inspecting, validating, and packaging AI Catalog documents.\" \"The crate is named ai-catalog-cli; the installed binary is ai-catalog.\" \"SKILL.md follows the Agent Skills standard and teaches an AI agent to use this CLI to discover, inspect, and install AI artifacts from a catalog. It requires the ai-catalog binary on PATH.\""
  - id: ref-28
    resource: "https://raw.githubusercontent.com/Agent-Card/awesome-ai-catalogs/main/README.md"
    title: "Agent Card Working Group, Agent-Card/awesome-ai-catalogs Awesome AI Catalogs (README.md), checked 2026-10-29: \"This repository's ai-catalog.json is itself an AI Catalog whose entries are public catalogs. It is published unchanged, along with a browsable site.\" \"Every listed catalog has been validated with the ai-catalog CLI and must stay valid to remain listed.\""
  - id: ref-29
    resource: "https://raw.githubusercontent.com/spec-works/ai-catalog/main/README.md"
    title: "SpecWorks, spec-works/ai-catalog AI Catalog (README.md), checked 2026-10-29: \"A.NET and Python toolkit for working with AI Catalog documents (application/ai-catalog+json). Parse, validate, serialize, explore, and install AI artifacts from catalog registries.\""
  - id: ref-30
    resource: "https://raw.githubusercontent.com/tomevault-io/ai-catalog-reference/main/README.md"
    title: "TomeVault, tomevault-io/ai-catalog-reference AI Catalog Level 3 Trust Manifest — Reference Implementation (README.md), checked 2026-10-29: \"A runnable signer and verifier for the AI Catalog Level 3 \"Trusted Catalog\" trust layer: signed subject binding, identity anchoring, an algorithm allowlist, freshness, substantive-member enforcement, and SSRF-safe fetching.\""
  - id: ref-31
    resource: "https://ai-catalog.outshift.io/.well-known/ai-catalog.json"
    title: "Cisco Outshift, AGNTCY Directory live AI Catalog endpoint (ai-catalog.outshift.io/.well-known/ai-catalog.json), checked 2026-10-29: \"\"displayName\":\"AGNTCY Directory\"\" \"\"identifier\":\"https://ai-catalog.outshift.io\"\""
  - id: ref-32
    resource: "https://api.github.com/repos/GoogleChrome/lighthouse/releases/tags/v13.5.0"
    title: "Google Chrome Lighthouse, Release v13.5.0 (published 2026-09-18, shipping ard-schema audit #17168), checked 2026-10-29: \"\"tag_name\": \"v13.5.0\"\" \"\"published_at\": \"2026-09-18T16:18:20Z\"\" \"ard-schema: add Agent Resource Discovery audit (#17168)\""
    last_modified: 2026-09-18T00:00:00Z
  - id: ref-33
    resource: "https://api.github.com/repos/GoogleChrome/lighthouse/issues/17251"
    title: "Google Chrome Lighthouse, Issue #17251: [Agentic Web] ard-schema not updated for ARD v0.91 (opened 2026-09-22, closed 2026-10-09), checked 2026-10-29: \"Confirmed in source at HEAD, core/gather/gatherers/agentic/ard.js:\""
    last_modified: 2026-09-22T00:00:00Z
  - id: ref-34
    resource: "https://api.github.com/repos/modelcontextprotocol/python-sdk/pulls/2951"
    title: "Sam Morrow (SamMorrowDrums) and David Soria Parra (dsp-ant), modelcontextprotocol/python-sdk Pull Request #2951: Add experimental Server Cards support (SEP-2127) (opened 2026-06-22), checked 2026-10-29: \"A server builds a Server Card from its own identity, serves it from a Starlette app, and advertises it through an AI Catalog. A client discovers a host's catalog, then fetches and validates the cards it references.\""
    last_modified: 2026-06-22T00:00:00Z
  - id: ref-35
    resource: "https://raw.githubusercontent.com/github/agentfinder-catalog/main/README.md"
    title: "GitHub, github/agentfinder-catalog Agent Finder Catalog (README.md), checked 2026-10-29: \"The Catalog workflow checks the GitHub MCP Registry hourly, independently of repository changes, and opens or updates the automation/update-ai-catalog pull request when the generated catalog changes.\""
  - id: ref-36
    resource: "https://api.github.com/repos/huggingface/hf-discover/pulls/31"
    title: "Shaun Smith (evalstate), huggingface/hf-discover Pull Request #31: [codex] Align ARD catalog registry URLs (merged 2026-06-15), checked 2026-10-29: \"Advertise registry service base URLs in /.well-known/ai-catalog.json instead of /search endpoints.\""
    last_modified: 2026-06-15T00:00:00Z
  - id: ref-37
    resource: "https://platform.claude.com/.well-known/ai-catalog.json"
    title: "Anthropic, live AI Catalog endpoint at platform.claude.com/.well-known/ai-catalog.json, checked 2026-10-29: \"\"identifier\":\"urn:air:platform.claude.com:mcp:docs\"\" \"\"type\":\"application/mcp-server-card+json\"\" \"\"url\":\"https://platform.claude.com/docs/mcp/server-card\"\""
  - id: ref-38
    resource: "https://github.com/.well-known/ai-catalog.json"
    title: "GitHub, live AI Catalog endpoint at github.com/.well-known/ai-catalog.json, checked 2026-10-29: \"\"identifier\":\"urn:air:github.com:mcp:github-mcp-server\"\" \"\"type\":\"application/mcp-server-card+json\"\" \"\"url\":\"https://api.githubcopilot.com/mcp/server-card\"\""
  - id: ref-39
    resource: "https://api.mcp.github.com/.well-known/ai-catalog.json"
    title: "GitHub MCP Registry, live AI Catalog endpoint at api.mcp.github.com/.well-known/ai-catalog.json, checked 2026-10-29: \"\"displayName\":\"GitHub MCP Registry\"\" \"\"identifier\":\"urn:ai:registry.modelcontextprotocol.io:microsoft:markitdown\"\""
  - id: ref-40
    resource: "https://developers.cloudflare.com/.well-known/ai-catalog.json"
    title: "Cloudflare Developer Documentation, live AI Catalog endpoint at developers.cloudflare.com/.well-known/ai-catalog.json, checked 2026-10-29: \"\"displayName\":\"Cloudflare Developer Documentation\"\" \"\"identifier\":\"did:web:developers.cloudflare.com\"\""
  - id: ref-41
    resource: "https://huggingface.co/.well-known/ai-catalog.json"
    title: "Hugging Face, live AI Catalog endpoint at huggingface.co/.well-known/ai-catalog.json, checked 2026-10-29: \"\"identifier\":\"urn:air:huggingface.co:registry:discover\"\" \"\"displayName\":\"Hugging Face Discover Registry\"\" \"\"type\":\"application/ai-registry+json\"\""
  - id: ref-42
    resource: "https://vercel.com/.well-known/ai-catalog.json"
    title: "Vercel, live AI Catalog endpoint at vercel.com/.well-known/ai-catalog.json, checked 2026-10-29: \"\"displayName\":\"Vercel\"\" \"\"identifier\":\"https://vercel.com\"\" \"\"documentationUrl\":\"https://vercel.com/docs/agent-resources\"\""
  - id: ref-43
    resource: "https://agentavow.com/.well-known/ai-catalog.json"
    title: "AgentAvow, live signed Level 3 AI Catalog endpoint at agentavow.com/.well-known/ai-catalog.json, checked 2026-10-29: \"\"signerDid\": \"did:web:agentavow.com\"\" \"\"signerKid\": \"did:web:agentavow.com#catalog-es256-v1\"\""
  - id: ref-44
    resource: "https://resend.com/changelog/ai-catalog-mcp-server-card"
    title: "Diel Duarte (Resend), Support for AI Catalog and MCP Server Card · Resend (2026-10-26), checked 2026-10-29: \"AI Catalog at resend.com/.well-known/ai-catalog.json lists the AI artifacts Resend offers, including the remote MCP server.\""
    last_modified: 2026-10-26T00:00:00Z
  - id: ref-45
    resource: "https://resend.com/.well-known/ai-catalog.json"
    title: "Resend, live AI Catalog endpoint at resend.com/.well-known/ai-catalog.json, checked 2026-10-29: \"\"identifier\": \"urn:air:resend.com:mcp:mcp\"\" \"\"type\": \"application/mcp-server-card+json\"\" \"\"url\": \"https://mcp.resend.com/mcp/server-card\"\""
  - id: ref-46
    resource: "https://developers.googleblog.com/announcing-the-agentic-resource-discovery-specification/"
    title: "Junjie Bu and Srinivas Krishnan, Announcing the Agentic Resource Discovery specification - Google Developers Blog (2026-06-17), checked 2026-10-29: \"Publishing the catalog: The provider hosts an ai-catalog.json file at a well-known path on its domain.\""
    last_modified: 2026-06-17T00:00:00Z
  - id: ref-47
    resource: "https://commandline.microsoft.com/agentic-resource-discovery-specification-ard/"
    title: "Ramanathan Guha, Introducing the Agentic Resource Discovery specification - Command Line (2026-06-17), checked 2026-10-29: \"That's why we're introducing the Agentic Resource Discovery (ARD) specification, an open specification that establishes a secure common layer for the publishing, indexing, and discovery of AI capabilities.\""
    last_modified: 2026-06-17T00:00:00Z
  - id: ref-48
    resource: "https://huggingface.co/blog/agentic-resource-discovery-launch"
    title: "Ben Burtenshaw and Shaun Smith, Agentic Resource Discovery: Let agents search (2026-06-17), checked 2026-10-29: \"A static manifest format called ai-catalog.json lets publishers host their capabilities at a well-known URL.\""
    last_modified: 2026-06-17T00:00:00Z
  - id: ref-49
    resource: "https://github.blog/changelog/2026-06-17-agent-finder-for-github-copilot-now-available/"
    title: "GitHub Changelog, Agent finder for GitHub Copilot now available - GitHub Changelog (2026-06-17), checked 2026-10-29: \"Describe a task in plain language and agent finder searches an index of available AI resources, then returns ranked matches Copilot can pull in on demand from any catalog you point it at.\""
    last_modified: 2026-06-17T00:00:00Z
  - id: ref-50
    resource: "https://www.searchenginejournal.com/google-microsoft-back-draft-ai-agent-discovery-spec/579894/"
    title: "Matt G. Southern (Search Engine Journal), Google, Microsoft Back Draft AI Agent Discovery Spec (2026-06-18), checked 2026-10-29: \"ARD is licensed under Apache 2.0 and builds on the AI Catalog data model maintained by a working group under the Linux Foundation.\""
    last_modified: 2026-06-18T00:00:00Z
  - id: ref-51
    resource: "https://cloudandsre.com/blog/agentic-resource-discovery-ard/"
    title: "Ajin Baby, Agentic Resource Discovery: I Read the Spec, Then Published a Catalog · cloudandsre.com (2026-07-02), checked 2026-10-29: \"On June 17, 2026, Google, Microsoft, and Hugging Face jointly announced Agentic Resource Discovery (ARD), with a coalition behind it that includes Amazon, Cisco, GitHub, Salesforce, Snowflake, and Nvidia.\""
    last_modified: 2026-07-02T00:00:00Z
  - id: ref-52
    resource: "https://dri.es/helping-agents-discover-my-site-search-with-agentic-resource-discovery"
    title: "Dries Buytaert, Helping agents discover my site search with Agentic Resource Discovery | Dries Buytaert (2026-07-23), checked 2026-10-29: \"You opt in by publishing a manifest at /.well-known/ai-catalog.json.\""
    last_modified: 2026-07-23T00:00:00Z
  - id: ref-53
    resource: "https://thenewstack.io/ard-agent-discovery-specification/"
    title: "Amanda Caswell (The New Stack), MCP was supposed to solve the agent tooling problem. It missed a step. - The New Stack (2026-08-31), checked 2026-10-29: \"The Model Context Protocol has become a common way for AI applications to connect to external tools and data, but it assumes the client already knows which server it wants to use.\""
    last_modified: 2026-08-31T00:00:00Z
  - id: ref-54
    resource: "https://standards.apievangelist.com/store/ai-catalog/"
    title: "Kin Lane (API Evangelist), AI Catalog Standard (ai-catalog.json) - API Evangelist Standards, checked 2026-10-29: \"The AI Catalog Standard is the data model underneath Agentic Resource Discovery — a JSON manifest a publisher hosts at /.well-known/ai-catalog.json that lists the agentic resources it offers, whatever they happen to be: MCP servers, agent cards, skills, workflows or plain HTTP APIs.\""
---

# AI Catalog well-known file

AI Catalog well-known file is an agentic-web standard (well-known file — /.well-known/ai-catalog.json) at step 1, Discover, governed by Agent Card Working Group Technical Steering Committee in a Linux Foundation-maintained repository; its status is "Working draft". It answers: "Which AI artifacts (MCP Server Cards, A2A Agent Cards, Agent Skills, APIs, or nested catalogs) does this domain publish, and what signed trust manifests back them?" Replacing or extending sitemap.xml, implementation status is shipping, last verified 2026-10-29.

# Overview

The **AI Catalog** (`application/ai-catalog+json`) is an open, protocol-agnostic JSON manifest format and well-known URI convention (`/.well-known/ai-catalog.json`) developed by the Agent Card Working Group (`https://github.com/Agent-Card/ai-catalog`, published at `https://ai-catalog.io/` and `https://ai-catalog.io/spec/`) for indexing and discovering heterogeneous AI artifacts across domains [^ref-1][^ref-2][^ref-3]. In the normative specification (`specification/ai-catalog.md`), the authors define its core role: "This document defines the AI Catalog: a typed, nestable JSON container for discovering heterogeneous AI artifacts. Each entry declares its artifact type via a type identifier (which is an IANA media type) and may reference or embed the native artifact metadata. A minimal catalog is simply a list of entries — names, types, and URLs — requiring no additional infrastructure." [^ref-1]. Rather than replacing or constraining underlying artifact schemas, the container delegates domain-specific metadata to each protocol: "The AI Catalog is intentionally agnostic about the artifacts it indexes. It does not define or constrain the schema of MCP server manifests, A2A agent cards, or any other artifact format. Instead, it relies on type identifiers to indicate what each entry is, and delegates the definition of artifact-specific metadata to the respective protocol specifications." [^ref-1]. The repository `README.md` reinforces this boundary: "Important Note: The AI Catalog standard does not replace or redefine protocol-specific artifact formats. It provides a common discovery and trust layer around them." [^ref-3].

### Origin, governance, and licensing

The canonical repository (`https://github.com/Agent-Card/ai-catalog`) was created on 29 October 2025 (`"created_at": "2025-10-29T23:15:51Z"`) with metadata `"html_url": "https://github.com/Agent-Card/ai-catalog", "description": "Working repository for common AI Card standard"` [^ref-7]. On 5 November 2025, Junjie Bu (`mindpower`, Google) opened Pull Request #4 (`"title": "spec: AI card and AI catalog draft proposal"`), co-authored with Luca Muscariello (`muscariello`, Cisco Outshift), which was merged on 11 March 2026 (`"created_at": "2025-11-05T16:39:57Z"`, `"merged_at": "2026-03-11T13:44:15Z"`) to establish the foundational draft [^ref-8]. The repository `README.md` notes its hosting arrangement under the Linux Foundation: "This is a temporary working repo maintained by the Linux Foundation. Proposals and changes will be made in public in this repo. This project will be moved to a permanent location a later date with a permanent governance model." [^ref-3].

Technical oversight is defined in `GOVERNANCE.md`: "The AI Catalog project is governed by the Technical Steering Committee." with four seats held by Junjie Bu (Google), Darrel Miller (Microsoft), David Soria Parra (Anthropic), and Tadas Antanavicius (PulseMCP) [^ref-4]. The charter specifies balanced representation between the Model Context Protocol and Agent2Agent communities: "At the inception of the Project, four TSC members will be nominated. Two will be nominated by MCP Core Maintainers (https://github.com/modelcontextprotocol/modelcontextprotocol/blob/main/MAINTAINERS.md) and two will be nominated by the the Linux Foundation A2A Technical Steering Committee (https://github.com/a2aproject/A2A/blob/main/GOVERNANCE.md)." [^ref-4]. Official SDKs and command-line tooling in the `Agent-Card` organization (`Agent-Card/ai-catalog-rust`, `Agent-Card/ai-catalog-go`, `Agent-Card/ai-catalog-cli`) are maintained by Luca Muscariello (Cisco) and Jeffrey Damick (AWS) [^ref-6]. Under `LICENSE.md`, the repository applies a dual-track licensing structure: "Unless otherwise noted, this repository uses a split-license model. Software And Code Software and code in this repository are licensed under the Apache License, Version 2.0." and "The specification and documentation in this repository are licensed under the Creative Commons Attribution 4.0 International License." [^ref-5]. The rendered specification at `https://ai-catalog.io/spec/` (*AI Catalog*) carries a draft notice: "Status of This Document This is a draft document and may be updated at any time." [^ref-2].

### Document structure, entry schema, and `urn:air` identifiers

An AI Catalog document is identified by the media type `application/ai-catalog+json` [^ref-1]. At the top level: "An AI Catalog document is a JSON object that MUST contain the following members: specVersion: A string indicating the version of this specification that the catalog conforms to, in "Major.Minor" format (e.g., "1.0"). See Version Handling for compatibility rules. entries: An array of Catalog Entry objects as defined in Catalog Entry. This array MAY be empty." [^ref-1]. Optional root members include `host` (identifying the catalog operator via a required `displayName` and optional `identifier`, `documentationUrl`, and `logoUrl`), `extensions`, `signature`, and `additionalSignatures` [^ref-1].

Each object in `entries` represents a Catalog Entry and must include an `identifier`, a `type` string (changed from `mediaType` under ADR 0014: "We will rename the mediaType field to type in the CatalogEntry schema. The type field is an open text format, so any string value is accepted. To ensure clarity of ownership and governance, the recognized "known types" are partitioned into core protocol types and integrated third-party/ecosystem types:" [^ref-9]), and either a remote reference or inline payload: "A Catalog Entry MUST contain exactly one of the following members to provide the artifact content: url: A string containing a URL where the full artifact document can be retrieved. The document served at this URL SHOULD be served with the media type declared in the type field. data: A JSON value containing the complete artifact document inline. The structure of this value is determined by the type field and is opaque to this specification." [^ref-1]. Recognized artifact types are partitioned into Core Protocol Types governed by the AI Catalog Working Group (`application/ai-catalog+json` for nested catalogs and `application/agent-card+json`) and Integrated Ecosystem Types governed externally (`application/a2a-agent-card+json`, `application/mcp-server-card+json`, `application/agent-skills+json`, `application/agent-skills+md`, `application/agent-skills+zip`, `application/agent-skills+gzip`, `application/agent-plugins+zip`, and `application/agent-plugins+gzip`) [^ref-1][^ref-9].

For cross-catalog portability across federated directories, the specification defines the `urn:air:{publisher}:{namespace}:{name}` naming convention: "An artifact publisher that wants an entry identifier to be preserved when the artifact appears in other catalogs SHOULD use the AI Catalog-specific urn:air naming structure with its own domain in the {publisher} segment. A catalog operator incorporating an entry for the first time with a publisher-authorized urn:air identifier MUST preserve that identifier exactly." [^ref-1]. Entity attribution is separated from cryptographic claims through the `publisher` member: "The Publisher object identifies the entity responsible for an artifact. It appears on the Catalog Entry and is the canonical location for publisher information." [^ref-1]. Catalogs can also nest hierarchically by setting `type` to `application/ai-catalog+json`: "Clients processing nested catalogs SHOULD impose a maximum nesting depth to prevent circular references. A depth limit of 4 is RECOMMENDED." [^ref-1]. Official extension types include `https://ai-catalog.org/extensions/metadata` and `https://ai-catalog.org/extensions/policy-urls` (introduced in ADR-0029: "Replace the core entry fields privacyPolicyUrl and termsOfServiceUrl with one official entry extension:" [^ref-1][^ref-13]).

### Discovery, conformance levels, and progressive trust

Domain-level discovery uses RFC 8615 well-known URIs and RFC 8288 link relations: "To support automated discovery, hosts MAY serve an AI Catalog at the following well-known URI [[RFC8615]]: /.well-known/ai-catalog.json Clients performing domain-level discovery SHOULD attempt to retrieve this well-known URL." and "Websites MAY advertise their AI Catalog by including an ai-catalog link relation in HTTP responses or HTML documents. This enables AI agents, crawlers, and other automated clients to discover the catalog associated with any website without prior knowledge of its location." [^ref-1].

"This specification defines three conformance levels. Each level builds on the previous one. Implementations MUST satisfy all requirements of their declared level." [^ref-1] — Level 1 (Minimal Catalog), Level 2 (Discoverable Catalog), and Level 3 (Trusted Catalog) [^ref-1][^ref-2] — paired with a four-layer progressive trust model: "This specification supports a progressive trust model. Each layer builds on the previous one, adding confidence without requiring all consumers to implement every layer. Consumers choose the level appropriate to their threat model." [^ref-1]. Under ADR-0028 [^ref-12], each entry can carry an `entry.trustManifests` array of independent contributor manifests [^ref-1][^ref-12], mitigating the catalog-write substitution attack analyzed in `specification/trust-manifest-threat-model.md` [^ref-14]. Every signed Trust Manifest or catalog snapshot uses a detached compact JWS over RFC 8785 JCS bytes with `typ` set to `ai-catalog-trust-manifest+jws` or `ai-catalog+jws` [^ref-1]. ADR-0027 defines the `did-web-v1` verification profile (`did:web` root DID + `ES256` P-256 `assertionMethod`) [^ref-1][^ref-11], and the specification mandates strict SSRF controls during verification fetches [^ref-1]. Informative mapping guides also bind AI Catalogs to OCI v1.1+ registries [^ref-16], CNCF xRegistry [^ref-17], and MCP Server Cards [^ref-15].

### Relationship to ARD, MCP Server Cards, and RFC 9727

1. **[ARD](https://agenticweb.wiki/protocols/ard/) (`/.well-known/ard.json` vs. `/.well-known/ai-catalog.json`):** ARD v0.9 (28 May 2026) originally used `/.well-known/ai-catalog.json` [^ref-18]. On 9 July 2026, AI Catalog ADR-0017 [^ref-10] and ARD ADR 0010 [^ref-19] agreed on loose coupling, and ARD v0.91 (26 August 2026) moved ARD's normative discovery path to `/.well-known/ard.json` while retaining `/.well-known/ai-catalog.json` as an optional predecessor path [^ref-20].
2. **[MCP Server Cards](https://agenticweb.wiki/protocols/mcp-server-cards/) (`SEP-2127`):** Merged as Final on 6 October 2026 [^ref-22], SEP-2127 and `modelcontextprotocol/ext-server-card` (`docs/discovery.md`) normatively adopt `/.well-known/ai-catalog.json` (`application/ai-catalog+json`) for domain-level discovery of MCP Server Cards [^ref-21][^ref-23].
3. **[API Catalog (RFC 9727)](https://agenticweb.wiki/protocols/api-catalog-rfc9727/) (`/.well-known/api-catalog`):** Published in June 2025 on the IETF Standards Track, RFC 9727 defines `/.well-known/api-catalog` using RFC 9264 `application/linkset+json` for HTTP API linksets [^ref-24].

Although Section 10 of `specification/ai-catalog.md` includes IANA registration templates (`URI Suffix:: ai-catalog.json` [^ref-1]), direct inspection of the IANA Well-Known URIs, Link Relations, and Media Types registries on 29 October 2026 confirms that `ai-catalog.json`, `ai-catalog`, and `application/ai-catalog+json` are not yet registered with IANA.

# Examples

```http
GET https://{origin}/.well-known/ai-catalog.json
# parse: A 200 JSON response (application/ai-catalog+json or application/json) with specVersion and an entries array.
# on absent: No /.well-known/ai-catalog.json manifest published at this origin.
```

# Knowledge Graph

* **Lifecycle Step**: [1 Discover](/category/discover/index.md)
* **Pairs with**: [Agentic Resource Discovery (ARD)](/okf/protocols/ard.md), [MCP Server Cards](/okf/protocols/mcp-server-cards.md), [api-catalog (RFC 9727)](/okf/protocols/api-catalog-rfc9727.md), [Model Context Protocol](/okf/protocols/mcp.md), [Official MCP Registry](/okf/protocols/mcp-registry.md), [Agent2Agent Protocol (A2A)](/okf/protocols/a2a.md)
* **Related terms**: [Well-known URI](/okf/terms/well-known.md), [Agentic Resource Discovery (ARD) manifest](/okf/terms/ard-manifest.md)
* **Compared in**: [Agentic Resource Discovery (ARD) vs AI Catalog well-known file](/compare/ard-vs-ai-catalog-well-known-file/index.md), [MCP Server Cards vs AI Catalog well-known file](/compare/mcp-server-cards-vs-ai-catalog-well-known-file/index.md)

[^ref-1]: Agent Card Working Group, AI Catalog Specification (specification/ai-catalog.md, specVersion 1.0 draft), checked 2026-10-29: "This document defines the AI Catalog: a typed, nestable JSON container for discovering heterogeneous AI artifacts. Each entry declares its artifact type via a type identifier (which is an IANA media type) and may reference or embed the native artifact metadata. A minimal catalog is simply a list of entries — names, types, and URLs — requiring no additional infrastructure." "The AI Catalog is intentionally agnostic about the artifacts it indexes. It does not define or constrain the schema of MCP server manifests, A2A agent cards, or any other artifact format. Instead, it relies on type identifiers to indicate what each entry is, and delegates the definition of artifact-specific metadata to the respective protocol specifications." "An AI Catalog document is identified by the media type: application/ai-catalog+json" "An AI Catalog document is a JSON object that MUST contain the following members: specVersion: A string indicating the version of this specification that the catalog conforms to, in "Major.Minor" format (e.g., "1.0"). See Version Handling for compatibility rules. entries: An array of Catalog Entry objects as defined in Catalog Entry. This array MAY be empty." "An artifact publisher that wants an entry identifier to be preserved when the artifact appears in other catalogs SHOULD use the AI Catalog-specific urn:air naming structure with its own domain in the {publisher} segment. A catalog operator incorporating an entry for the first time with a publisher-authorized urn:air identifier MUST preserve that identifier exactly." "A Catalog Entry MUST contain exactly one of the following members to provide the artifact content: url: A string containing a URL where the full artifact document can be retrieved. The document served at this URL SHOULD be served with the media type declared in the type field. data: A JSON value containing the complete artifact document inline. The structure of this value is determined by the type field and is opaque to this specification." "The Publisher object identifies the entity responsible for an artifact. It appears on the Catalog Entry and is the canonical location for publisher information." "A Trust Manifest is an OPTIONAL collection of one contributor's trust metadata about the artifact represented by an entry. The entry's trustManifests array contains these independent contributions. Each manifest MUST contain contributor and MAY contain the optional members below." "This profile is selected by the exact profile value did-web-v1. It authenticates a signer using a root did:web DID and an ES256 assertion key." "Publisher authorization: The entry MUST use the standard urn:air syntax. Its {publisher} component is the text following urn:air: and preceding the next colon and MUST satisfy the root did:web domain restrictions above. The authenticated signer identity MUST exactly match did:web: followed by that component." "Verification procedures direct consumers to fetch artifact URLs, evidence references (attestation.uri, statementUri, and registryUri), and identity-resolution endpoints derived from signing metadata. These inputs may be attacker-controlled before authentication, so these fetches are a server-side request forgery (SSRF) and denial-of-service surface." "Clients processing nested catalogs SHOULD impose a maximum nesting depth to prevent circular references. A depth limit of 4 is RECOMMENDED." "While publishers are free to create custom extensions, this specification defines a set of "Official" known types for commonly requested schemas: 1. Metadata (https://ai-catalog.org/extensions/metadata) - Used to store generic, schemaless key-value pairs. 2. Policy URLs (https://ai-catalog.org/extensions/policy-urls) - Links to the policies governing an artifact, defined below." "To support automated discovery, hosts MAY serve an AI Catalog at the following well-known URI [[RFC8615]]: /.well-known/ai-catalog.json Clients performing domain-level discovery SHOULD attempt to retrieve this well-known URL." "Websites MAY advertise their AI Catalog by including an ai-catalog link relation in HTTP responses or HTML documents. This enables AI agents, crawlers, and other automated clients to discover the catalog associated with any website without prior knowledge of its location." "This specification defines three conformance levels. Each level builds on the previous one. Implementations MUST satisfy all requirements of their declared level." "This specification supports a progressive trust model. Each layer builds on the previous one, adding confidence without requiring all consumers to implement every layer. Consumers choose the level appropriate to their threat model." "This section registers the ai-catalog.json well-known URI in the IANA "Well-Known URIs" registry [[RFC8615]]. URI Suffix:: ai-catalog.json Change Controller:: Agent Card Working Group" (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/specification/ai-catalog.md)
[^ref-2]: Agent Card Working Group, AI Catalog (published ReSpec specification at ai-catalog.io/spec/), checked 2026-10-29: "The specification defines three conformance levels — Minimal, Discoverable, and Trusted — allowing implementations to start with a simple list of entries and progressively add host identity, well-known URI discovery, and verifiable trust metadata as needed." "Status of This Document This is a draft document and may be updated at any time." (https://ai-catalog.io/spec/)
[^ref-3]: Agent Card Working Group, Agent-Card/ai-catalog Common AI Catalog and Registry Standard (README.md), checked 2026-10-29: "This is a temporary working repo maintained by the Linux Foundation. Proposals and changes will be made in public in this repo. This project will be moved to a permanent location a later date with a permanent governance model." "Important Note: The AI Catalog standard does not replace or redefine protocol-specific artifact formats. It provides a common discovery and trust layer around them." (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/README.md)
[^ref-4]: Agent Card Working Group, Agent-Card/ai-catalog Governance (GOVERNANCE.md), checked 2026-10-29: "The AI Catalog project is governed by the Technical Steering Committee." "At the inception of the Project, four TSC members will be nominated. Two will be nominated by MCP Core Maintainers (https://github.com/modelcontextprotocol/modelcontextprotocol/blob/main/MAINTAINERS.md) and two will be nominated by the the Linux Foundation A2A Technical Steering Committee (https://github.com/a2aproject/A2A/blob/main/GOVERNANCE.md)." (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/GOVERNANCE.md)
[^ref-5]: Agent Card Working Group, Agent-Card/ai-catalog License (LICENSE.md), checked 2026-10-29: "Unless otherwise noted, this repository uses a split-license model. Software And Code Software and code in this repository are licensed under the Apache License, Version 2.0." "The specification and documentation in this repository are licensed under the Creative Commons Attribution 4.0 International License." (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/LICENSE.md)
[^ref-6]: Agent Card Working Group, Agent-Card/ai-catalog Maintainers (MAINTAINERS.md), checked 2026-10-29: "Repository: Agent-Card/ai-catalog-rust" "Cisco" "Luca Muscariello" "AWS" "Jeffrey Damick" (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/MAINTAINERS.md)
[^ref-7]: GitHub REST API, Agent-Card/ai-catalog repository metadata (created 2025-10-29), checked 2026-10-29: ""html_url": "https://github.com/Agent-Card/ai-catalog", "description": "Working repository for common AI Card standard"" ""created_at": "2025-10-29T23:15:51Z"" (https://api.github.com/repos/Agent-Card/ai-catalog)
[^ref-8]: Junjie Bu (mindpower) and Luca Muscariello (muscariello), Agent-Card/ai-catalog Pull Request #4: spec: AI card and AI catalog draft proposal (opened 2025-11-05, merged 2026-03-11), checked 2026-10-29: ""title": "spec: AI card and AI catalog draft proposal"" ""created_at": "2025-11-05T16:39:57Z"" ""merged_at": "2026-03-11T13:44:15Z"" (https://api.github.com/repos/Agent-Card/ai-catalog/pulls/4)
[^ref-9]: Agent Card Working Group, ADR 0014: Move from mediaType to type in Catalog Entries and Remove mediaType in Attestations (2026-04-30, updated 2026-06-25), checked 2026-10-29: "We will rename the mediaType field to type in the CatalogEntry schema. The type field is an open text format, so any string value is accepted. To ensure clarity of ownership and governance, the recognized "known types" are partitioned into core protocol types and integrated third-party/ecosystem types:" (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/adr/0014-media-type-to-type.md)
[^ref-10]: Agent Card Working Group, ADR-0017: Loose Coupling of ARD and AI-Catalog (discussed 2026-07-02, agreed 2026-07-09), checked 2026-10-29: "AI-Catalog will proceed without native @context support and will instead rely on simpler mechanisms (such as an extensions map) for minimal extensions. ARD will evolve its data model independently to fully support the rich, namespaced metadata and semantic schemas required for comprehensive, web-scale agentic resource discovery." (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/adr/0017-ard-loose-coupling.md)
[^ref-11]: Agent Card Working Group, ADR-0027: Define a did:web Signature Profile for Entry Trust Manifests (2026-09-04), checked 2026-10-29: "AI Catalog defines one signature profile for signed Entry Trust Manifests: The artifact identifier uses the standard urn:air syntax defined in Catalog Entry. The {publisher} component is a lowercase ASCII DNS domain name. The Trust Manifest issuer is exactly the root did:web DID for that domain. The JWS algorithm is ES256. The signing key is a P-256 publicKeyJwk authorized by the current DID document's assertionMethod relationship." (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/adr/0027-did-web-entry-signature-profile.md)
[^ref-12]: Agent Card Working Group, ADR-0028: Independent Trust Manifests and Whole-Object Signatures (2026-09-12), checked 2026-10-29: "Replace entry.trustManifest with an entry.trustManifests array. Each Trust Manifest identifies its contributor with an absolute identity URI. The contributor is required even when the manifest is unsigned. A signed manifest has one signature, whose authenticated signer must exactly match contributor, and a subject identifying the artifact release." (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/adr/0028-independent-trust-manifests-and-whole-object-signatures.md)
[^ref-13]: Agent Card Working Group, ADR-0029: Define the Policy URLs Extension (2026-10-05), checked 2026-10-29: "Replace the core entry fields privacyPolicyUrl and termsOfServiceUrl with one official entry extension:" (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/adr/0029-define-the-policy-urls-extension.md)
[^ref-14]: Agent Card Working Group, Trust Manifest Threat Model (specification/trust-manifest-threat-model.md, 2026-06-20), checked 2026-10-29: "It exists to answer the substitution-attack concern raised in ADR-0009: "The substitution attack of changing out the trust manifest is very real, especially if there's no tamper-proofness built in."" (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/specification/trust-manifest-threat-model.md)
[^ref-15]: Agent Card Working Group, Mapping to MCP Servers (docs/mappings/mcp-servers.md), checked 2026-10-29: "The documented, supported path is to reference each server's MCP Server Card (SEP-2127) as the artifact content of a Catalog Entry." (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/docs/mappings/mcp-servers.md)
[^ref-16]: Agent Card Working Group, Mapping to OCI Distribution (docs/mappings/oci-distribution.md), checked 2026-10-29: "Of the binding invariants, the OCI binding delegates identity, content integrity, and signing to OCI's own primitives. Consequently entry.digest is expected to equal the OCI descriptor digest of the served artifact, and the Trust Manifest signatures MAY be omitted from the packed representation because Cosign/Notation referrers carry signing instead." (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/docs/mappings/oci-distribution.md)
[^ref-17]: Agent Card Working Group, Mapping to xRegistry (docs/mappings/xregistry.md), checked 2026-10-29: "An AI Catalog document maps to an xRegistry Group whose Resources are the catalog entries; each entry's artifact is the Resource document." (https://raw.githubusercontent.com/Agent-Card/ai-catalog/main/docs/mappings/xregistry.md)
[^ref-18]: Junjie Bu, R.V. Guha, and Shaun Smith, Agentic Resource Discovery (ARD) Specification v0.9 (Draft, 2026-05-28), checked 2026-10-29: "4.1 The Capability Manifest (ai-catalog.json) A manifest file hosted at /.well-known/ai-catalog.json lists the available artifacts." (https://raw.githubusercontent.com/ards-project/ard-spec/main/spec/ard-v0.9.md)
[^ref-19]: ARD Working Group and R.V. Guha, ADR 0010: Loose Coupling Between ARD Entries and AI Catalog Entries (2026-07-09), checked 2026-10-29: "ARD is a search mechanism which necessarily has to synthesize signals from many sources, whereas ai-catalog wants to be the "master" descriptor from the provider of the service." "So an AIR is the ai-catalog entry core plus flat, namespaced extensions. Nothing else changes." (https://raw.githubusercontent.com/ards-project/ard-spec/main/adr/0010-ard-and-ai-catalog-loose-coupling.md)
[^ref-20]: Junjie Bu, R.V. Guha, and Shaun Smith, Agentic Resource Discovery (ARD) Specification v0.91 (Proposal, 2026-08-26), checked 2026-10-29: "A consumer resolving a domain's entries MUST fetch /.well-known/ard.json, and MUST honour a rel="ard" link. ARD's predecessor specified the path /.well-known/ai-catalog.json and the link relation ai-catalog; a consumer MAY additionally consult these, and a consumer that does treats them as equivalent entry sources." "A resource that remains only at /.well-known/ai-catalog.json may not be found, since consulting that path is optional for consumers — a publisher on the predecessor path SHOULD move to ard.json." (https://raw.githubusercontent.com/ards-project/ard-spec/main/spec/ard.md)
[^ref-21]: David Soria Parra, Sam Morrow, and Tadas Antanavicius, SEP-2127: MCP Server Cards - HTTP Server Discovery - Model Context Protocol (created 2026-01-21, Final), checked 2026-10-29: "The AI Catalog provides a decentralized, protocol-agnostic mechanism for identifying AI artifacts. An AI Catalog entry can link to or embed an MCP Server Card, leaving the catalog responsible for domain-level discovery and the Server Card responsible for MCP-specific identity and connection details." "For automated domain-level discovery, an AI Catalog can be published at /.well-known/ai-catalog.json. The.well-known URI pattern is an established IETF standard (RFC 8615) used by many protocols for service discovery, including OAuth 2.0 Authorization Server Metadata (RFC 8414)." (https://modelcontextprotocol.io/seps/2127-mcp-server-cards)
[^ref-22]: David Soria Parra (dsp-ant), modelcontextprotocol/modelcontextprotocol Pull Request #2127: SEP-2127: MCP Server Cards - HTTP Server Discovery (merged 2026-10-06), checked 2026-10-29: ""created_at": "2026-01-21T17:35:02Z"" ""merged_at": "2026-10-06T14:43:46Z"" (https://api.github.com/repos/modelcontextprotocol/modelcontextprotocol/pulls/2127)
[^ref-23]: MCP Server Card Working Group, modelcontextprotocol/ext-server-card Discovery via AI Catalog (docs/discovery.md), checked 2026-10-29: "For automated domain-level discovery, hosts MAY publish one at: /.well-known/ai-catalog.json Clients performing domain-level discovery SHOULD attempt to retrieve this well-known URL. When served over HTTP, the document SHOULD use the application/ai-catalog+json media type." (https://raw.githubusercontent.com/modelcontextprotocol/ext-server-card/main/docs/discovery.md)
[^ref-24]: Kevin Smith (Vodafone), RFC 9727: api-catalog: A Well-Known URI and Link Relation to Help Discovery of APIs (IETF Standards Track, June 2025), checked 2026-10-29: "This document defines the "api-catalog" well-known URI and link relation. It is intended to facilitate automated discovery and usage of published Application Programming Interfaces (APIs). A request to the api-catalog resource will return a document providing information about, and links to, the Publisher's APIs." (https://www.rfc-editor.org/rfc/rfc9727.html)
[^ref-25]: Agent Card Working Group, Agent-Card/ai-catalog-rust AI Catalog Rust (README.md), checked 2026-10-29: "ai-catalog, ai-catalog-validate, ai-catalog-trust, and ai-catalog-discover implement the specification. ai-catalog-oci is a convenience for distributing catalogs over existing registry infrastructure; OCI packaging is not part of the spec." (https://raw.githubusercontent.com/Agent-Card/ai-catalog-rust/main/README.md)
[^ref-26]: Agent Card Working Group, Agent-Card/ai-catalog-go AI Catalog Go SDK (README.md), checked 2026-10-29: "A Go toolkit for consuming and validating AI Catalog documents, the JSON format for making AI artifacts (MCP servers, A2A agents, datasets, model cards, nested catalogs, …) discoverable. It implements the AI Catalog specification." "discovery.Discover takes a URL or a bare domain and follows the spec's discovery procedure: a catalog at the URL itself, then a Link header with rel="ai-catalog", then an HTML <link rel="ai-catalog">, then /.well-known/ai-catalog.json." (https://raw.githubusercontent.com/Agent-Card/ai-catalog-go/main/README.md)
[^ref-27]: Agent Card Working Group, Agent-Card/ai-catalog-cli ai-catalog (README.md), checked 2026-10-29: "Command-line tool for inspecting, validating, and packaging AI Catalog documents." "The crate is named ai-catalog-cli; the installed binary is ai-catalog." "SKILL.md follows the Agent Skills standard and teaches an AI agent to use this CLI to discover, inspect, and install AI artifacts from a catalog. It requires the ai-catalog binary on PATH." (https://raw.githubusercontent.com/Agent-Card/ai-catalog-cli/main/README.md)
[^ref-28]: Agent Card Working Group, Agent-Card/awesome-ai-catalogs Awesome AI Catalogs (README.md), checked 2026-10-29: "This repository's ai-catalog.json is itself an AI Catalog whose entries are public catalogs. It is published unchanged, along with a browsable site." "Every listed catalog has been validated with the ai-catalog CLI and must stay valid to remain listed." (https://raw.githubusercontent.com/Agent-Card/awesome-ai-catalogs/main/README.md)
[^ref-29]: SpecWorks, spec-works/ai-catalog AI Catalog (README.md), checked 2026-10-29: "A.NET and Python toolkit for working with AI Catalog documents (application/ai-catalog+json). Parse, validate, serialize, explore, and install AI artifacts from catalog registries." (https://raw.githubusercontent.com/spec-works/ai-catalog/main/README.md)
[^ref-30]: TomeVault, tomevault-io/ai-catalog-reference AI Catalog Level 3 Trust Manifest — Reference Implementation (README.md), checked 2026-10-29: "A runnable signer and verifier for the AI Catalog Level 3 "Trusted Catalog" trust layer: signed subject binding, identity anchoring, an algorithm allowlist, freshness, substantive-member enforcement, and SSRF-safe fetching." (https://raw.githubusercontent.com/tomevault-io/ai-catalog-reference/main/README.md)
[^ref-31]: Cisco Outshift, AGNTCY Directory live AI Catalog endpoint (ai-catalog.outshift.io/.well-known/ai-catalog.json), checked 2026-10-29: ""displayName":"AGNTCY Directory"" ""identifier":"https://ai-catalog.outshift.io"" (https://ai-catalog.outshift.io/.well-known/ai-catalog.json)
[^ref-32]: Google Chrome Lighthouse, Release v13.5.0 (published 2026-09-18, shipping ard-schema audit #17168), checked 2026-10-29: ""tag_name": "v13.5.0"" ""published_at": "2026-09-18T16:18:20Z"" "ard-schema: add Agent Resource Discovery audit (#17168)" (https://api.github.com/repos/GoogleChrome/lighthouse/releases/tags/v13.5.0)
[^ref-33]: Google Chrome Lighthouse, Issue #17251: [Agentic Web] ard-schema not updated for ARD v0.91 (opened 2026-09-22, closed 2026-10-09), checked 2026-10-29: "Confirmed in source at HEAD, core/gather/gatherers/agentic/ard.js:" (https://api.github.com/repos/GoogleChrome/lighthouse/issues/17251)
[^ref-34]: Sam Morrow (SamMorrowDrums) and David Soria Parra (dsp-ant), modelcontextprotocol/python-sdk Pull Request #2951: Add experimental Server Cards support (SEP-2127) (opened 2026-06-22), checked 2026-10-29: "A server builds a Server Card from its own identity, serves it from a Starlette app, and advertises it through an AI Catalog. A client discovers a host's catalog, then fetches and validates the cards it references." (https://api.github.com/repos/modelcontextprotocol/python-sdk/pulls/2951)
[^ref-35]: GitHub, github/agentfinder-catalog Agent Finder Catalog (README.md), checked 2026-10-29: "The Catalog workflow checks the GitHub MCP Registry hourly, independently of repository changes, and opens or updates the automation/update-ai-catalog pull request when the generated catalog changes." (https://raw.githubusercontent.com/github/agentfinder-catalog/main/README.md)
[^ref-36]: Shaun Smith (evalstate), huggingface/hf-discover Pull Request #31: [codex] Align ARD catalog registry URLs (merged 2026-06-15), checked 2026-10-29: "Advertise registry service base URLs in /.well-known/ai-catalog.json instead of /search endpoints." (https://api.github.com/repos/huggingface/hf-discover/pulls/31)
[^ref-37]: Anthropic, live AI Catalog endpoint at platform.claude.com/.well-known/ai-catalog.json, checked 2026-10-29: ""identifier":"urn:air:platform.claude.com:mcp:docs"" ""type":"application/mcp-server-card+json"" ""url":"https://platform.claude.com/docs/mcp/server-card"" (https://platform.claude.com/.well-known/ai-catalog.json)
[^ref-38]: GitHub, live AI Catalog endpoint at github.com/.well-known/ai-catalog.json, checked 2026-10-29: ""identifier":"urn:air:github.com:mcp:github-mcp-server"" ""type":"application/mcp-server-card+json"" ""url":"https://api.githubcopilot.com/mcp/server-card"" (https://github.com/.well-known/ai-catalog.json)
[^ref-39]: GitHub MCP Registry, live AI Catalog endpoint at api.mcp.github.com/.well-known/ai-catalog.json, checked 2026-10-29: ""displayName":"GitHub MCP Registry"" ""identifier":"urn:ai:registry.modelcontextprotocol.io:microsoft:markitdown"" (https://api.mcp.github.com/.well-known/ai-catalog.json)
[^ref-40]: Cloudflare Developer Documentation, live AI Catalog endpoint at developers.cloudflare.com/.well-known/ai-catalog.json, checked 2026-10-29: ""displayName":"Cloudflare Developer Documentation"" ""identifier":"did:web:developers.cloudflare.com"" (https://developers.cloudflare.com/.well-known/ai-catalog.json)
[^ref-41]: Hugging Face, live AI Catalog endpoint at huggingface.co/.well-known/ai-catalog.json, checked 2026-10-29: ""identifier":"urn:air:huggingface.co:registry:discover"" ""displayName":"Hugging Face Discover Registry"" ""type":"application/ai-registry+json"" (https://huggingface.co/.well-known/ai-catalog.json)
[^ref-42]: Vercel, live AI Catalog endpoint at vercel.com/.well-known/ai-catalog.json, checked 2026-10-29: ""displayName":"Vercel"" ""identifier":"https://vercel.com"" ""documentationUrl":"https://vercel.com/docs/agent-resources"" (https://vercel.com/.well-known/ai-catalog.json)
[^ref-43]: AgentAvow, live signed Level 3 AI Catalog endpoint at agentavow.com/.well-known/ai-catalog.json, checked 2026-10-29: ""signerDid": "did:web:agentavow.com"" ""signerKid": "did:web:agentavow.com#catalog-es256-v1"" (https://agentavow.com/.well-known/ai-catalog.json)
[^ref-44]: Diel Duarte (Resend), Support for AI Catalog and MCP Server Card · Resend (2026-10-26), checked 2026-10-29: "AI Catalog at resend.com/.well-known/ai-catalog.json lists the AI artifacts Resend offers, including the remote MCP server." (https://resend.com/changelog/ai-catalog-mcp-server-card)
[^ref-45]: Resend, live AI Catalog endpoint at resend.com/.well-known/ai-catalog.json, checked 2026-10-29: ""identifier": "urn:air:resend.com:mcp:mcp"" ""type": "application/mcp-server-card+json"" ""url": "https://mcp.resend.com/mcp/server-card"" (https://resend.com/.well-known/ai-catalog.json)
[^ref-46]: Junjie Bu and Srinivas Krishnan, Announcing the Agentic Resource Discovery specification - Google Developers Blog (2026-06-17), checked 2026-10-29: "Publishing the catalog: The provider hosts an ai-catalog.json file at a well-known path on its domain." (https://developers.googleblog.com/announcing-the-agentic-resource-discovery-specification/)
[^ref-47]: Ramanathan Guha, Introducing the Agentic Resource Discovery specification - Command Line (2026-06-17), checked 2026-10-29: "That's why we're introducing the Agentic Resource Discovery (ARD) specification, an open specification that establishes a secure common layer for the publishing, indexing, and discovery of AI capabilities." (https://commandline.microsoft.com/agentic-resource-discovery-specification-ard/)
[^ref-48]: Ben Burtenshaw and Shaun Smith, Agentic Resource Discovery: Let agents search (2026-06-17), checked 2026-10-29: "A static manifest format called ai-catalog.json lets publishers host their capabilities at a well-known URL." (https://huggingface.co/blog/agentic-resource-discovery-launch)
[^ref-49]: GitHub Changelog, Agent finder for GitHub Copilot now available - GitHub Changelog (2026-06-17), checked 2026-10-29: "Describe a task in plain language and agent finder searches an index of available AI resources, then returns ranked matches Copilot can pull in on demand from any catalog you point it at." (https://github.blog/changelog/2026-06-17-agent-finder-for-github-copilot-now-available/)
[^ref-50]: Matt G. Southern (Search Engine Journal), Google, Microsoft Back Draft AI Agent Discovery Spec (2026-06-18), checked 2026-10-29: "ARD is licensed under Apache 2.0 and builds on the AI Catalog data model maintained by a working group under the Linux Foundation." (https://www.searchenginejournal.com/google-microsoft-back-draft-ai-agent-discovery-spec/579894/)
[^ref-51]: Ajin Baby, Agentic Resource Discovery: I Read the Spec, Then Published a Catalog · cloudandsre.com (2026-07-02), checked 2026-10-29: "On June 17, 2026, Google, Microsoft, and Hugging Face jointly announced Agentic Resource Discovery (ARD), with a coalition behind it that includes Amazon, Cisco, GitHub, Salesforce, Snowflake, and Nvidia." (https://cloudandsre.com/blog/agentic-resource-discovery-ard/)
[^ref-52]: Dries Buytaert, Helping agents discover my site search with Agentic Resource Discovery | Dries Buytaert (2026-07-23), checked 2026-10-29: "You opt in by publishing a manifest at /.well-known/ai-catalog.json." (https://dri.es/helping-agents-discover-my-site-search-with-agentic-resource-discovery)
[^ref-53]: Amanda Caswell (The New Stack), MCP was supposed to solve the agent tooling problem. It missed a step. - The New Stack (2026-08-31), checked 2026-10-29: "The Model Context Protocol has become a common way for AI applications to connect to external tools and data, but it assumes the client already knows which server it wants to use." (https://thenewstack.io/ard-agent-discovery-specification/)
[^ref-54]: Kin Lane (API Evangelist), AI Catalog Standard (ai-catalog.json) - API Evangelist Standards, checked 2026-10-29: "The AI Catalog Standard is the data model underneath Agentic Resource Discovery — a JSON manifest a publisher hosts at /.well-known/ai-catalog.json that lists the agentic resources it offers, whatever they happen to be: MCP servers, agent cards, skills, workflows or plain HTTP APIs." (https://standards.apievangelist.com/store/ai-catalog/)
