SERP Domination : Analyze & Outrank Top Websites
Paste one keyword. Claude reads your top 5 Google competitors, extracts their titles, outlines, keywords, and weaknesses, then builds a brief engineered to outrank them. That brief goes straight to WordRocket, which writes a 3,000+ word SEO article with AI images. Claude waits for everything to finish, then publishes it live to your WordPress site — featured image, SEO meta, tags, and all. No writing. No briefing. No manual publishing. Keyword in, ranked article out.
SERP-to-Published Article SOP
Powered by Claude + WordRocket + WordPress
Fully automated: keyword → SERP analysis → competitive brief → AI article → images → live post
What This Does
You give Claude one keyword. It:
Reads the top 5 Google results for that keyword
Extracts titles, headings, keywords, tone, content gaps, and weaknesses
Builds a competitive content brief designed to outrank all of them
Sends the brief to WordRocket to write a 3,000+ word SEO article with images
Waits for the article and all images to finish
Publishes it live to your WordPress site
Total time: ~10–15 minutes. Zero manual writing.
One-Time Setup
Tools Required
Tool Purpose Where to Get It
Claude (Cowork / claude.ai) Runs the entire workflow claude.ai
MCP360 Google Trends + Google News connectors mcp360.ai
WordRocket AI Article writing + image generation + publishing app.wordrocket.ai
WordPress Site Where the article gets published Your existing site
Step 1 — Get your MCP360 API key
Go to mcp360.ai → Create account
API Keys → Create key → Copy it
Step 2 — Add connectors in Claude
Go to Settings → Connectors → Add custom connector for each:
Connector Name MCP URL
Google Trends https://connect.mcp360.ai/v1/google-trends/mcp?token=YOUR_KEY
Google News https://connect.mcp360.ai/v1/google-news/mcp?token=YOUR_KEY
WordRocket AI https://wordrocketapi.com
Click Always allow when prompted for each connector.
Step 3 — Connect your WordPress site to WordRocket
Log into app.wordrocket.ai
Go to Sites → Add Site → follow the connection steps
Note your WordPress Site ID (you'll need it below)
Step 4 — Set up a Client Profile in WordRocket (optional but recommended)
Go to WordRocket → Client Profiles → Create Profile
Set your brand voice, default tone, sitemap, and connected WordPress site
Note the Client Profile ID — paste it into the prompt below
The Master Prompt — Copy, Fill In, Run
How to use: Copy everything between the ---START--- and ---END--- lines. Replace every [BRACKETED VALUE] with your own details. Paste into Claude and send.
---START---
You are running a fully automated SEO content pipeline. Complete all steps without stopping. Do not ask for confirmation between steps — run the full workflow from keyword to published post.
═══════════════════════════════════
CONFIGURATION — FILL THESE IN
═══════════════════════════════════
KEYWORD: [YOUR TARGET KEYWORD — e.g. "self employed mortgage ontario"]
SITE: [YOUR WEBSITE URL — e.g. https://yoursite.com]
SITEMAP: [YOUR SITEMAP URL — e.g. https://yoursite.com/sitemap.xml]
WORDPRESS SITE ID: [YOUR WORDROCKET WORDPRESS SITE ID — from WordRocket dashboard]
CLIENT PROFILE ID: [YOUR WORDROCKET CLIENT PROFILE ID — optional, leave blank if none]
COUNTRY: [TWO-LETTER COUNTRY CODE — e.g. CA, US, GB, AU]
AUDIENCE: [WHO IS THIS FOR — e.g. "Canadian homeowners looking to refinance"]
TONE: [professional / casual / friendly / formal]
WORD COUNT: [TARGET WORD COUNT — e.g. 3200]
TAGS: [TAG1], [TAG2], [TAG3], [TAG4]
═══════════════════════════════════
STEP 1 — SERP ANALYSIS
═══════════════════════════════════
Search Google for the keyword above. Identify the top 5 ranking URLs.
For each of the top 5 articles, navigate to the page and extract:
- Full H1 title and its structure pattern
- All H2 and H3 headings (the complete outline)
- Primary keyword and secondary/LSI keywords used in title, headings, and body
- Approximate word count and reading time
- Tone and readability level
- Any data tables, statistics, or comparison elements
- GEO signals (location mentions, local regulatory bodies, city names)
Present a summary table of all 5 articles before moving to Step 2.
═══════════════════════════════════
STEP 2 — COMPETITIVE ANALYSIS
═══════════════════════════════════
Based on the 5 articles, identify:
TITLE PATTERNS: What structures do ranking titles use? (e.g. [Keyword] + [Year], "How to [Action]", "[Topic]: Complete Guide")
SHARED KEYWORDS: Which keywords appear in 3+ of the top 5? These are must-include terms.
UNIVERSAL OUTLINE TOPICS: Which H2/H3 sections appear in most articles? These are table-stakes sections you must cover.
CONTENT GAPS: What topics, angles, or data points are missing or underrepresented across all 5 articles? These are your differentiation opportunities.
WEAKNESSES: Are any articles outdated, using incorrect information, missing a local angle, too short, or too generic? Note these — you will exploit them.
TONE BENCHMARK: What reading level and tone dominates this SERP? (plain English, technical, conversational, etc.)
═══════════════════════════════════
STEP 3 — CONTENT BRIEF
═══════════════════════════════════
Based on Steps 1 and 2, produce:
WINNING TITLE: One title that incorporates the primary keyword, a year/date signal, and a value proposition. Use the best-performing structure you identified.
PRIMARY KEYWORD: [the exact keyword]
SECONDARY KEYWORDS (8–12): List LSI and semantic keywords to weave throughout the article naturally.
OPTIMAL H2/H3 OUTLINE: A full outline that covers all table-stakes topics AND fills the content gaps identified in Step 2. Minimum 8 H2 sections.
TONE GUIDANCE: 1–2 sentences on how to write this article (reading level, style, analogies to use, what to avoid).
KEY FACTS TO INCLUDE: Any statistics, data points, or authoritative sources found in your research that should be cited.
WHAT NOT TO DO: Specific errors, outdated claims, or incorrect information found in competing articles that must be avoided.
GEO SIGNALS: Local terms, city names, regulatory bodies, or location-specific data to include for GEO optimization.
═══════════════════════════════════
STEP 4 — GENERATE ARTICLE VIA WORDROCKET
═══════════════════════════════════
Using the WordRocket MCP connector, call generate_article with:
- keyword: [KEYWORD from config]
- client_profile_id: [CLIENT PROFILE ID from config, if set]
- word_count: [WORD COUNT from config]
- template: blog
- tone: [TONE from config]
- include_toc: true
- include_faq: true
- include_images: true
- include_cover_image: true
- num_inline_images: 3
- enable_research: true
- research_model: perplexity/sonar-reasoning-pro
- geo_optimization: true
- include_html_element: true
- include_internal_links: true
- sitemap_collection_ids: [from WordRocket client profile or sitemap ID]
- image_style: photorealistic
- image_aspect_ratio: 3:2
- text_on_images_policy: headline
- intended_audience: [AUDIENCE from config]
- custom_outline: [paste the H2/H3 outline from Step 3]
- additional_instructions: [paste the FULL content brief from Step 3 — title, keywords, key facts, what not to do, geo signals, tone guidance, everything]
Capture the job_id returned. Move to Step 5.
═══════════════════════════════════
STEP 5 — POLL UNTIL COMPLETE
═══════════════════════════════════
Call get_job_status every 30 seconds using the job_id from Step 4.
Keep polling until status = "done". This typically takes 5–15 minutes for a 3,000+ word article with research and images.
Do not proceed to Step 6 until status is confirmed "done".
═══════════════════════════════════
STEP 6 — VERIFY IMAGES
═══════════════════════════════════
Call get_article_images using the content_id returned from Step 4.
Check that:
- slot_index 0 (cover image) status = "done" ✅
- At least 2 of the inline images (slots 1–3) status = "done" ✅
If the cover image is not done, wait and re-check every 30 seconds until it is.
If 1 inline image is still rendering after 5 minutes, proceed with the others — do not hold up publishing indefinitely.
═══════════════════════════════════
STEP 7 — PUBLISH TO WORDPRESS
═══════════════════════════════════
Call publish_wordpress with:
- article_id: [content_id from Step 4]
- site_id: [WORDPRESS SITE ID from config]
- status: publish
- post_type: post
- tags: [TAGS from config]
═══════════════════════════════════
STEP 8 — FINAL REPORT
═══════════════════════════════════
Report back with:
- ✅ Article title (exact)
- ✅ Live URL (permalink)
- ✅ Post ID
- ✅ Word count
- ✅ Featured image status
- ✅ SEO meta status
- ✅ Number of inline images embedded
- ✅ Tags applied
- ⚠️ Any warnings or diagnostics from the publish step
If inline_images_count = 0 in the publish diagnostics, flag this to the user and suggest they check WordRocket dashboard → My Content → [article] to manually sync or re-embed images.
---END---
How to Fill In the Config Block
Field What to Put
KEYWORD The exact search term you want to rank for. Be specific — e.g. "self employed mortgage ontario" not just "mortgage"
SITE Your website's homepage URL
SITEMAP Usually https://yoursite.com/sitemap.xml or https://yoursite.com/sitemap_index.xml — check WordRocket dashboard
WORDPRESS SITE ID Found in WordRocket → Settings → Sites → click your site → copy the UUID
CLIENT PROFILE ID Found in WordRocket → Client Profiles → click your profile → copy the UUID. Leave blank if you haven't set one up
COUNTRY CA for Canada, US for United States, GB for UK, AU for Australia
AUDIENCE 1–2 sentences describing who will read this article — their situation, problem, and goal
TONE professional for finance/legal/health, casual for lifestyle/blogs, friendly for service businesses
WORD COUNT Aim for at least 3,000. For competitive keywords, 3,200–4,000 is stronger
TAGS 4–8 relevant tags for your site's taxonomy
Tips for Best Results
On keyword selection:
Use a keyword that's specific enough to have clear search intent (informational, transactional, or local)
Check that the top 5 results are articles/blogs, not tools, calculators, or homepages — those are much harder to displace with content
Local + niche keywords (e.g. "mortgage broker toronto first time buyer") outperform broad national keywords for new sites
On the brief:
The more specific your AUDIENCE description, the more targeted the article
If you have specific facts, statistics, or claims you want included, add them to a note after the config block — Claude will pass them to WordRocket as additional instructions
On images:
The cover image always generates fastest — it's the most important one for first impressions on the post
Inline images can occasionally lag; if you see inline_images_count: 0 in the publish report, go to your WordRocket dashboard and manually update the post
On publishing:
Always check the live URL after publishing to confirm images loaded correctly
If the featured image didn't attach, go to WordPress → Posts → [your post] → Featured Image and set it manually from the Media Library (WordRocket uploads images there)
On scheduling:
You can ask Claude to run this on a schedule: "Run this every Monday at 8am for keyword [X]" — Cowork mode supports scheduled tasks
For best results, rotate keywords from a pre-built list rather than repeating the same topic
Troubleshooting
Issue Fix
WordRocket connector not found Check Settings → Connectors — ensure wordrocketapi.com is added and set to Always Allow
job_id returns failed Re-run Step 4. Usually a timeout on the research model — retry once before escalating
Images all stuck on running Wait up to 15 minutes. If still stuck, go to WordRocket dashboard → My Content → regenerate images
inline_images_count: 0 after publish Go to WordRocket → My Content → open the article → click "Sync to WordPress" or manually copy image URLs into the post
Article published but no featured image Go to WordPress → Posts → open post → set Featured Image from the Media Library
Wrong WordPress site published to Double-check your WORDPRESS SITE ID — copy it directly from WordRocket → Settings → Sites
Google News connector failing Remove the gl (country) parameter from the connector URL and retry
Optional: Add Google Trends Research (Step 0)
If you want Claude to also validate that your keyword is currently trending before writing, add this block before Step 1:
STEP 0 — TREND VALIDATION
Before analysing the SERP, use the Google Trends connector to:
1. Pull 12-month interest over time for [KEYWORD] in [COUNTRY]
2. Find top and rising related queries
3. Confirm the keyword is stable or growing (not declining)
4. If the keyword is sharply declining, suggest the closest trending alternative from the related queries
Only proceed to Step 1 if the keyword passes the trend check, or if I explicitly say to proceed anyway.
Built by Avi @ WordRocket AI · Share freely · wordRocket.ai

Autonomous SEO/GEO content writer with MCP integration with Claude / ChatGPT to research, analyze, write, and publish articles directly to your site.
Get $50 offRecommended tool · Affiliate link