How to use
- Copy the installation command and review the source package before installing it in your own agent environment.
- Check the source document for required tools, credentials and supported hosts.
- Describe your input and desired deliverable; review the output against the source material.
npx skills add https://github.com/ryze-ai-adgent/open-seo-mcp-skills --skill seo-vs-adsBefore you start
- Installation does not include a model subscription, API allowance or permission to access your files.
- Repository stars and installation counts describe activity, not an independent quality or security test.
Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.
SEO vs Ads
Requires
The free Ryze MCP connector (https://connector.get-ryze.ai/mcp). Claude Code: claude mcp add ryze --transport http https://connector.get-ryze.ai/mcp. claude.ai / Desktop / Cursor: add it as a custom connector with the same URL. Setup: https://www.get-ryze.ai/how-to-connect-claude-to-google-meta-ads-mcp
The report subscription tools can't do: it needs your ads account AND your Search Console together. Both are on the Ryze MCP.
Workflow
- Paid search terms.
google_ads__runRawGaqlon the default account — search terms report, last 90 days: term, impressions, clicks, cost, conversions. (GAQL shape vianative__get_provider_docs, providergoogle_ads, if needed.) - Organic positions.
google_search_console__runRawSearchAnalytics, dimension["query"], same window. - Join on query and bucket:
- Double-paying — organic position ≤ 3 AND paid spend on the same term. Especially brand terms with no competing advertisers (check top-of-page rate / competition). Sum the spend: that's the number for the headline.
- Defensible — organic ≤ 3 but competitors bid on the term (paid presence may be justified; say so honestly)
- Paid-only winners — terms converting in ads with no organic ranking → the SEO content roadmap, pre-validated by money
- Organic-only converters — strong organic queries with no ad coverage → scale candidates if ads team wants volume
- Estimate savings. For the double-paying bucket: spend × the organic click-capture you'd retain (be conservative, ~50–70% for position 1 brand terms; label it an estimate).
Output
Headline first: "$X/quarter going to clicks you already rank #1 for." Then the four buckets as tables (term, cost, conversions, organic position), the savings estimate with its assumptions stated, and a short action list: exact negatives to add, exact pages to build.
Fallback
If only one of the two accounts is connected, run what's possible, and name the missing connection instead of guessing at the other half.



