{
  "$comment": "Agent card — 2026-08-22. Describes the SERVICES an agent can buy and the one endpoint it may call. It deliberately does NOT advertise the measurement engine: that is internal, not for sale, and no engagement grants access to it. If you add a skill here, it must be something an outside agent can actually invoke.",
  "protocolVersion": "0.3.0",
  "name": "LoudPixel",
  "$comment_description": "2026-09-13: this said only what every rival's card says — questions run across engines, answers read, verdict written — so an agent comparing cards had nothing to choose on. The two clauses that lead now are the two measurements no other service in this category performs, and they are why the engagements are named 'Agentic Commerce' rather than 'AI visibility'.",
  "description": "Audits delivered by a person, answering two things no other AI-visibility service measures: whether an AI agent could complete a purchase from the site, graded 0 to 4 from finding an item to a confirmed order, and how many AI assistants are already reading its pages, recorded server-side where analytics cannot see them. Buying-intent questions are also run across six AI engines and the answers read, producing a written verdict plus a fix list ranked by value. Served in English and French.",
  "url": "https://loudpixel.ai",
  "provider": {
    "organization": "LoudPixel",
    "url": "https://loudpixel.ai"
  },
  "version": "1.0.0",
  "$comment_documentationUrl": "2026-09-04: was /llms-full.txt, which the gate then answered with the home page, so the card advertised a dead URL and every audit engine that follows redirects scored it as live. The full corpus IS served now (2026-09-14) and is listed under machineSurfaces; this field stays /llms.txt because it is published in BOTH modes and indexes everything, so it is true whichever way the switch is set — a card is read once and cached.",
  "documentationUrl": "https://loudpixel.ai/llms.txt",
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "stateTransitionHistory": false
  },
  "defaultInputModes": ["application/json"],
  "defaultOutputModes": ["application/json"],
  "skills": [
    {
      "id": "submit_brief",
      "name": "Submit an engagement brief",
      "description": "After purchasing an engagement, submit the domain and the buying-intent questions the client wants to be named for. A human confirms the question set before any work begins; nothing runs automatically.",
      "tags": ["commerce", "onboarding", "seo", "ai-visibility"],
      "examples": [
        "Submit a brief for an audit of example.com with three buying questions",
        "Start the fix pack we just purchased, order reference LS-12345"
      ],
      "inputModes": ["application/json"],
      "outputModes": ["application/json"]
    },
    {
      "$comment": "2026-09-15. The one thing an outside agent can call here with no purchase and no account, and the output the whole business is built to produce — so it belongs on the card by the card's own rule above. Free, read-only, no credit spent; a domain never scanned answers 404 rather than an empty document. Level NAMES are public; what composes a level is not, and this description says what a caller gets, never how it is measured.",
      "id": "read_published_audit",
      "name": "Read the published audit of a domain",
      "description": "Free and anonymous. Returns the dated audit LoudPixel has published for a domain: whether six AI engines name it when buyers ask what to use, its agentic-commerce level from 0 (invisible) to 4 (operated) — whether an AI agent could get from finding an item to a confirmed order — and the fix list in plain language. GET https://loudpixel.ai/api/v1/scorecard/{domain}/report with format=json for fields keyed by question, or format=markdown for the document itself; lang=en or fr. GET https://loudpixel.ai/api/v1/scorecard for the domains that have one. Described in openapi.json.",
      "tags": ["audit", "ai-visibility", "agentic-commerce", "free"],
      "examples": [
        "Read LoudPixel's published audit of example.com",
        "Could an AI agent buy from example.com, according to LoudPixel?"
      ],
      "inputModes": ["application/json"],
      "outputModes": ["application/json", "text/markdown"]
    }
  ],
  "securitySchemes": {
    "orderReference": {
      "type": "apiKey",
      "in": "body",
      "name": "order_reference",
      "description": "The order id issued at checkout. Required on every brief; a brief without one is refused."
    }
  },
  "additionalInterfaces": [
    { "transport": "HTTP+JSON", "url": "https://loudpixel.ai/api/v1/brief" }
  ],
  "offers": {
    "$comment": "PRICES AND NAMES COME FROM ONE LIST — loudpixel/products/commerce/offers.py (tracker LP-928). This block quoted $490 / $1,900 / $600 until 2026-09-01 while the site charged $499 / $1,999 / $699, so an agent reading this card quoted a price we would not honour and the buyer found out at the checkout. tests/test_one_price_list.py fails the build if these drift again. `url` is the anchor on the engagements page: an agent that follows it lands on the offer it read, where a human completes the purchase.",
    "catalog": "https://loudpixel.ai/services/engagements",
    "format": "schema.org OfferCatalog in JSON-LD",
    "items": [
      { "name": "Agentic Commerce audit", "price": "499.00", "priceCurrency": "USD", "leadTime": "P5D", "url": "https://loudpixel.ai/services/engagements#audit" },
      { "name": "Agentic Commerce fix pack", "price": "1999.00", "priceCurrency": "USD", "leadTime": "P28D", "url": "https://loudpixel.ai/services/engagements#fix-pack" },
      { "name": "Agentic Commerce watch retainer", "price": "699.00", "priceCurrency": "USD", "billingPeriod": "MONTH", "url": "https://loudpixel.ai/services/engagements#watch" }
    ],
    "policies": {
      "terms": "https://loudpixel.ai/terms",
      "privacy": "https://loudpixel.ai/privacy",
      "returns": "https://loudpixel.ai/refund-policy"
    },
    "$comment2": "Paying does not provision anything — a person does the work. Stated here because a card that lists prices and no such line reads, to an agent, like a self-serve product."
  },
  "postSell": {
    "$comment": "What a buyer's agent can do after the money moves. The checkout protocols give it two status events and nothing else, so everything below is a LINK it hands its user. `{order_id}` is the Stripe Checkout Session id from the buyer's receipt; the order page asks for at most their email address, which is the rule ACP sets for a merchant permalink and the one our own audit grades clients against.",
    "order_status": "https://loudpixel.ai/orders/{order_id}",
    "invoice": "https://loudpixel.ai/orders/{order_id}",
    "cancel": "https://loudpixel.ai/refund-policy",
    "json": "https://loudpixel.ai/api/v1/orders/{order_id}?email={buyer_email}"
  },
  "machineSurfaces": {
    "$comment": "The documents an agent should read next, in one place, so it does not have to guess our paths (tracker LP-904). Every URL here is served in service mode — the gate passes /.well-known/, /openapi.json, /facts.json, /feed.xml and /sitemap.xml, and the two llms files are answered inline. The MCP ENDPOINT is deliberately NOT listed: this deployment closes the tool surface to everyone but the owner, and a card that advertises an endpoint an outside agent cannot call is the same broken promise as a price we do not honour. Its NAMEPLATE is listed (2026-09-15): /.well-known/mcp.json says in its own access field who may sign in today, so pointing at it promises nothing the endpoint refuses. A closed door with a nameplate is honest; an unmarked door is not.",
    "openapi": "https://loudpixel.ai/openapi.json",
    "api_catalog": "https://loudpixel.ai/.well-known/api-catalog",
    "ucp": "https://loudpixel.ai/.well-known/ucp",
    "mcp": "https://loudpixel.ai/.well-known/mcp.json",
    "llms": "https://loudpixel.ai/llms.txt",
    "llms_full": "https://loudpixel.ai/llms-full.txt",
    "facts": "https://loudpixel.ai/facts.json",
    "sitemap": "https://loudpixel.ai/sitemap.xml",
    "feed": "https://loudpixel.ai/feed.xml",
    "offers": "https://loudpixel.ai/services/engagements"
  }
}
