Agent Utilities

Feed Match Check · HTTP + MCP

Catch a price mismatch before your agent trusts it.

Compare a feed record with product JSON-LD from HTML you already have.

No account, API key, card or wallet. No automatic paid fallback.

A concrete example

A fictional coffee feed says $9.49. The supplied page declares $8.99 for the same SKU. The check flags the mismatch and preserves the evidence.

Synthetic demonstration, generated with the real handler during the build. Not a live price, customer task or testimonial.

1. Supply your input

Complete JSON input up to 16384 UTF-8 bytes. Supply HTML plus a feed record; include SKU, GTIN or MPN to establish identity.

Your input is sent to Agent Utilities when you run the check. Data policy.

2. Inspect the result

Build-time example output. Run to check your input.

{
  "mode": "free-preview",
  "chargedMicroUsd": "0",
  "executionPerformed": true,
  "result": {
    "status": "mismatch",
    "identityStatus": "match",
    "selection": {
      "status": "selected",
      "reason": "webpage_main_entity",
      "selectedId": "product-1"
    },
    "checks": [
      {
        "field": "sku",
        "feedValue": "COFFEE-500",
        "pageValues": [
          "COFFEE-500"
        ],
        "status": "match",
        "reason": "supplied_evidence_comparison"
      },
      {
        "field": "gtin",
        "feedValue": null,
        "pageValues": [],
        "status": "not_supplied",
        "reason": "feed_field_not_supplied"
      },
      {
        "field": "mpn",
        "feedValue": null,
        "pageValues": [],
        "status": "not_supplied",
        "reason": "feed_field_not_supplied"
      },
      {
        "field": "price",
        "feedValue": "9.49",
        "pageValues": [
          "8.99"
        ],
        "status": "mismatch",
        "reason": "supplied_evidence_comparison"
      },
      {
        "field": "currency",
        "feedValue": "USD",
        "pageValues": [
          "USD"
        ],
        "status": "match",
        "reason": "supplied_evidence_comparison"
      },
      {
        "field": "availability",
        "feedValue": "in_stock",
        "pageValues": [
          "in_stock"
        ],
        "status": "match",
        "reason": "supplied_evidence_comparison"
      }
    ],
    "evidence": {
      "productSources": [
        {
          "block": 0,
          "pointer": "/@graph/1"
        }
      ],
      "offerSources": [
        {
          "productBlock": 0,
          "productPointer": "/@graph/1",
          "offerBlock": 0,
          "offerPointer": "/@graph/1/offers"
        }
      ]
    },
    "warnings": [],
    "scope": "Comparison of supplied feed and JSON-LD page evidence, not current retailer state. Price/stock comparisons require an exact supplied GTIN, SKU or MPN match; conflicting identity blocks them. Group variants, multiple conflicting offers, missing and incomplete fields stay inconclusive. No fetching, merchant-account access or live verification."
  },
  "limits": {
    "maxInputBytes": 16384
  }
}

Give this request to your agent

HTTP needs no installation or credential. The request below always uses the bounded free endpoint.

curl --fail-with-body 'https://agent-utilities.agent-utilities.workers.dev/v1/preview/commerce.feed-page-compare' \
  -H 'Content-Type: application/json' \
  --data-binary @- <<'JSON'
{
  "html": "<link rel=\"canonical\" href=\"https://example.com/coffee\"><script type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https://example.com/coffee\",\"mainEntity\":{\"@id\":\"#coffee\"}},{\"@type\":\"Product\",\"@id\":\"#coffee\",\"name\":\"Coffee beans\",\"sku\":\"COFFEE-500\",\"offers\":{\"@type\":\"Offer\",\"price\":\"8.99\",\"priceCurrency\":\"USD\",\"availability\":\"https://schema.org/InStock\"}},{\"@type\":\"Product\",\"name\":\"Related mug\",\"sku\":\"MUG-1\",\"offers\":{\"@type\":\"Offer\",\"price\":\"12.00\",\"priceCurrency\":\"USD\"}}]}</script>",
  "pageUrl": "https://example.com/coffee",
  "feed": {
    "sku": "COFFEE-500",
    "price": "9.49",
    "currency": "USD",
    "availability": "in_stock"
  }
}
JSON

Hosted MCP

Connect https://agent-utilities.agent-utilities.workers.dev/mcp/remote?category=commerce in your MCP client, then call agent_utilities_feed_page_compare_preview with the editable input above.

{
  "name": "agent_utilities_feed_page_compare_preview",
  "arguments": {
    "html": "<link rel=\"canonical\" href=\"https://example.com/coffee\"><script type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https://example.com/coffee\",\"mainEntity\":{\"@id\":\"#coffee\"}},{\"@type\":\"Product\",\"@id\":\"#coffee\",\"name\":\"Coffee beans\",\"sku\":\"COFFEE-500\",\"offers\":{\"@type\":\"Offer\",\"price\":\"8.99\",\"priceCurrency\":\"USD\",\"availability\":\"https://schema.org/InStock\"}},{\"@type\":\"Product\",\"name\":\"Related mug\",\"sku\":\"MUG-1\",\"offers\":{\"@type\":\"Offer\",\"price\":\"12.00\",\"priceCurrency\":\"USD\"}}]}</script>",
    "pageUrl": "https://example.com/coffee",
    "feed": {
      "sku": "COFFEE-500",
      "price": "9.49",
      "currency": "USD",
      "availability": "in_stock"
    }
  }
}

Claude, Qwen and other client setup · Full trial contract, schema and limits

What the result means

Compares supplied feed and JSON-LD, not rendered page text or current retailer state. Missing identity, conflicting offers and unsupported evidence remain inconclusive. No website fetching, merchant-account access or automatic feed edits.

A mismatch or an inconclusive answer can be a useful result. Inspect the status and reasons before acting.

Did this solve your task?

Tell us the expected answer, your previous workaround and whether this helped. Use public or sanitized data only. If you use it again for another real task, tell us separately.

Share feedback by email

No purchase needed to give feedback.

When the free limit is too small

Full Feed Match Check calls cost $0.0010 each. Service credits start at $1. Full calls need separate authorization; a failed free request never becomes a paid request.

Credit workspace ↗