Blog

Notes on search data and the answers built on it

What we learn building a search and SEO data API, written for the people who have to implement it. Working code, real trade-offs, and the limits said out loud.

RSS feed

3 min read

AI crawlers read your HTML, not your JavaScript

Before you measure whether an AI assistant cites you, check whether it can read you at all. The test is one curl command, and the result is often uncomfortable.

  • ai-visibility
  • crawling
  • geo
8 min read

Grounding an LLM agent with search data

Search results are the wrong shape for a prompt. How to turn a SERP into grounding context an agent can use: dedupe, rerank, budget tokens, keep citations.

  • grounding
  • rag
  • llm-agents
  • search-api
  • context-window
8 min read

Designing MCP search tools an agent can actually use

Why mirroring your REST API into MCP makes agents worse, and the rules that fix it: curated tool-belts, routing descriptions, compact returns, bounded output.

  • mcp
  • model-context-protocol
  • agents
  • tool-design
  • claude
  • cursor
7 min read

Product matching at scale, without guessing

Matching offers across retailers is an identifier problem before it is a model problem. Blocking, attribute normalisation, and why four verdicts beat true/false.

  • product-matching
  • ecommerce
  • entity-resolution
  • pricing
  • digital-shelf
7 min read

Rank tracking by API, without fooling yourself

Build rank tracking that reports something true: pin location and device, diff sets instead of averaging positions, and know why keyword volumes never agree.

  • rank-tracking
  • serp-api
  • seo
  • keyword-volume
  • monitoring
6 min read

Reading Google AI Overviews programmatically

Google ships no official AI Overview API. What the block is, how it differs from AI Mode, how to pull it with its citations, and why one sample tells you nothing.

  • ai-overview
  • ai-mode
  • serp-api
  • google
  • citations
8 min read

Scraping vs licensed data: what actually differs

CFAA, hiQ, the EU TDM opt-out, the database right and GDPR Article 14 — where web data sourcing is risky, and what a provenance receipt can and cannot prove.

  • compliance
  • gdpr
  • web-scraping
  • tdm
  • data-sourcing
  • provenance
8 min read

What GEO is, and how to actually measure it

Generative engine optimisation has no rank to track. A measurement design that survives non-determinism: share of answer, denominators, sample size, consensus.

  • geo
  • ai-visibility
  • share-of-answer
  • measurement
  • llm