{
  "specVersion": "1.0",
  "host": {
    "displayName": "THORChain Swap",
    "documentationUrl": "https://swap.thorchain.org/developers",
    "logoUrl": "https://swap.thorchain.org/logo.svg",
    "trustManifest": {
      "assurance": "self-attested",
      "identity": {
        "name": "THORChain Swap",
        "domain": "swap.thorchain.org",
        "canonicalUrl": "https://swap.thorchain.org",
        "verificationMethod": "https-origin",
        "verificationEvidence": [
          "https://swap.thorchain.org/.well-known/ai-catalog.json",
          "https://swap.thorchain.org/about.md",
          "https://swap.thorchain.org/contact.md",
          "https://github.com/thorchain/swap.thorchain"
        ]
      },
      "attestations": [
        {
          "type": "self-attested",
          "claim": "Read-only: the resource returns public THORChain data and changes no state.",
          "evidence": "https://swap.thorchain.org/AGENTS.md"
        },
        {
          "type": "self-attested",
          "claim": "Non-custodial: the server holds no keys, signs nothing, and submits no transactions.",
          "evidence": "https://swap.thorchain.org/AGENTS.md"
        },
        {
          "type": "self-attested",
          "claim": "No credential is required, and none granted by this host can move funds.",
          "evidence": "https://swap.thorchain.org/AGENTS.md"
        }
      ],
      "policy": {
        "termsOfService": "https://www.thorchain.org/terms-of-use",
        "privacyPolicy": "https://www.thorchain.org/privacy-policy",
        "contact": "mailto:contact@thorchain.org",
        "contactPage": "https://swap.thorchain.org/contact",
        "dataRetention": "The public discovery, MCP, and quote surfaces store no caller data; support submissions are retained only to answer them."
      },
      "signature": null
    }
  },
  "entries": [
    {
      "identifier": "urn:air:swap.thorchain.org:mcp:server",
      "displayName": "THORChain Swap MCP server",
      "type": "application/mcp-server-card+json",
      "url": "https://swap.thorchain.org/.well-known/mcp/server-card.json",
      "description": "Read-only THORChain quote, liquidity-pool, and network-status tools.",
      "tags": [
        "mcp",
        "thorchain",
        "swap"
      ],
      "capabilities": [
        "get_swap_quote",
        "list_pools",
        "get_network_status"
      ],
      "version": "0.4.1",
      "trustManifest": {
        "assurance": "self-attested",
        "identity": {
          "name": "THORChain Swap",
          "domain": "swap.thorchain.org",
          "canonicalUrl": "https://swap.thorchain.org",
          "verificationMethod": "https-origin",
          "verificationEvidence": [
            "https://swap.thorchain.org/.well-known/ai-catalog.json",
            "https://swap.thorchain.org/about.md",
            "https://swap.thorchain.org/contact.md",
            "https://github.com/thorchain/swap.thorchain"
          ]
        },
        "attestations": [
          {
            "type": "self-attested",
            "claim": "Read-only: the resource returns public THORChain data and changes no state.",
            "evidence": "https://swap.thorchain.org/AGENTS.md"
          },
          {
            "type": "self-attested",
            "claim": "Non-custodial: the server holds no keys, signs nothing, and submits no transactions.",
            "evidence": "https://swap.thorchain.org/AGENTS.md"
          },
          {
            "type": "self-attested",
            "claim": "No credential is required, and none granted by this host can move funds.",
            "evidence": "https://swap.thorchain.org/AGENTS.md"
          }
        ],
        "policy": {
          "termsOfService": "https://www.thorchain.org/terms-of-use",
          "privacyPolicy": "https://www.thorchain.org/privacy-policy",
          "contact": "mailto:contact@thorchain.org",
          "contactPage": "https://swap.thorchain.org/contact",
          "dataRetention": "The public discovery, MCP, and quote surfaces store no caller data; support submissions are retained only to answer them."
        },
        "signature": null
      }
    },
    {
      "identifier": "urn:air:swap.thorchain.org:api:openapi",
      "displayName": "THORChain Swap OpenAPI description",
      "type": "application/vnd.oai.openapi+json",
      "url": "https://swap.thorchain.org/.well-known/openapi.json",
      "description": "OpenAPI 3.1 description for the public support endpoints.",
      "tags": [
        "openapi",
        "rest",
        "support"
      ],
      "trustManifest": {
        "assurance": "self-attested",
        "identity": {
          "name": "THORChain Swap",
          "domain": "swap.thorchain.org",
          "canonicalUrl": "https://swap.thorchain.org",
          "verificationMethod": "https-origin",
          "verificationEvidence": [
            "https://swap.thorchain.org/.well-known/ai-catalog.json",
            "https://swap.thorchain.org/about.md",
            "https://swap.thorchain.org/contact.md",
            "https://github.com/thorchain/swap.thorchain"
          ]
        },
        "attestations": [
          {
            "type": "self-attested",
            "claim": "Descriptive metadata only: the document describes public resources on this origin.",
            "evidence": "https://swap.thorchain.org/AGENTS.md"
          },
          {
            "type": "self-attested",
            "claim": "Served from the same TLS origin as the resources it describes.",
            "evidence": "https://swap.thorchain.org/AGENTS.md"
          }
        ],
        "policy": {
          "termsOfService": "https://www.thorchain.org/terms-of-use",
          "privacyPolicy": "https://www.thorchain.org/privacy-policy",
          "contact": "mailto:contact@thorchain.org",
          "contactPage": "https://swap.thorchain.org/contact",
          "dataRetention": "The public discovery, MCP, and quote surfaces store no caller data; support submissions are retained only to answer them."
        },
        "signature": null
      }
    },
    {
      "identifier": "urn:air:swap.thorchain.org:api:catalog",
      "displayName": "THORChain Swap API catalog",
      "type": "application/linkset+json",
      "url": "https://swap.thorchain.org/.well-known/api-catalog",
      "description": "RFC 9727 catalog for the public API and its documentation.",
      "tags": [
        "api-catalog",
        "rfc9727",
        "rest"
      ],
      "trustManifest": {
        "assurance": "self-attested",
        "identity": {
          "name": "THORChain Swap",
          "domain": "swap.thorchain.org",
          "canonicalUrl": "https://swap.thorchain.org",
          "verificationMethod": "https-origin",
          "verificationEvidence": [
            "https://swap.thorchain.org/.well-known/ai-catalog.json",
            "https://swap.thorchain.org/about.md",
            "https://swap.thorchain.org/contact.md",
            "https://github.com/thorchain/swap.thorchain"
          ]
        },
        "attestations": [
          {
            "type": "self-attested",
            "claim": "Descriptive metadata only: the document describes public resources on this origin.",
            "evidence": "https://swap.thorchain.org/AGENTS.md"
          },
          {
            "type": "self-attested",
            "claim": "Served from the same TLS origin as the resources it describes.",
            "evidence": "https://swap.thorchain.org/AGENTS.md"
          }
        ],
        "policy": {
          "termsOfService": "https://www.thorchain.org/terms-of-use",
          "privacyPolicy": "https://www.thorchain.org/privacy-policy",
          "contact": "mailto:contact@thorchain.org",
          "contactPage": "https://swap.thorchain.org/contact",
          "dataRetention": "The public discovery, MCP, and quote surfaces store no caller data; support submissions are retained only to answer them."
        },
        "signature": null
      }
    },
    {
      "identifier": "urn:air:swap.thorchain.org:a2a:agent-card",
      "displayName": "THORChain Swap A2A agent card",
      "type": "application/a2a-agent-card+json",
      "url": "https://swap.thorchain.org/.well-known/agent-card.json",
      "description": "A2A discovery card for the public THORChain Swap interfaces.",
      "tags": [
        "a2a",
        "discovery",
        "thorchain"
      ],
      "trustManifest": {
        "assurance": "self-attested",
        "identity": {
          "name": "THORChain Swap",
          "domain": "swap.thorchain.org",
          "canonicalUrl": "https://swap.thorchain.org",
          "verificationMethod": "https-origin",
          "verificationEvidence": [
            "https://swap.thorchain.org/.well-known/ai-catalog.json",
            "https://swap.thorchain.org/about.md",
            "https://swap.thorchain.org/contact.md",
            "https://github.com/thorchain/swap.thorchain"
          ]
        },
        "attestations": [
          {
            "type": "self-attested",
            "claim": "Descriptive metadata only: the document describes public resources on this origin.",
            "evidence": "https://swap.thorchain.org/AGENTS.md"
          },
          {
            "type": "self-attested",
            "claim": "Served from the same TLS origin as the resources it describes.",
            "evidence": "https://swap.thorchain.org/AGENTS.md"
          }
        ],
        "policy": {
          "termsOfService": "https://www.thorchain.org/terms-of-use",
          "privacyPolicy": "https://www.thorchain.org/privacy-policy",
          "contact": "mailto:contact@thorchain.org",
          "contactPage": "https://swap.thorchain.org/contact",
          "dataRetention": "The public discovery, MCP, and quote surfaces store no caller data; support submissions are retained only to answer them."
        },
        "signature": null
      }
    },
    {
      "identifier": "urn:air:swap.thorchain.org:skills:index",
      "displayName": "THORChain Swap Agent Skills index",
      "type": "application/json",
      "url": "https://swap.thorchain.org/.well-known/agent-skills/index.json",
      "description": "Agent Skills v0.2 index for public swap, quote, pool, and network guidance.",
      "tags": [
        "agent-skills",
        "discovery",
        "thorchain"
      ],
      "trustManifest": {
        "assurance": "self-attested",
        "identity": {
          "name": "THORChain Swap",
          "domain": "swap.thorchain.org",
          "canonicalUrl": "https://swap.thorchain.org",
          "verificationMethod": "https-origin",
          "verificationEvidence": [
            "https://swap.thorchain.org/.well-known/ai-catalog.json",
            "https://swap.thorchain.org/about.md",
            "https://swap.thorchain.org/contact.md",
            "https://github.com/thorchain/swap.thorchain"
          ]
        },
        "attestations": [
          {
            "type": "self-attested",
            "claim": "Descriptive metadata only: the document describes public resources on this origin.",
            "evidence": "https://swap.thorchain.org/AGENTS.md"
          },
          {
            "type": "self-attested",
            "claim": "Served from the same TLS origin as the resources it describes.",
            "evidence": "https://swap.thorchain.org/AGENTS.md"
          }
        ],
        "policy": {
          "termsOfService": "https://www.thorchain.org/terms-of-use",
          "privacyPolicy": "https://www.thorchain.org/privacy-policy",
          "contact": "mailto:contact@thorchain.org",
          "contactPage": "https://swap.thorchain.org/contact",
          "dataRetention": "The public discovery, MCP, and quote surfaces store no caller data; support submissions are retained only to answer them."
        },
        "signature": null
      }
    }
  ]
}