The Direct Index
Report · scanned 2026-10-19

What an AI agent reads on North Shore Dental Ceramics

An assistant's crawler fetches the page once, without running JavaScript, and reads the text, the structured data and the links. Below is what it gets from nsdc.com.au, taken from the copy the scanner kept.

1,982

characters of text without JavaScript

none

structured data for the business

0

of 3 AI crawlers turned away at the edge

Text

The words an agent gets

Title: none. First 1,800 of 1,982 characters:

import React from 'react' import importPhoto from '../../api/importPhoto' import Button from './Button' import ButtonActionProvider from '../Actions/ButtonActionProvider' import ExternalLinkButton from './ExternalLinkButton' import useGlobalConfig from '../Contexts/useGlobalConfig' import { getImportedPhotoUrl } from '../../utils/linkGenerator' /** * Helper to render a series of buttons to install a template kit. * * @param photoId * @param photoTitle * @param showLabel * @param customActionHook * @param completeCallback * @param errorCallback * @returns {*} * @constructor */ const ImportPhotoButton = ({ photoId, photoTitle, showLabel = false, customActionHook = null, completeCallback = null, errorCallback = null }) => { const { getDownloadedItemId, addDownloadedItem } = useGlobalConfig() const importedPhotoId = getDownloadedItemId(photoId) let isAlreadyCompleted = !!importedPhotoId if (typeof window.envatoElements.photoImportCompleteCallback !== 'undefined') { // This variable is set in "main.jsx" and lets us reach into WordPress core code. // If this is set then we treat the download action as incomplete, this means we fire // importPhoto() again when in Deep Photo Integration mode. This allows our API to // return the JSON required for deep integration to work correctly. // The photo isn't imported twice due to a check in PHP so all good. isAlreadyCompleted = false } return ( } LoadingButton={} ErrorButton={} SuccessButton={} CompletedButton={} actionHook={() => customActionHook ? customActionHook() : importPhoto({ photoId, photoTitle })} isAlreadyCompleted={isAlreadyCompleted} completedCallback={(data) => { if (data && data.success && data.imported_photo_id) { if (typeof window.envatoElements.photoImportCompleteCallback !== 'undefined') { window.envatoElements.photo
Facts

What it can say about the business

A business type in JSON-LDno
Nameno
Telephoneno
Addressno
Opening hoursno
Menu or price listnothing
Cuisine in structured datano
JSON-LD blocks0
Actions

The links it would act on

No booking or ordering link found. An agent has nothing to act on.

Everything here comes from fetching the homepage once as a crawler. The report turns it into a score and a list of fixes, with code to paste.