← Plugin catalog
Business & Operations

DidYouSEO

DidYouSEO v1.1.0

SEO audits and Search Console

Create a free account to save this plugin.

From the developer

Declared limitations

  • Refuses to fetch private or internal addresses. Expected: run_seo_audit returns an error that the URL is not allowed, and no request is made to the address.
  • Does not delete account data: DidYouSEO has no delete tool. Expected: the assistant explains it cannot remove sites and points to the DidYouSEO dashboard.
  • Not an SEO request, so DidYouSEO tools should not be called. Expected: no DidYouSEO tool is triggered.

Not specified in the available declarations: capabilities, pricing & account requirements.

Onboarding example

Run an SEO audit on my homepage and tell me what to fix first.
Sources & dates

Developer declarations; not independently tested. Listing last checked Nov 12, 2026. Package observed Nov 11, 2026.

View package source →

Description

From the marketplace listing

DidYouSEO helps website owners, marketers and SEO consultants find and fix SEO problems using their real data. What you can do: - Audit any public page: get a score out of 100 and a ranked list of issues, each with how to fix it. - Check meta tags, robots.txt, structured data, Open Graph, hreflang and how a page looks in Google results. - Run PageSpeed Insights and see Core Web Vitals. - See your Google Search Console queries, the queries gaining or losing clicks, and pages competing for the same keyword. - See your Google Analytics organic traffic, engagement, conversions and visits from AI assistants. - Look up search volume, keyword difficulty, keyword ideas and the backlink strength of any domain. Ready-made skills turn these into finished work: an audit fix plan, a weekly or client SEO report, quick wins close to page one, a traffic drop diagnosis, AI assistant traffic, AI search readiness, a competitor comparison and a keyword brief. Limitations: you sign in with a DidYouSEO account. Audits and single-URL checks have a daily usage limit, and Search Console and Google Analytics results can be shortened. Search Console and Google Analytics data appear only after you connect them, read-only, on didyouseo.com. Keyword and backlink lookups are not available on every account. Audits check one page at a time and only public pages; DidYouSEO never changes anything on the sites it checks.

Language: English · Automatically detected from descriptions.

Matches for “paris”

Exact text from the indicated source. A mention alone does not establish support for your task.

Publisher full description

DidYouSEO helps website owners, marketers and SEO consultants find and fix SEO problems using their real data. What you can do: - Audit any public page: get a score out of 100 and a ranked list of issues, each with how to fix it. - Check meta tags, robots.txt, structured data, Open Graph, hreflang and how a page looks in Google results. - Run PageSpeed Insights and see Core Web Vitals. - See your Google Search Console queries, the queries gaining or losing clicks, and pages competing for the same keyword. - See your Google Analytics organic traffic, engagement, conversions and visits from AI assistants. - Look up search volume, keyword difficulty, keyword ideas and the backlink strength of any domain. Ready-made skills turn these into finished work: an audit fix plan, a weekly or client SEO report, quick wins close to page one, a traffic drop diagnosis, AI assistant traffic, AI search readiness, a competitor comparison and a keyword brief. Limitations: you sign in with a DidYouSEO account. Audits and single-URL checks have a daily usage limit, and Search Console and Google Analytics results can be shortened. Search Console and Google Analytics data appear only after you connect them, read-only, on didyouseo.com. Keyword and backlink lookups are not available on every account. Audits check one page at a time and only public pages; DidYouSEO never changes anything on the sites it checks.

What changed

· 3 observations

Capabilities & instructions

Logo url dark changed from “https://files.openai.com/content?id=file_000000000bbc8211b36bec260f4e73c7” to “https://files.openai.com/content?id=file_000000001e48820899391d12660256c0”. Long description changed from “Limitations: you sign in with a DidYouSEO account. Search Console and Google Analytics data appear only...

View comparison →

Technical updates · 1

Package or technical metadata updated

View technical comparison →

Keywords

Files & skills

File archives

Plugin package21 files · 438 KBBrowse files →
Skill instructions
ai-assistant-traffic2.63 KB

View saved version →

---
name: ai-assistant-traffic
description: Report how many visits a site gets from AI assistants (ChatGPT, Perplexity, Gemini, Claude, Copilot) using Google Analytics 4, compared with the previous period and with organic search, and check that AI crawlers can reach the site. Use when the user asks if they get traffic from ChatGPT or AI search, how AI visits are trending, or whether AI bots can read their site. Requires the DidYouSEO MCP connector with Google Analytics connected.
---

# AI assistant traffic

Show what AI assistants actually send to the site, and whether anything blocks them.

## Tools

- `list_sites` - the sites in the account.
- `get_ga4_organic_traffic` (website, days=28) - organic sessions, engagement, key events and landing pages, plus sessions from AI assistants by source, for this period and the one before.
- `check_robots_txt` (url) - the robots.txt rules that apply to each crawler.

## Steps

1. If the user didn't name a site, call `list_sites` and ask which one.
2. Call `get_ga4_organic_traffic` with `days: 28`. If the user asks about a longer trend, use 90.
3. Report:
   - total AI-assistant sessions this period and last period, with the change
   - each AI source with its sessions and key events
   - AI sessions as a share of organic search sessions
4. If AI sessions are zero or very low, call `check_robots_txt` on the homepage. Check these crawlers: OAI-SearchBot and ChatGPT-User (ChatGPT search and browsing), GPTBot (OpenAI training), PerplexityBot, ClaudeBot and Claude-User, Google-Extended, Bingbot (Copilot uses Bing's index). Say which are blocked. Blocking OAI-SearchBot removes a site from ChatGPT search answers; blocking GPTBot only affects training.
5. Point out the organic landing pages with the most sessions. Pages that already earn search traffic are the likeliest to be cited by AI too, so they are the first to keep current.
6. Be clear about what GA4 can't show: AI answers that mention the site without a click never appear in analytics.

## Output format

```
AI assistant visits, last 28 days: <n> (<+/-x%> vs previous 28 days)
By source: ChatGPT <n>, Perplexity <n>, ...
Share of organic search: <x%>

Crawler access: <all allowed | list of blocked crawlers and what it means>

Next: <one or two actions>
```

## Limits

- On the Free plan the Google Analytics tool returns a short preview of landing pages. Say so if the list looks short.
- `check_robots_txt` counts as a page check. If a tool says "Daily limit reached", stop, tell the user the limit resets at 00:00 UTC, and finish with what you have.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
ai-search-readiness2.77 KB

View saved version →

---
name: ai-search-readiness
description: Check whether ChatGPT, Perplexity, Claude, Copilot and Google AI Overviews can find, read and cite a page - AI crawler access in robots.txt, indexability, structured data, and a title and description that state the answer. Use when the user asks if their page is ready for AI search, why ChatGPT doesn't cite them, how to get cited in AI answers, or for a GEO or AEO check. Requires the DidYouSEO MCP connector.
---

# AI search readiness

AI assistants can only cite pages their crawlers can reach and a search index has kept. Check those basics first, then what makes a page easy to quote.

## Tools

- `check_robots_txt` (url) - the robots.txt rules that apply to each crawler.
- `run_seo_audit` (url) - indexing blockers (noindex, canonical, status code) and on-page issues.
- `validate_schema` (url) - structured data found and its errors.
- `analyze_meta_tags` (url) - title, description and headings.

## Steps

1. Get the page URL. Use the page that answers the question the user wants to be cited for, not only the homepage.
2. Call `check_robots_txt`. For each crawler, say allowed or blocked:
   - OAI-SearchBot and ChatGPT-User: ChatGPT search and browsing
   - PerplexityBot: Perplexity
   - ClaudeBot and Claude-User: Claude
   - Bingbot: Bing, which Copilot and others use
   - Googlebot: Google Search and AI Overviews
   - GPTBot and Google-Extended: model training only, not search answers. Blocking these doesn't remove the page from AI search.
3. Call `run_seo_audit`. Anything that stops indexing (noindex, a canonical to another URL, a 4xx or 5xx status) blocks AI search too.
4. Call `validate_schema`. Note Article, FAQPage, HowTo, Product, Organization or LocalBusiness where they fit the page. Structured data must match what the page shows.
5. Call `analyze_meta_tags`. Check that the title and description state the topic in the searcher's words, and that the H2 headings read like the questions people ask.
6. Give a verdict: Ready, Ready with fixes, or Blocked.

## Output format

```
Verdict: <Ready | Ready with fixes | Blocked> for <url>

Crawler access: <table of crawler, allowed/blocked, what it affects>
Indexing: <ok, or the blocker>
Structured data: <found types, errors>
Easy to quote: <title, description, headings - what to change>

Fix first: <up to 5 actions, blockers first>
```

Add: "A direct 40-60 word answer as the first paragraph, and a visible updated date, make a page easier to cite." Don't claim that any change guarantees a citation.

## Limits

- This uses 4 page checks. On the Free plan there are 10 a day. If a tool says "Daily limit reached", stop, tell the user the limit resets at 00:00 UTC, and report what you have.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
client-seo-report2.96 KB

View saved version →

---
name: client-seo-report
description: Write a client-ready monthly SEO report from DidYouSEO audit scores and Search Console data, in plain language with wins, problems and next steps. Use when an agency or freelancer asks for a client report, a monthly SEO summary for a client, or an update to send to a client. Requires the DidYouSEO MCP connector.
---

# Client SEO report

Write the report an agency sends a client every month. Clients read the first paragraph and skim the rest, so lead with the outcome.

## Tools

- `list_sites`, `get_site_score` - technical health and open issues.
- `get_search_console_changes` (website, days=28) - month-over-month movement.
- `get_search_console_keywords` (website, days=28) - top queries.
- `get_ga4_organic_traffic` (website, days=28) - visits, conversions and AI-assistant visits, if Google Analytics is connected.

## Steps

1. Call `list_sites` and confirm the client's site.
2. Call `get_site_score`, `get_search_console_changes` with `days: 28`, `get_search_console_keywords` with `days: 28`, and `get_ga4_organic_traffic` with `days: 28`. If Google Analytics isn't connected, leave out the conversion lines.
3. Ask the user for anything the tools can't know: work done this month, the client's goals, and the agency name to sign off with. If they don't have it, leave a clearly marked placeholder.
4. Write for a business owner, not an SEO. Replace terms like "impressions" with "times you appeared in Google" on first use.
5. Every metric needs a "so what". Cut any number that doesn't lead to a decision.
6. Be honest about drops. Explain the likely cause and the plan. Don't hide bad months.

## Output format

```
SEO report - <client> - <month year>

Summary
<2-3 sentences: overall direction, the main win, the main concern>

Results this month
- Visits from Google: <n> (<change>)
- Times you appeared in Google: <n> (<change>)
- Top searches bringing visitors: <3 queries>
- Enquiries or sales from Google visitors (GA4): <n> (<change>)
- Visitors sent by AI assistants like ChatGPT (GA4): <n> (<change>)

Site health: <score>/100 (<change if known>)
- Fixed: <items>
- Still open: <top 3>

Work completed
- [AGENCY TO FILL]

Plan for next month
1. <action and expected effect>
2. <action and expected effect>
3. <action and expected effect>
```

Output Markdown the user can paste into an email or document.

## Limits

- Audits and single-URL checks (`run_seo_audit`, `run_pagespeed_insights`, `analyze_meta_tags`, `check_robots_txt`, `validate_schema`, `serp_preview`, `check_core_web_vitals`, `check_open_graph`, `check_hreflang`) count as page checks. On the Free plan there are 10 a day. If a tool says "Daily limit reached", stop calling them, tell the user the limit resets at 00:00 UTC, and finish with the data you have.
- On the Free plan, the Search Console and Google Analytics tools return a short preview. Say the results may be incomplete.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
competitor-seo-comparison2.45 KB

View saved version →

---
name: competitor-seo-comparison
description: Compare the SEO of two websites or two pages side by side with DidYouSEO - audit score, technical issues, titles and descriptions, structured data and backlink strength - and say what to fix to close the gap. Use when the user asks to compare their site with a competitor, why a competitor outranks them, or to compare SEO of two websites. Requires the DidYouSEO MCP connector.
---

# Competitor SEO comparison

Put two pages through the same checks at the same time, then say where the competitor is ahead and what closes the gap.

## Tools

- `run_seo_audit` (url) - score out of 100 and issues for one page.
- `analyze_meta_tags` (url) - title, description, headings and canonical.
- `validate_schema` (url) - structured data found and its errors.
- `get_backlink_summary` (domain) - domain rank, backlinks and referring domains. Uses 1 AI credit per domain.

## Steps

1. Get two URLs of the same kind: both homepages, or both pages targeting the same search. If the user gives two domains, compare their homepages and say so.
2. If a competitor is a big national brand and the user is a small or local business, say that the comparison will mostly show the gap in size. Suggest a competitor of similar size as well.
3. Call `run_seo_audit` on both URLs.
4. Call `analyze_meta_tags` and `validate_schema` on both.
5. Ask before calling `get_backlink_summary`: it uses 1 AI credit per domain, 2 in total. If the user agrees, call it for both domains.
6. Compare:
   - score and critical issues
   - title and description: which one matches the search better
   - headings: topics the competitor covers that the user doesn't
   - structured data: types present on one side only
   - backlinks: domain rank and referring domains, if fetched
7. Separate what the user can fix this week (on-page) from what takes months (links).

## Output format

A side-by-side table: check, user's page, competitor's page, who's ahead. Then "Close the gap": up to 5 actions, quickest first, each with the exact change.

## Limits

- This uses 6 page checks (two audits, two meta tag checks, two schema checks). On the Free plan there are 10 a day. If a tool says "Daily limit reached", stop, tell the user the limit resets at 00:00 UTC, and compare what you have.
- Backlink lookups need AI credits. If the tool says there are none left, skip backlinks and say so.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
keyword-cannibalization-fix2.63 KB

View saved version →

---
name: keyword-cannibalization-fix
description: Detect keyword cannibalization from real Google Search Console data and decide, per conflict, whether to merge, redirect, re-target or leave the pages alone. Use when the user asks about cannibalization, pages competing with each other, duplicate rankings, or rankings that keep swapping between URLs. Requires the DidYouSEO MCP connector with Search Console connected.
---

# Keyword cannibalization fix plan

Find queries where two or more of the site's own pages compete, and give a decision for each conflict, not just a list.

## Tools

- `get_search_console_cannibalization` (website, days=90) - conflicts with competing pages, severity and the reason.
- `analyze_meta_tags` (url) - compare the competing pages' titles and headings.

## Steps

1. Call `get_search_console_cannibalization` with `days: 90`.
2. Skip low-severity conflicts unless there are no others. Two pages sharing a query is normal; it's only a problem when they split clicks or rankings swap.
3. For each remaining conflict, call `analyze_meta_tags` on the competing pages and decide:
   - **Merge and redirect** - both pages cover the same intent. Keep the one with more clicks, fold the other's unique content into it, 301 the weaker URL.
   - **Re-target** - different intents that look similar (for example a guide and a product page). Change the weaker page's title and H1 to its own intent and link it to the stronger page.
   - **Canonical** - near-duplicates that must both exist (filters, print versions). Canonical to the main one.
   - **Leave it** - Google shows both because they serve different searchers and both get clicks.
4. Give the reason for each decision in one line, based on the data returned.

## Output format

For each conflict:

```
Query: "<query>"
Pages: <url A> (<clicks>) vs <url B> (<clicks>)
Decision: <Merge and redirect | Re-target | Canonical | Leave it>
Why: <one line>
Steps: <2-4 concrete steps>
```

Finish with the order to do them in: highest-impression conflicts first.

## Limits

- Audits and single-URL checks (`run_seo_audit`, `run_pagespeed_insights`, `analyze_meta_tags`, `check_robots_txt`, `validate_schema`, `serp_preview`, `check_core_web_vitals`, `check_open_graph`, `check_hreflang`) count as page checks. On the Free plan there are 10 a day. If a tool says "Daily limit reached", stop calling them, tell the user the limit resets at 00:00 UTC, and finish with the data you have.
- On the Free plan, the Search Console and Google Analytics tools return a short preview. Say the results may be incomplete.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
keyword-research-brief2.4 KB

View saved version →

---
name: keyword-research-brief
description: Find keywords a page can realistically rank for from a seed phrase, using real search volume and keyword difficulty, then write a short content brief for the best one. Use when the user asks for keyword ideas, low-competition keywords, what to write about, or a brief for a new page or post. Requires the DidYouSEO MCP connector and AI credits.
---

# Keyword research to brief

Turn one seed phrase into a short list of winnable keywords and a brief the user can write from today.

## Tools

- `get_keyword_ideas` (seed) - up to 50 keyword ideas containing the seed, with search volume and keyword difficulty. 1 AI credit.
- `get_keyword_data` (keywords, 1-10) - volume, difficulty, CPC and search intent for chosen keywords. 1 AI credit per call.
- `get_search_console_keywords` (website) - optional: what the site already ranks for, so you don't target it twice.

## Steps

1. Get the seed phrase and the site. Tell the user this uses 2 AI credits before you start.
2. Call `get_keyword_ideas` with the seed.
3. Shortlist up to 10 ideas:
   - keyword difficulty 30 or lower for a newer or smaller site; up to 50 for an established one
   - volume above zero
   - clear intent that matches what the site offers
4. Call `get_keyword_data` on the shortlist for intent and CPC. A higher CPC usually means a buyer is searching.
5. If Search Console is connected, call `get_search_console_keywords`. Drop any keyword an existing page already shows for, and recommend improving that page instead.
6. Pick one main keyword and 3-5 close variants for the same page.
7. Write the brief:
   - title (48 characters or fewer before the brand suffix) and meta description (120-155 characters)
   - the question the page answers, in one sentence, to answer in the first paragraph
   - 5-8 H2 headings, using the variants and the questions people ask
   - what to include that a reader can't get elsewhere: data, a worked example, a template
   - 2-3 existing pages on the site to link from

## Output format

A table of the shortlist: keyword, volume, difficulty, intent, CPC, pick. Then the brief.

## Limits

- Both keyword tools need AI credits. If a tool says there are none left, say so and stop. Don't guess volumes.
- Keyword data covers Google in the US by default. Say so if the user's market is elsewhere.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
long-question-answers2.93 KB

View saved version →

---
name: long-question-answers
description: Find the long, specific questions people search before they reach a site (8+ word and question-word queries in Google Search Console) and draft a short direct answer for the page that already ranks. Use when the user asks what questions people search, what to write next, how to get cited in AI answers or Google AI Overviews, or wants answer-engine (AEO) ideas from their own data. Requires the DidYouSEO MCP connector with Search Console connected.
---

# Long questions to answers

Long queries are the same questions people ask ChatGPT. When a page shows for one but gets no clicks, a short direct answer at the top of that page is usually the fastest fix.

## Tools

- `get_search_console_keywords` (website, days=90) - queries with clicks, impressions, CTR and average position.
- `analyze_meta_tags` (url) - title, description and headings of the page you will change.

## Steps

1. Call `get_search_console_keywords` with `days: 90`.
2. Keep two kinds of query:
   - 8 or more words (regex `^(?:\S+\s+){7,}\S+$`)
   - starting with a question word: how, what, why, when, which, who, where, can, does, do, is, are, should, will
3. Drop branded queries and junk such as `keyword-xxxx` or queries that are mostly another site's domain name.
4. Group near-duplicates into one cluster ("how to find keywords on a web page", "how do i search keywords on web page"). Sum impressions and clicks per cluster.
5. Rank clusters by impressions where clicks are 0 or CTR is under 1%. Take the top 5.
6. Note any query that starts with `context:` or contains `question:`. Those are AI assistants searching on someone's behalf. Report them separately; they show what AI tools look you up for.
7. The keyword tool does not say which page ranks. For each cluster, name the most likely page and ask the user to confirm it in Search Console (Performance, click the query, then the Pages tab). Call `analyze_meta_tags` on the confirmed page.
8. For each cluster, draft:
   - a 40-60 word answer that starts by restating the question and answers it in the first sentence, to go first on the page
   - one FAQ question in the searchers' exact words, with a 2-3 sentence answer
9. Never suggest a new page when an existing page already shows for the cluster.

## Output format

A table: cluster, example query, impressions, clicks, average position, page. Then the drafted answer and FAQ entry for each of the top 5. Then the AI-assistant searches, if any.

End with: "Add the answer as the first paragraph, update the page's date, and re-check the cluster in 3 weeks."

## Limits

- On the Free plan the Search Console tool returns a short preview. Work with what it returns and say the list may be incomplete.
- If a tool says "Daily limit reached", stop calling page tools, tell the user the limit resets at 00:00 UTC, and finish with the data you have.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
low-ctr-title-fix2.58 KB

View saved version →

---
name: low-ctr-title-fix
description: Find pages that already rank in Google's top 7 but get few clicks, and rewrite their title and meta description to earn the click. Use when the user asks why a page ranks but gets no traffic, how to improve click-through rate (CTR), or wants better titles and descriptions from real Search Console data. Requires the DidYouSEO MCP connector with Search Console connected.
---

# Low CTR title fix

A page in the top 7 with a CTR under 2% doesn't need better rankings. Its title and description aren't winning the click.

## Tools

- `get_search_console_keywords` (website, days=28) - queries with clicks, impressions, CTR and average position.
- `analyze_meta_tags` (url) - the current title and meta description.
- `serp_preview` (url) - how the snippet looks in Google now.

## Steps

1. Call `get_search_console_keywords` with `days: 28`.
2. Keep queries with average position 1 to 7, at least 30 impressions, and CTR under 2%.
3. Drop branded queries. Low CTR on a brand query usually means sitelinks or a knowledge panel take the click, not a weak title.
4. Group queries that belong to the same page. Rank groups by impressions. Take the top 5.
5. The keyword tool does not say which page ranks. Name the most likely page and ask the user to confirm it in Search Console (Performance, click the query, then the Pages tab).
6. For each confirmed page, call `analyze_meta_tags` and `serp_preview`.
7. Write two title options and one description per page:
   - use the searchers' words from step 2, not the site's internal name for the thing
   - put the main query in the first half of the title
   - title: 48 characters or fewer before the brand suffix, so the whole title stays under about 60
   - description: 120-155 characters, says what the reader gets and why this page over the others
   - promise only what the page delivers
8. Don't change titles on pages the user says are in a running test.

## Output format

For each page: the queries, position, CTR, current title and description, then the new options. Mark your preferred title.

End with: "Change one page at a time if you can, and compare CTR for the 4 weeks after with the 4 weeks before."

## Limits

- `analyze_meta_tags` and `serp_preview` count as page checks. On the Free plan there are 10 a day. If a tool says "Daily limit reached", stop, tell the user the limit resets at 00:00 UTC, and finish with what you have.
- On the Free plan the Search Console tool returns a short preview. Say the list may be incomplete.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
on-page-seo-rewrite2.46 KB

View saved version →

---
name: on-page-seo-rewrite
description: Check a page's title, meta description, headings, structured data and social tags, then draft improved versions ready to paste. Use when the user asks to optimize a page, improve a title or meta description, fix how a page looks in Google or on social media, or add schema. Works with the free DidYouSEO MCP tools, no account needed.
---

# On-page SEO rewrite

Read what a page shows search engines and social networks today, then write better versions.

## Tools

All of these are free and work on any public URL:

- `analyze_meta_tags` (url) - title, description, robots, headings and more.
- `serp_preview` (url) - how the snippet renders in Google, with truncation.
- `validate_schema` (url) - structured data found and its errors.
- `check_open_graph` (url) - social share tags.

## Steps

1. Call all four tools on the URL.
2. Ask for the target query if the user didn't give one. Without it, infer it from the H1 and say what you assumed.
3. Draft:
   - **Title**: 50-60 characters, target query near the front, no keyword lists.
   - **Meta description**: 120-155 characters, answers why someone should click.
   - **H1**: if missing, duplicated or unrelated to the query.
   - **Structured data**: fix reported errors; suggest a type only if it fits the page (Article for posts, Product for products, Organization on the homepage). Don't add FAQ or Review markup to content that isn't really a FAQ or real reviews.
   - **Open Graph**: og:title, og:description and og:image if missing.
4. Show character counts for title and description.

## Output format

```
Target query: <query>

Title
Now:  <current> (<n> chars)
New:  <draft> (<n> chars)

Meta description
Now:  <current>
New:  <draft> (<n> chars)

Structured data: <issues and the corrected JSON-LD block>
Social tags: <missing tags with values>
```

## Limits

- Audits and single-URL checks (`run_seo_audit`, `run_pagespeed_insights`, `analyze_meta_tags`, `check_robots_txt`, `validate_schema`, `serp_preview`, `check_core_web_vitals`, `check_open_graph`, `check_hreflang`) count as page checks. On the Free plan there are 10 a day. If a tool says "Daily limit reached", stop calling them, tell the user the limit resets at 00:00 UTC, and finish with the data you have.
- On the Free plan, the Search Console and Google Analytics tools return a short preview. Say the results may be incomplete.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
pre-launch-seo-check2.73 KB

View saved version →

---
name: pre-launch-seo-check
description: Run a go/no-go SEO check before a site, redesign or migration goes live - indexing, robots.txt, canonicals, structured data, hreflang, speed and social tags. Use when the user is launching a site, migrating, redesigning, moving from staging to production, or asks if a site is ready to go live. Requires the DidYouSEO MCP connector; most checks are free.
---

# Pre-launch SEO check

Catch the mistakes that quietly wreck a launch: a leftover noindex, a staging robots.txt, canonicals pointing at the old domain.

## Tools

- `check_robots_txt` (url)
- `analyze_meta_tags` (url) - robots meta, canonical, title, description.
- `validate_schema` (url)
- `check_hreflang` (url) - only if the site has more than one language or region.
- `run_pagespeed_insights` (url, strategy) - Lighthouse scores, real-user Core Web Vitals and the biggest speed fixes.
- `check_open_graph` (url)
- `run_seo_audit` (url) - full audit of the most important page, if the user is signed in.

## Steps

1. Ask for the 3-5 most important URLs (homepage, a main product or service page, a blog post, a contact page) if the user only gave a domain.
2. Run `check_robots_txt` once on the domain. A `Disallow: /` for all user agents is an automatic no-go.
3. For each URL run `analyze_meta_tags`, `validate_schema`, `check_open_graph` and `run_pagespeed_insights` (mobile). Run `check_hreflang` if relevant. A performance score under 50 on the homepage is a fix-this-week item, not a blocker.
4. Check for launch-specific failures:
   - `noindex` on pages that should rank
   - canonicals pointing at a staging or old domain
   - titles or descriptions still showing placeholder text, or identical across pages
   - missing or broken structured data on key templates
5. If the user is signed in, run `run_seo_audit` on the homepage for the full picture.

## Output format

```
Verdict: GO | GO WITH FIXES | NO-GO

Blockers (fix before launch)
- <issue> on <url> - <exact fix>

Fix this week
- <issue> - <fix>

Checked and fine
- <list>
```

A single blocker makes the verdict NO-GO. Be explicit about which item caused it.

## Limits

- Audits and single-URL checks (`run_seo_audit`, `run_pagespeed_insights`, `analyze_meta_tags`, `check_robots_txt`, `validate_schema`, `serp_preview`, `check_core_web_vitals`, `check_open_graph`, `check_hreflang`) count as page checks. On the Free plan there are 10 a day. If a tool says "Daily limit reached", stop calling them, tell the user the limit resets at 00:00 UTC, and finish with the data you have.
- On the Free plan, the Search Console and Google Analytics tools return a short preview. Say the results may be incomplete.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
seo-audit-fix-plan2.62 KB

View saved version →

---
name: seo-audit-fix-plan
description: Audit a page or site with DidYouSEO and turn the results into a ranked fix plan with exact changes. Use when the user asks to audit a URL, find SEO problems, check why a page isn't ranking technically, or wants a prioritized SEO to-do list. Requires the DidYouSEO MCP connector.
---

# SEO audit to fix plan

Turn a DidYouSEO audit into a short, ordered list of fixes the user can act on today.

## Tools

- `run_seo_audit` (url) - runs a 40+ point audit and returns score, issues and how to fix each one.
- `list_sites`, `get_site_score` - when the user means a whole site already in their account.
- `analyze_meta_tags`, `validate_schema` - to draft exact replacement tags or markup.

## Steps

1. Work out the target. A single URL means `run_seo_audit`. A site name ("my site", a domain) means `list_sites` first, then `get_site_score` for the latest crawl. If the site isn't in the account, audit its homepage with `run_seo_audit` and say so.
2. Group issues by severity: critical first, then warnings. Ignore passed checks.
3. Rank inside each group by effort and impact:
   - Indexing blockers first (noindex, robots blocks, broken canonicals, 4xx/5xx).
   - Then anything shown in search results (title, meta description, structured data).
   - Then speed and Core Web Vitals.
   - Then accessibility and best-practice items.
4. For every fix, give the exact change. Draft the new title or description, the corrected JSON-LD, or the header to add. Use `analyze_meta_tags` or `validate_schema` if you need the current values.
5. Do not invent issues the tools didn't report. If something looks wrong but wasn't flagged, say "worth checking" and keep it separate.

## Output format

```
Score: <n>/100 for <url>

Fix first (critical)
1. <issue> - why it matters in one line
   Change: <exact change>

Fix next (warnings)
...

Already fine: <one line naming the main areas that passed>
```

Keep it under 15 items. If there are more, show the top 15 and say how many were left out.

## Limits

- Audits and single-URL checks (`run_seo_audit`, `run_pagespeed_insights`, `analyze_meta_tags`, `check_robots_txt`, `validate_schema`, `serp_preview`, `check_core_web_vitals`, `check_open_graph`, `check_hreflang`) count as page checks. On the Free plan there are 10 a day. If a tool says "Daily limit reached", stop calling them, tell the user the limit resets at 00:00 UTC, and finish with the data you have.
- On the Free plan, the Search Console and Google Analytics tools return a short preview. Say the results may be incomplete.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
striking-distance-keywords2.71 KB

View saved version →

---
name: striking-distance-keywords
description: Find queries ranking in positions 8-20 in Google Search Console and plan the on-page changes most likely to move them onto page one. Use when the user asks for quick SEO wins, keywords close to page one, low-hanging fruit, or what to optimize next. Requires the DidYouSEO MCP connector with Search Console connected.
---

# Striking distance keywords

Find the queries Google already considers relevant but ranks just off the top, and say exactly how to push each one.

## Tools

- `get_search_console_keywords` (website, days=90) - queries with clicks, impressions, CTR and average position.
- `analyze_meta_tags` (url) - current title, description and headings of the ranking page.
- `serp_preview` (url) - how the snippet looks now.

## Steps

1. Call `get_search_console_keywords` with `days: 90`.
2. Keep queries with average position between 8 and 20. Drop any with fewer than 100 impressions in the window; they won't bring meaningful traffic even at position 3.
3. Drop branded queries (containing the site's brand name). Those rank on their own.
4. Rank the rest by impressions, highest first. Take the top 10.
5. The keyword tool doesn't say which page ranks for each query. For each of the top 5, find the most likely page on the site (ask the user if it isn't obvious) and call `analyze_meta_tags` on it.
6. For each, recommend at most three changes from this list, in this order of preference:
   - put the exact query in the title, near the front
   - answer the query in the first 100 words
   - add the section that competing pages cover and this page doesn't
   - add 3-5 internal links to it with descriptive anchor text
   - refresh outdated facts, then the date
7. Never recommend creating a new page for a query an existing page already ranks for. That splits the signal.

## Output format

A table of the top 10: query, position, impressions, page. Then, for the top 5, the specific changes with a drafted title where relevant.

End with: "Re-check in 4 weeks. Compare the 4 weeks after the change with the 4 weeks before, for the same query."

## Limits

- Audits and single-URL checks (`run_seo_audit`, `run_pagespeed_insights`, `analyze_meta_tags`, `check_robots_txt`, `validate_schema`, `serp_preview`, `check_core_web_vitals`, `check_open_graph`, `check_hreflang`) count as page checks. On the Free plan there are 10 a day. If a tool says "Daily limit reached", stop calling them, tell the user the limit resets at 00:00 UTC, and finish with the data you have.
- On the Free plan, the Search Console and Google Analytics tools return a short preview. Say the results may be incomplete.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
traffic-drop-diagnosis2.92 KB

View saved version →

---
name: traffic-drop-diagnosis
description: Diagnose a drop in Google organic traffic by comparing Search Console periods and auditing the pages that lost the most clicks. Use when the user says traffic fell, clicks dropped, a page stopped ranking, or asks what happened to their SEO. Requires the DidYouSEO MCP connector with Search Console connected.
---

# Traffic drop diagnosis

Work out whether a drop is technical, a ranking loss, a demand change or a result-page change, and say which with evidence.

## Tools

- `get_search_console_changes` (website, days) - biggest click losers and gainers against the previous period, with position changes.
- `run_seo_audit` (url) - audit the pages that lost the most.
- `check_robots_txt` (url) - rule out a crawl block.
- `get_ga4_organic_traffic` (website, days) - confirm the drop in real visits, if Google Analytics is connected.

## Steps

1. Ask when the drop started if the user didn't say. Use a window that covers it: `days: 28` for a recent drop, `days: 90` for a slow decline.
2. Call `get_search_console_changes`. If Google Analytics is connected, also call `get_ga4_organic_traffic` for the same window: if Search Console clicks held but GA4 organic sessions fell, suspect tracking (a removed or broken GA4 tag), not SEO.
3. Classify the pattern from the losers:
   - **Position fell, impressions held** - ranking loss. Likely content or competition.
   - **Impressions fell, position held** - demand or seasonality. Fewer people searching.
   - **Impressions held, position held, clicks fell** - the result page changed (AI Overview, new features). CTR problem, not a ranking problem.
   - **Many pages fell at once, sitewide** - technical issue or a Google update.
4. For a sitewide drop, run `check_robots_txt` on the homepage and `run_seo_audit` on the homepage and the top 2 losing pages. Look for noindex, canonical, robots or server errors first.
5. For page-level drops, run `run_seo_audit` on the top 3 losing pages.
6. Only call something a Google update if the timing matches and nothing technical explains it. Say it's a hypothesis.

## Output format

```
What happened: <one sentence with the numbers>
Most likely cause: <category> - <evidence>
Ruled out: <what you checked and found fine>

Fix
1. <action>
2. <action>

Watch: <what to re-check and when>
```

## Limits

- Audits and single-URL checks (`run_seo_audit`, `run_pagespeed_insights`, `analyze_meta_tags`, `check_robots_txt`, `validate_schema`, `serp_preview`, `check_core_web_vitals`, `check_open_graph`, `check_hreflang`) count as page checks. On the Free plan there are 10 a day. If a tool says "Daily limit reached", stop calling them, tell the user the limit resets at 00:00 UTC, and finish with the data you have.
- On the Free plan, the Search Console and Google Analytics tools return a short preview. Say the results may be incomplete.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.
weekly-seo-report2.8 KB

View saved version →

---
name: weekly-seo-report
description: Write a weekly SEO status report for one site from DidYouSEO audit scores and Google Search Console data. Use when the user asks how their site did this week, wants a weekly or monthly SEO update, or asks what changed in search traffic. Requires the DidYouSEO MCP connector with Search Console connected.
---

# Weekly SEO report

Produce a one-screen report a founder or client can read in two minutes.

## Tools

- `list_sites` - find the site and its id.
- `get_site_score` - latest technical score and top issues.
- `get_search_console_changes` (website, days=7) - clicks and position changes against the previous 7 days.
- `get_search_console_keywords` (website, days=28) - top queries for context.
- `get_ga4_organic_traffic` (website, days=7) - organic sessions, conversions and AI-assistant visits, if Google Analytics is connected.

## Steps

1. Call `list_sites`. If the user has several sites and didn't name one, ask which.
2. Call `get_site_score`, `get_search_console_changes` with `days: 7`, and `get_search_console_keywords` with `days: 28`. Also call `get_ga4_organic_traffic` with `days: 7`; if it says Google Analytics isn't connected, skip that part.
3. If Search Console isn't connected, write the technical half only and tell the user to connect it under Integrations in DidYouSEO.
4. Explain every number in plain language. Don't report a change without saying what probably caused it or what to do about it. If you don't know the cause, say so.
5. Search Console data runs about three days behind. Mention it once at the bottom.

## Output format

```
<site> - week of <date>

Headline: <one sentence: better, worse or flat, and the main reason>

Search
- Clicks: <n> (<+/- vs last week>)
- Organic visits and conversions (GA4, if connected): <n> visits, <n> key events (<change>)
- Visits from AI assistants (GA4, if connected): <n> (<change>)
- Biggest gain: <query or page> (<change>)
- Biggest drop: <query or page> (<change>) - <likely cause>

Technical health: <score>/100
- <top 1-3 issues still open>

Next week
1. <one concrete action>
2. <one concrete action>
```

No tables wider than three columns. No jargon without a short explanation.

## Limits

- Audits and single-URL checks (`run_seo_audit`, `run_pagespeed_insights`, `analyze_meta_tags`, `check_robots_txt`, `validate_schema`, `serp_preview`, `check_core_web_vitals`, `check_open_graph`, `check_hreflang`) count as page checks. On the Free plan there are 10 a day. If a tool says "Daily limit reached", stop calling them, tell the user the limit resets at 00:00 UTC, and finish with the data you have.
- On the Free plan, the Search Console and Google Analytics tools return a short preview. Say the results may be incomplete.
- Don't mention prices or upgrades. If the user asks how to get more, say plan details are on didyouseo.com.

Release notes

Adds 14 ready-made SEO skills: audit fix plan, weekly and client SEO reports, striking distance keywords, low click-through titles, long-question answers, keyword cannibalization, traffic drop diagnosis, on-page rewrite, pre-launch check, competitor comparison, keyword research brief, AI assistant traffic and AI search readiness. The description now explains the daily usage limits.

Declared in the saved package. Remote tools may change independently.

Package details

Publisher declarations from the archived package. These are separate from our research and the live service's terms.

Package license
MIT
Package author
DidYouSEO
Keywords
See keywords
Commerce declaration
Does not support commerceThis does not establish whether access is free or paid.
Review scenarios
5 positive · 3 negativeScenario counts, not test results.

Package observed Nov 11, 2026.

Technical details
First seen
Nov 3, 2026 · 18:00 UTC
Last seen
Nov 12, 2026 · 18:00 UTC
Latest observed change
Nov 6, 2026 · 07:21 UTC
Collection status
Collected

plugin_asdk_app_6ad8713615b0819191f7a3c9c7c68999

Download plugin data (JSON)

Plugin details: freshly prepared. Prepared . Refreshed when plugin data changes or after 6 hours. Your account and Follow status are live.