Installation
I pasted the script but the dashboard still shows 'Script not yet detected'
I pasted the script but the dashboard still shows 'Script not yet detected'
Ctrl+U (Windows) or Cmd+U (Mac) in your browser to view the raw HTML source. Search for openhermit — the script tag should appear near the bottom, before </body>.2. Check the API key is correct
Compare the data-api-key in your HTML with the key shown in your dashboard. They must match exactly.3. Check the browser console
Open DevTools (F12) → Console. Look for any errors related to script.js. If you see No data-api-key found, the attribute is missing or misspelled.4. Check for Content Security Policy (CSP) blocks
If your site has a strict CSP, it may block the script from loading or making requests to openhermit.com. You’ll see a CSP error in the Console. Add https://openhermit.com to your script-src and connect-src directives.5. Visit the page in a browser
The script runs in the visitor’s browser — it doesn’t run during server-side rendering. Open the page in a real browser (not just deploy it) and the ping will fire.The script is detected but no actions appear
The script is detected but no actions appear
- The form is on a different page. Visit the page that actually contains the contact form, booking widget, etc. The script scans one page at a time.
- The form loads dynamically. React/Vue/Angular apps render forms after the initial HTML. Wait 2–3 seconds after the form appears, then check the dashboard.
- The form isn’t a real
<form>element. Some builders (Webflow, custom React components) usedivandonClickinstead of<form>and<input>. The script can’t detect these automatically. See Manual detection.
I'm using Next.js and the script isn't detecting forms
I'm using Next.js and the script isn't detecting forms
strategy="afterInteractive" — not lazyOnload or beforeInteractive:afterInteractive runs after React hydration, which means the page’s forms are already in the DOM when the script scans. lazyOnload waits too long on fast connections and can miss forms.Also make sure the Script component is in your root layout (app/layout.tsx), not just on one page.The script is on my homepage but I have forms on other pages
The script is on my homepage but I have forms on other pages
- Next.js: Add to
app/layout.tsx - WordPress: Add via
functions.phpwithwp_footerhook - Webflow/Squarespace: Use the platform’s “Footer Code” setting — this adds it globally
- HTML sites: Copy the script tag into every HTML file’s
</body>section
Form detection
My contact form was detected but the wrong type was assigned
My contact form was detected but the wrong type was assigned
data-mcp-action attribute to your <form> element:contact_form, booking, newsletter, signup, purchase, quote, login, search, upload, supportMy Calendly / Typeform / HubSpot form isn't being detected
My Calendly / Typeform / HubSpot form isn't being detected
- Calendly: The Calendly widget script has fully loaded before OpenHermit runs. If Calendly loads slowly, the detection may miss it. The MutationObserver will re-scan when new content appears, so it usually self-corrects within a second.
- HubSpot: The
window.hbsptobject must be present. If HubSpot is loaded via Google Tag Manager with a delay, the detection may miss it. - Typeform: The embed must use a
<div data-tf-widget>element or atf-widgetelement.
data-mcp-action attributes manually to the container element of the widget.The action name detected is wrong or unclear
The action name detected is wrong or unclear
aria-label to your form:Agent prompts
I configured prompts but agents aren't seeing them
I configured prompts but agents aren't seeing them
WebMCP Agent Instructions — you should see a hidden div with your prompts.If prompts appear in the manifest but not in the DOM, the script may not be re-running after you saved the prompts. Clear your browser cache and reload the page.Can I use different prompts for different pages?
Can I use different prompts for different pages?
Analytics
Why do I see 0 interactions even though agents are visiting?
Why do I see 0 interactions even though agents are visiting?
- The visiting agent’s user-agent string matches a known AI agent pattern (GPTBot, ClaudeBot, etc.)
- The agent submits a form or triggers a tracked event
I see 'Unknown agent' in my interactions
I see 'Unknown agent' in my interactions
- Custom or internal agent tools
- New agents not yet in our detection list
- Agents that spoof a regular browser user-agent
Account & billing
What's included in the free plan?
What's included in the free plan?
- 1 website
- Contact form detection only
- Up to 1,000 agent interactions per month
- Basic analytics
Can I delete a website and add it again?
Can I delete a website and add it again?

