Artificial IntelligenceAI AutomationSanity

How Claude Keeps Our Entire Website Content Up to Date in the Background

How we use Claude and Sanity CMS to continuously audit, research, and refresh our technical content turning content maintenance into an intelligent background process with human review.

12 min read
Abstract illustration of an AI system automatically updating content across a website in the background.

Every website has a content graveyard. Blog posts written eighteen months ago that still reference deprecated API versions. Case studies citing statistics from reports that have since been updated. Platform comparison pages that don't mention features released last quarter. Most organizations know this content exists, but auditing it, researching current alternatives, and rewriting it takes time nobody has.

Not HTBlue.com.

We built an engine to fix that. It runs every week, quietly reviewing our oldest content, researching what's changed in the platforms and technologies we cover, and either updating what needs updating or flagging what should be retired. The engine is powered by Claude AI connected to our Sanity CMS. No cron jobs babysitting fragile scripts. No spreadsheets tracking what was last reviewed. Just an intelligent system that understands both our content and the industries we write about.

Here's how we built it and what we've learned running it in production.

The Problem with Content Decay

Content decay isn't a theoretical SEO concern. It's a measurable business problem.

According to research from Siege Media, content freshness is now a major ranking factor across seven leading AI models, including GPT-4o and LLaMA-3. That matters because search is no longer just Google. Your content now competes for visibility in AI Overviews, ChatGPT citations, and Perplexity answers. Studies show that 85% of AI Overview citations were published in the last two years, with 44% published in 2025 alone. If your content is stale, it's invisible to the fastest-growing discovery channels on the web.

Google's Query Deserves Freshness (QDF) algorithm has become increasingly sophisticated. Websites that regularly refresh content for time-sensitive keywords see 47% higher click-through rates and 31% longer session durations compared to sites that let content sit. For an agency like HT Blue that writes about enterprise platforms in constant evolution, every month of staleness compounds the problem. Sitecore ships updates quarterly. Sanity iterates on its Content Lake and MCP capabilities monthly. Optimizely's product roadmap shifts with each release cycle. Our content has to keep pace.

The traditional approach to content freshness involves editorial calendars, manual audits, and a content strategist spending hours cross-referencing articles against platform changelogs. It works, but it doesn't scale. And it certainly doesn't happen consistently enough when your team is busy shipping client work.

Why We Chose an Agentic Approach

We could have built a simpler system. A script that checks publish dates, flags anything older than six months, and emails a spreadsheet to the content team. That's the approach most organizations take, and it produces the same result every time: a growing backlog of flagged content that nobody has time to address.

What we wanted was something that could actually do the work. Not just identify stale content, but understand what changed, research the current state of the technology, draft updated sections, rewrite SEO metadata, and push those changes into our CMS as reviewable drafts. That required more than automation. It required intelligence.

Claude's ability to reason about content, combined with the Sanity MCP server's capacity for structured content operations, gave us exactly the right building blocks. The MCP server allows Claude to query documents using GROQ, understand our content schema, and patch documents with full awareness of field types and validation rules. Claude brings the reasoning layer: reading an article about Sitecore XP migration strategies, recognizing that specific version numbers or feature references have changed, searching the web for current documentation, and rewriting the relevant sections while preserving the article's voice and structure.

The combination turns content maintenance from a human bottleneck into a background process with human oversight.

How the Content Audit Engine Works

The system operates on a weekly cycle, and each run follows a deliberate sequence designed to prioritize the content most at risk of decay.

Step 1: Identify the Oldest Unreviewed Content

The engine queries our Sanity dataset using GROQ to find published blog posts sorted by their updatedAt timestamp. Posts that haven't been touched in the longest time surface first. We typically process five to eight articles per weekly cycle, focusing on the oldest content first while respecting API rate limits and ensuring each piece gets thorough attention.

The GROQ query is straightforward:

groq
*[_type == "post" && defined(publishedAt)] | order(coalesce(updatedAt, publishedAt) asc)[0...8]{
  _id,
  title,
  slug,
  publishedAt,
  updatedAt,
  "categoryTitles": categories[]->title,
  tags,
  seo
}

This surfaces the articles that have gone the longest without any revision, which are almost always the ones most likely to contain outdated information.

Step 2: Analyze Content for Staleness Signals

For each article, Claude reads the full Portable Text content and evaluates it against several freshness criteria. It looks for version-specific references (like "Sitecore 10.3" or "Sanity Studio v3"), statistical claims that cite specific years or reports, feature descriptions that may have changed, and competitive comparisons that could have shifted.

Claude doesn't just pattern-match for dates. It understands context. A reference to "React 18" in a general architecture discussion is less urgent than a reference to "React 18" in a migration guide that promises specific compatibility guarantees. The system weights urgency based on how central the outdated information is to the article's core argument.

Step 3: Research Current State

This is where the agentic nature of the system becomes essential. For each flagged concern, Claude conducts targeted web searches to determine the current state of the technology. If an article references Sanity's GROQ query performance benchmarks from 2024, Claude searches for the latest documentation and performance data. If a Sitecore migration guide mentions XP-specific workflows, Claude checks whether those workflows have changed in more recent releases.

The research isn't superficial. Claude reads official documentation, release notes, and technical blog posts to build an accurate picture of what has changed. It distinguishes between minor version bumps that don't affect the article's accuracy and significant platform shifts that invalidate core recommendations.

Step 4: Draft Updates or Recommend Retirement

Based on its analysis, the engine takes one of three actions for each article.

For articles that need targeted updates, Claude drafts revised sections that incorporate current information while preserving the original author's voice and the article's overall structure. It rewrites SEO metadata, including meta titles, descriptions, and keywords, to reflect updated terminology and current search intent. These changes are pushed to Sanity as draft revisions, ready for human review.

For articles that need substantial rewrites, the system flags them with a detailed summary of what's changed and why the existing content can't be patched. This might happen when a platform has undergone a fundamental architecture shift, making the article's entire premise outdated.

For articles that should be retired, the engine recommends removal. This is rarer, but it happens. If a platform we covered has been discontinued or a technology approach has been universally abandoned, keeping the content live does more harm than good. Stale content that contradicts current reality erodes trust with the very audience we're trying to serve.

Step 5: Update SEO Metadata

Every content update includes refreshed SEO fields. Claude evaluates the current keyword landscape for the article's topic, updates the meta description to reflect the revised content, and adjusts keyword targets based on how search intent has evolved. An article originally optimized for "headless CMS comparison 2024" gets its metadata updated to reflect current terminology and competitive positioning.

The updatedAt timestamp is set to the current date, signaling to both search engines and readers that the content reflects recent review.

What Makes This Different from a Script

Plenty of teams have built content audit dashboards. They check word counts, scan for broken links, and flag pages that haven't been updated in a certain number of months. Those are useful tools, but they stop at diagnosis.

Our engine performs treatment. The critical difference is that Claude can read an article, understand what it's actually saying, determine whether those claims are still accurate, and produce revised content that maintains editorial quality. A script can tell you that an article is eighteen months old. Claude can tell you that the article's recommendation to use Sitecore's XP personalization engine needs to reflect that Sitecore has since shifted its emphasis toward Sitecore Personalize and CDP as cloud-native alternatives.

The Sanity MCP server makes the content operations seamless. Claude doesn't need custom API wrappers or database queries. It interacts with our content the same way a human editor would through Sanity Studio, just faster and more consistently. It reads the schema, understands field types, respects validation rules, and creates proper drafts that flow through our existing review workflow.

The Human-at-the-Helm Principle

We want to be clear about something: this system does not publish content autonomously. Every change Claude drafts lands in Sanity as a draft document. A human editor reviews each update before it goes live. The engine amplifies our editorial capacity, but it doesn't replace editorial judgment.

This isn't just philosophical. It's practical. AI-generated updates occasionally get nuances wrong, especially in rapidly evolving platform ecosystems where official documentation lags behind actual product behavior. Claude might draft an update referencing a feature that's been announced but not yet released, or miss a regional availability limitation that affects specific deployment scenarios. Human review catches these edge cases.

The human-at-the-helm approach also preserves voice consistency. Our blog features multiple authors, each with distinct perspectives and technical depth. When Claude updates an article originally written by our platform architect with thirty years of experience, the revised sections need to sound like they came from that same thoughtful, measured perspective. Human review ensures the updates blend seamlessly with the original voice.

Results After Running the Engine

Since deploying the content audit engine, we've seen measurable improvements across several dimensions.

Content coverage has increased significantly. Articles that previously sat untouched for twelve or more months now receive regular review cycles. Platform-specific content like our Sitecore and Optimizely comparison pieces stays current with each major release, rather than falling behind by multiple versions.

SEO performance has improved for refreshed content. Updated articles with current metadata and revised content consistently recover lost ranking positions. Our internal tracking shows that articles updated through the engine see improved click-through rates within weeks of the refreshed content going live, consistent with industry data showing that refreshed content delivers between 2.7x and 4.1x the ROI of creating entirely new articles.

Editorial efficiency has improved dramatically. Instead of spending hours identifying what needs updating and researching what's changed, our content team receives a curated queue of drafted updates ready for review. The time from "this article is stale" to "this article is current" has compressed from weeks to days.

Content retirement decisions happen proactively rather than reactively. Before the engine, outdated articles lingered until someone happened to notice them. Now, the system surfaces retirement candidates with clear reasoning, allowing the team to make informed decisions about what to keep and what to remove.

The Technical Stack

For teams considering a similar approach, here's what powers our implementation.

Claude AI provides the reasoning and research layer. Its ability to read structured content, conduct web research, and produce editorially consistent updates is the core of the system. We use Claude's extended thinking capabilities for complex content analysis where the relationship between outdated claims and current reality requires multi-step reasoning.

Sanity CMS with MCP serves as both the content repository and the operational interface. The MCP server gives Claude native access to query documents with GROQ, read full document content with schema awareness, patch specific fields without disrupting the rest of the document, and create draft revisions that flow through Sanity's existing publishing workflow. The fact that Sanity stores content as structured data in its Content Lake, rather than as rendered HTML, makes surgical updates possible. Claude can update a single paragraph's claims without touching the rest of the article's formatting or structure.

GROQ queries handle content prioritization and selection. The query language's flexibility lets us sort by staleness, filter by category, and retrieve exactly the metadata needed for Claude to make informed audit decisions.

Web search integration provides Claude with current information about platforms, technologies, and industry trends. This is what transforms the system from a content reformatter into a genuine research and update engine.

What We've Learned

Building and operating this system has taught us several things worth sharing.

First, content freshness isn't just about dates. An article published last month can be stale if it references a feature that was deprecated the week after publication. The engine's value comes from understanding context, not just checking timestamps.

Second, retirement is an undervalued content operation. Removing outdated content improves site-wide quality signals and prevents readers from encountering information that contradicts what they'll find in official documentation. Our engine's willingness to recommend removal, not just updates, has been one of its most valuable capabilities.

Third, the combination of structured content and AI reasoning is more powerful than either alone. Sanity's structured approach to content means Claude can make precise, surgical updates. Claude's reasoning means those updates reflect genuine understanding of what's changed and why it matters. Neither capability would be sufficient on its own.

Fourth, human review remains essential and probably always will. The engine catches things humans would miss through sheer volume and consistency. But humans catch things the engine misses through nuance and context. The best results come from the partnership, not from either working alone.

Content Freshness as a Competitive Advantage

For agencies and content teams operating in technology-driven industries, content freshness isn't optional. It's a competitive requirement. The platforms your clients evaluate change faster than annual content reviews can track. Search algorithms increasingly reward recency. AI-powered search tools preferentially cite recent, accurate content.

The question isn't whether to keep content fresh. It's whether to do it manually, inconsistently, and at the mercy of your team's available bandwidth, or to build intelligent systems that handle the heavy lifting while your team focuses on editorial quality and strategic direction.

We chose the second path. Claude and Sanity's MCP server made it practical. And our content has never been more current.

If your organization is struggling with content decay across a growing library of technical content, the building blocks are available today. The Model Context Protocol is open and well-documented. Sanity's structured content approach makes AI-powered operations reliable. And Claude's reasoning capabilities are mature enough to handle the nuanced editorial judgments that content freshness demands.

The hardest part isn't the technology. It's deciding that content maintenance deserves the same engineering attention as content creation. Once you make that decision, the rest follows naturally.

ClaudeSanityModel Context ProtocolContent FreshnessSEOContent AutomationAI AgentsTechnical Content
W.S. Benks
W. S. Benks

Director of AI Systems and Automation

HT Blue