UCP status report
harborfreight.com
harborfreight.com responded, but its profile did not pass schema validation.
HTTP 200
Release none
Checked 17 Oct, 10:01 UTC
To fix first
Problem
Serve profile as application/json
The profile URL did not return parseable JSON. How to fix →
Also worth fixing
To fix
Publish Organization schema (JSON-LD) on the homepage
No Organization-typed JSON-LD detected on your homepage. How to fix →
To fix
Publish a /llms.txt brand brief
No /llms.txt file detected at the root of your domain. How to fix →
To fix
Publish a sitemap.xml
No sitemap.xml detected at the root of your domain. How to fix →
To fix
Add Open Graph meta tags to the homepage
OG tags missing or incomplete on your homepage. How to fix →
To fix
Add a mobile viewport meta tag
No viewport meta tag detected on your homepage. How to fix →
Passed
4 OK
HTTPS, AI bot access, Public keys published, No validation warnings
Show all 4
- HTTPS: Profile URL uses https://
- AI bot access: robots.txt allows /.well-known/ucp
- Public keys published: Keys published at the top level
- No validation warnings: No outstanding validation issues
Check trace
How harborfreight.com answered our check
The five ways an agent can reach this store, what each one met, and every request we made.
1 of 5 open
4 requests · 410 ms at the store · public requests only
4 requests · 410 ms at the store · public requests only
-
Finding the profileOpen
-
Acting for the buyerNot offered
-
In the buyer's browserNot offered
-
Calling its servicesNone
-
Sending the buyer to the websiteNot declared
UCP Checkerpublic requests
- 2 requestsFinding the profile/.well-known/ucp · 200
- read from profileActing for the buyernot declared
- read from profileIn the buyer's browsernot declared
- not calledCalling its servicesnone declared
- read from profileSending to the websitenot declared
- 2 requestsOutside UCPhomepage · /llms.txt
Open
01 · Finding the profile2 requests
Served at /.well-known/ucp with 200 OK, 132.0 KB. robots.txt allows /.well-known/ucp.
Not offered
02 · Acting for the buyerread from profile
The profile doesn't declare identity linking, so an agent can't act for a signed-in buyer.
Not offered
03 · In the buyer's browserread from profile
No Embedded service is declared.
None
04 · Calling its servicesnot called
No services are declared.
Not declared
05 · Sending the buyer to the websiteread from profile
No permalink declared. Whether error replies carry a continue_url shows only in an agent run.
- 01 PROFILEGET /.well-known/ucp → 200, 132.0 KB of JSON410 ms
- 01 PROFILEGET /robots.txt → allows /.well-known/ucp–
- 01 PROFILEProfile did not pass schema validation: Response is not a valid JSON objectlocal
- OUTSIDE UCPGET / → 403, no Organization schema found–
- OUTSIDE UCPGET /llms.txt → 403, not found–
UCP profile as served 3.9 KB · 28 lines
<!doctype html>
<html lang="en" class="noRoute" style="">
<head>
<link rel="preconnect" href="//cdn.dynamicyield.com" />
<link rel="preconnect" href=“//st.dynamicyield.com" />
<link rel="preconnect" href="//rcom.dynamicyield.com">
<link rel="preconnect" href="//images.harborfreight.com" />
<link rel="preconnect" href="https://api.harborfreight.com" />
<link rel="dns-prefetch" href="//www.googletagmanager.com" />
<link rel="dns-prefetch" href="//www.gstatic.com" />
<link rel="dns-prefetch" href="//colrep.sitelabweb.com" />
<link rel="dns-prefetch" href="//p.brsrvr.com" />
<link rel="dns-prefetch" href="//cdns.brsrvr.com" />
<link rel="dns-prefetch" href="//js-agent.newrelic.com" />
<link rel="dns-prefetch" href="//connect.facebook.net" />
<link rel="dns-prefetch" href="//bam.nr-data.net" />
<link rel="dns-prefetch" href="//cdn.cookielaw.org" />
<link rel="dns-prefetch" href="//client.px-cloud.net" />
<link rel="preload" href="/public/webfonts/roboto-latin-700-normal.d89b03c5..woff2" as="font" type="font/woff2" crossorigin />
<link rel="preload" href="/public/webfonts/roboto-latin-500-normal.1c7e8aa0..woff2" as="font" type="font/woff2" crossorigin />
<link rel="preload" href="/public/webfonts/fa-regular-400.fa2e58ed..woff2" as="font" type="font/woff2" crossorigin />
<link rel="preload" href="/public/webfonts/fa-solid-900.dcef2f69..woff2" as="font" type="font/woff2" crossorigin />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta charset="utf-8" />
<script>
window.NREUM||(NREUM={});NREUM.info = {"agent":"","beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"NRJS-31f40a7446f037c7cbb","applicationID":"1002349783","transactionName":"M1VUZEVQCkQCARJbDQofeF9FXAVbChgDVjcWWRka","applicationTime":75.994489,"queueTime":0}; (window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:["bam.nr-data.net"]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"1019957990",accountID:"2815589",trustKey:"1322840",xpid:"Vg4GVFNbARABVFFQBAUOUVwC",licenseKey:"NRJS-31f40a7446f037c7cbb",applicationID:"1002349783",browserID:"1019957990"};;/*! For license information please see nr-loader-spa-1.324.0.min.js.LICENSE.txt */
(()=>{var e={8122(e,t,r){"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),s=0===Object.keys(r).length?e:r;for(let a in s)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):e[a]instanceof Map||e[a]instanceof Set||e[a]instanceof Date||e[a]instanceof RegExp?r[a]=e[a]:"object"==typeof e[a]&&null!==t[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){r[a]||(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555(e,t,r){"use strict";r.d(t,{f:()=>a});var n=r(384),i=r(8122);const s={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0};function a(e){try{return!!e.licenseKey&&!!e.errorBeacon&&!!e.applicationID}catch(e){return!1}}r.d(t,["D",0,e=>(0,i.a)(e,s)])},7699(e,t,r){"use strict";var n=r(860);const i=1e6,s={[n.K7.logging]:!0,[n.K7.genericEvents]:!0,[n.K7.jserrors]:!0,[n.K7.ajax]:!0};r.d(t,["It",0,i,"KC",0,s,"qh",0,"SESSION_ERROR","zd",0,5e5])},9324(e,t,r){"use strict";r.d(t,["A",0,"@newrelic/rrweb","x",0,"1.324.0"])},981(e,t,r){"use strict";r.d(t,["R",0,{AJAX:"AjaxRequest",PA:"PageAction",UA:"UserAction",BP:"BrowserPerformance",WS:"WebSocket",SPV:"Secu...
Is harborfreight.com your store?
Claim it with one DNS record.
Why is harborfreight.com's profile invalid?
We found a UCP profile, but it failed schema validation against the official spec. The findings on this page list what failed — usually missing required fields, wrong data types, or version mismatches. Agents reject profiles that don't validate, so this needs fixing before harborfreight.com is agent-ready.
How can harborfreight.com fix this?
Run the profile through our UCP Validator — it shows line-by-line schema deviations and how to fix each one. Most invalid profiles are quick fixes: a missing field, a typo, or an outdated spec version.
Does this mean harborfreight.com is broken for shoppers?
No — the regular website still works fine for human customers. Only AI agents that strictly validate the profile will refuse to use the UCP integration. The store just isn't agent-ready until the validation issues are resolved.
How was this UCP report for harborfreight.com generated?
Our crawler fetches
harborfreight.com/.well-known/ucp directly, parses the profile against the official UCP JSON schema, checks robots.txt for its rules for AI crawlers, and runs payment-handler validation. No manual review, no opinions — just what the profile actually says. The check ran 2 days ago.How do I get a newer result for harborfreight.com?
This page shows the stored result of our last check and when it was observed. To run a new check, use Check again on this page.
Why does this status matter?
Universal Commerce Protocol is an open standard that lets a UCP agent find out what a store sells, build a cart and check out through a published contract instead of reading web pages. A valid UCP profile is how a store declares that support.
