OnPage.dev について
OnPage.devは、AIアシスタント向けのSEO MCPサービスで、監査、修正、デプロイ前の確認、公開後の効果測定に対応します。Googleに加えてAI検索での可視性も調べ、修正をCMSやGitHub pull requestに反映できます。
主な機能
- 01ページをスキャンして問題を優先順位付け
- 02ページ内容から修正案と構造化データを生成
- 03未公開HTMLを確認し、公開ページを再スキャン
- 04CMSまたはGitHub pull requestへ修正を反映
- 05トラフィック変化、AI可視性、効果を分析
- 06ページを監視し、タスクとレポートを出力
活用シーン
- 01ページを監査し、適用可能なSEO修正を作成
- 02デプロイ前にプレビューの回帰を確認
- 03トラフィック減少と関連するGoogle更新を調査
- 04修正後のクリック数とAI引用の変化を測定
MCP 対応
OnPage.devは、エージェント向けにSEOスキャン、修正、検証、デプロイ、監視、測定のMCPツールを提供します。READMEではClaude、ChatGPT、Cursor、VS Codeでの利用が記載されています。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://onpage.dev/mcpclaude mcp add --transport http dev-onpage-onpage https://onpage.dev/mcp{"mcpServers":{"dev-onpage-onpage":{"type":"http","url":"https://onpage.dev/mcp"}}}Cursor で開く{"servers":{"dev-onpage-onpage":{"type":"http","url":"https://onpage.dev/mcp"}}}VS Code で開く{"mcpServers":{"dev-onpage-onpage":{"type":"http","url":"https://onpage.dev/mcp"}}}{"mcpServers":{"dev-onpage-onpage":{"serverUrl":"https://onpage.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
37| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| url | string | いいえ | サイトのホームページ。 |
| kind | enum | いいえ | scan | audit | fix | measure | rank | alert | plan | content | links | local | ai | tech | note |
| mode | enum | いいえ | デフォルト:open。open | next | timeline | note | forget |
| note | string | いいえ | |
| limit | number | いいえ | |
| detail | enum | いいえ | brief = 短い概要。full | brief |
| memory_key | string | いいえ | メモリー作成時に取得した memory_key。 |
| share_learning | boolean | いいえ | 匿名結果の共有にオプトイン(true)またはオプトアウト(false)します。共有するのは修正の種類と丸めた改善幅のみで、サイト、URL、数値は共有しません。 |
詳細
SEO MCP サーバー
AI アシスタントがサイトを自動で修正するために使う SEO スキャナーです。
スキャンし、修正し、デプロイ前に確認し、デプロイ後に検証します。Google と AI 検索に対応します。
チャット、プロジェクト、クライアントをまたいで、すべてのサイトを記憶します。
WordPress の修正をワンクリックで承認できます。トラフィック減少の理由を、その背景にある Google のアップデートとともに説明します。
| Runs in | |
| Checks your site for | |
| Ships fixes to | |
インストール ·
コンテンツの自動操縦 ·
WordPress での承認 ·
トラフィックの減少 ·
プレビューのチェック ·
すべてのツール ·
他との違い ·
onpage.dev
SEO データ · 順位トラッカー · カニバリゼーション · リンクと AI のギャップ · 失ったリンク · リスクを抑えた否認 · 前回からの変更点
サイトの記憶 · プルリクエスト · 監視とアラート · Claude Code プラグイン · GitHub Action · 修正ガード
ほとんどの SEO ツールがレポートを提供するのに対し、OnPage.dev はアシスタントが実行できることを提供します。修正を作成し、公開前にチェックし、効果があったことを確認します。また、Google だけでなく AI 検索からどう見えるかも確認します。サイトを読み取る可能性のある AI クローラー、引用される準備がコンテンツにできているか、llms.txt があるかをチェックします。
You: Fix the SEO on our pricing page and keep going until it scores 90 or more.
Assistant: scan_page 46/100 no meta description, no H1, title 14 characters
get_fix_pack title, description and canonical, written from the page
schema · generate Product JSON-LD, 2 values to fill in
(edits pricing.html)
scan_page · html 92/100 before deploying, all errors gone
scan_page · rescan 94/100 live, +48 since the first scan
Done. 46 to 94. Two prices in the JSON-LD still need your real values.
新機能
- WordPress で下書きの作成と投稿の更新。 コンテンツの自動操縦が wp-admin まで完結するようになりました。新規投稿は下書きとして届き、更新では変更内容が表示され、ワンクリックで承認でき、いつでも元に戻せます。プラグイン 1.1。
- サイト独自の文体でコンテンツを作成。 コンテンツの自動操縦:
contentモードのvoice、calendar、draftとcontent_autopilotプロンプトを使います。エージェントが文章を作成し、OnPage.dev がサイトの文体を学習して日付入りのカレンダーを作成します。承認前に各下書きの文体、出典のない数値、SEO をチェックし、測定結果からサイトに適した形式を学習します。 - WordPress で修正をワンクリック承認。 エージェントが無料の OnPage.dev WordPress プラグインに修正を送ります。フィールドごとに変更前と変更後の値を確認して承認でき、いつでも元に戻せます。Yoast SEO、Rank Math、または独自のタグを通じて反映します。OnPage.dev がログインすることはありません。
- CSV をエクスポートせずにトラフィックについて質問。 Google 独自のステータスダッシュボードから、トラフィックが途切れた日と、その日に実施された Google アップデートを特定します。さらに、アシスタントがすでに読み取っている Search Console、GA4、Bing のデータから、失われたクエリや分割されたクエリ、AI が回答する質問、Google と Bing の比較も確認できます。
- デプロイごとのプレビューをチェック。 マージ前に Vercel、Netlify、Cloudflare のプレビューを本番環境と比較します。タイトルや canonical の欠落、noindex、ページの破損を検出します。チャットで確認することも、プルリクエストにコメントする GitHub Action として使うこともできます。
データを届けるのは各サービス。OnPage.dev がサイクルを完結させます。
Ahrefs、Semrush、SE Ranking、DataForSEO の SEO MCP サーバーは、データの取得を目的としています。検索順位、被リンク元、ユーザーが検索している内容などです。そして、ここからが本当の作業です。同じチャット内で OnPage.dev がその作業を担い、各サービスの数値を使って、何を最初に修正すべきか判断します。
| ステップ | OnPage.dev | データ MCP |
|---|---|---|
| 検索データ:ランキング、キーワード、バックリンク | ✅ Search Console、GA4、Ahrefs、Semrushのデータを、同じチャットで利用できます | 各社の中核となる強みです |
| ページの問題を特定 | ✅ scan_page、scan_page · deep、layout · render:Google、AI検索、速度、アクセシビリティを確認します | 一部にはサイト監査データがあります |
| ページ自体から修正案を作成 | ✅ get_fix_pack、schema · generate | 本来の用途ではありません |
| コードのある場所に反映 | ✅ ご自身の接続を通じて、WordPress、Shopify、Webflow、Wix、Storyblok、Sanity、Contentful、Strapi、Ghost、Magentoのフィールドに反映するか、Next.js、Nuxt、SvelteKit、Astro、Angular、React、Vue向けのGitプルリクエストを作成します | 本来の用途ではありません |
| デプロイ前に確認 | ✅ 未公開のHTMLに対してscan_page · htmlとcompare · htmlを実行します | 本来の用途ではありません |
| 検索エンジンに通知 | ✅ request_recrawl · indexnowに加え、ご自身のSearch Consoleを通じたURL検査も利用できます | 本来の用途ではありません |
| AI Modeのファンアウトに対応 | ✅ answer_readiness · questions:すべての下位質問について、回答済み、埋もれている、未対応のいずれかを確認します | 本来の用途ではありません |
| 失ったリンクを取り戻す | ✅ backlinks · broken:壊れたバックリンクや失われたバックリンクと、GA4の404ヒットを基に、優先順位付きの301ルール、リンク編集、アウトリーチリストを作成します | 壊れたバックリンクや失われたバックリンクを一覧表示します |
| キーワードのカニバリゼーションを修正 | ✅ check_keyword · cannibalization:競合するページを、すべてのオンページ指標と対策案とともに並べて表示します | キーワードで競合するページを表示します |
| AIの回答に掲載される | ✅ ai_visibility · gaps:各社のAI回答を、対応すべき質問と掲載を目指すサイトの特定に活用します | 一部にはAIでの言及や引用のトラッキング機能があります |
| 速度と代替テキストをコードとして扱う | ✅ get_fix_pack · web_vitals、get_fix_pack · alt_texts:タグ、WordPress、Cloudflare Workerを利用します | 本来の用途ではありません |
| 展開前に変更の効果を検証 | ✅ plan · split_test:テンプレートの半分に変更を適用し、残り半分を対照群にします | 本来の用途ではありません |
| リスクを抑えてリンクを否認 | ✅ backlinks · disavow:明らかなスパムだけを対象にし、残りは確認用に保留します。アップロードすべきでない場合は警告します | 一部には有害度スコアに基づく否認用エクスポート機能があります |
| AIボットが実際に取得する内容を確認 | ✅ ai_visibility · bots:ファイアウォールによるブロック、従量課金クロール(x402)、クローキングを確認するため、Googlebot、GPTBot、ClaudeBot、PerplexityBotが取得したページをブラウザー表示と並べて確認できます | 各社のサイト監査では、自社ボットでクロールします |
| 広告とSEOの予算をまとめて活用 | ✅ find_opportunities · paid_organic:Google Adsの検索語句をSearch Consoleのデータと並べ、削減を試す広告費や、作成すべきページを特定します | 本来の用途ではありません |
| リンク獲得候補をメールに変換 | ✅ backlinks · outreach:修正または追加すべき正確なリンクを記載した短いメールをサイトごとに作成し、承認後にメールの下書きとして保存します | 獲得候補を見つけます |
| 修正内容を作業計画に変換 | ✅ plan · sprint:開発者、コンテンツ、アウトリーチごとの1週間の計画を作成し、Linear、Jira、Asana、GitHubのチケットとして登録します | 本来の用途ではありません |
| デプロイ時の事故を検知 | ✅ watch · guard:robots.txt、サイトマップ、https、noindex、canonicalを6時間ごとに確認し、修正案付きのアラートを送信します | 各社のスケジュールに基づいてサイト監査を実施します |
| AIからの訪問、ブランド、シェア・オブ・ボイスを測定 | ✅ ご自身のGA4、Search Console、ランキングデータを使って、measureのai_referrals、brand_split、share_of_voiceモードを利用できます | 各社の独自データに基づいて可視性とシェア・オブ・ボイスを測定します |
| サイト全体を監視 | ✅ watch · site_audit:週次監査を前回と比較し、リグレッションをSlackまたはDiscordに通知します | 各社のアプリ内で定期監査を実施します |
| 重要なランキングを追跡 | ✅ track_rankings:ご自身のSearch Consoleと各社のトラッカーを使い、作業内容、収益性の高いページ、上位表示まであと少しのキーワードから選定します | 順位追跡が各社の中核となる強みです。キーワードはご自身で選択してタグ付けします |
| 成果を検証 | ✅ measure · impact:変更を加えていないページと比較して、変更前後の効果を確認します | 各社の数値を入力データとして使います |
| 開始時の料金 | ✅ 無料です。アカウントもAPIキーも不要です | 有料プランまたは前払いクレジットが必要です |
| データ MCP への同じ質問 | OnPage.dev への同じ質問 |
|---|---|
/pricing の順位は #14 「seo tool pricing」:月間 1.2k 参照ドメインは 3 件 上位 3 件の結果:それぞれ 40 件以上参考になる情報です。次の手順はあなた次第です。 | タイトルが途中で切れており、canonical もありません 料金セクションに回答がありません Next.js で修正、チェック結果:58 → 91 プルリクエスト #42 を作成 IndexNow に送信 4 週間でクリック数が +38%(他は +4%)調査から成果まで、完了しています。 |
2 種類の回答の例です。料金、プラン、詳細な比較については、onpage.dev/compareをご覧ください。SEO の専門家として 24 年の経験を持つ開発者が構築しました。スコアリング方法はonpage.dev/methodologyで公開しています。
AI エージェント内で完結する一連の作業
多くの SEO ツールはレポートを出して終わりです。OnPage.dev では、エージェントが各ステップを実行でき、それぞれのステップをツールとして呼び出せます。
| ステップ | 実行内容 | ツール |
|---|---|---|
| 発見 | Google、AI 検索、スマートフォン、スクリーンリーダーにとって問題となる点を、獲得できるトラフィックの大きさで順位付けします | scan_page, site_audit · start, layout · render, accessibility · screen_reader, prioritize_fixes, content · intent, text_quality · readability |
| 修正 | ページのコンテンツに基づくすぐに使えるコードを、プルリクエストとして、WordPress 経由で、または任意の CMS のエッジで Cloudflare Worker を使って反映します | get_fix_pack, schema · generate, robots_txt · ai_policy, plan · redirects, backlinks · broken |
| 確認 | デプロイ前に新しい HTML と JSON-LD をテストし、デプロイ後に本番環境で確認します | scan_page · html, schema · validate, compare · html, scan_page · rescan |
| 実行 | 反映した修正をそれぞれ変更前と変更後の値とともに記録し、プランを Google Sheets、Slack、Notion、またはタスクボードに送信します | fix_log · log, share · export, share · link |
| 監視 | 記録した各修正を約 6 時間ごとに確認し、デプロイによって修正が取り消された場合は復元用コードを Webhook に送信します | fix_log · report, watch · page |
| 測定 | 修正前後のクリック数、AI による引用、実ユーザーの速度を、手を加えていないページと比較して測定します。ロールバック計画とクライアント向けレポートも修正ごとに保存します。さらに、トラフィック減少の理由、クリックされない 1 ページ目の検索結果、1 ページ目まであと少しのクエリも把握できます | measure · impact, measure · ai_citations, web_vitals · trend, find_opportunities · traffic_drop, find_opportunities · ctr_gaps, find_opportunities · striking_distance, fix_log · report |
Four weeks later...
You: Did the fixes on /pricing and /features work?
Assistant: (Search Console) clicks for 28 days before and after 8 September
measure · impact changed pages +70%, unchanged pages +3%
→ +66% lift; /features +357% after the stray noindex was removed
measure · impact は、変更していないページのトレンドを差し引くため、季節性や Google のアップデートが成果として数えられることはありません。示す内容について誠実です。これは 2 つの期間を比較するものであり、証明ではありません。
調査から完了まで
多くの SEO ツールはレポートを出して終わりです。OnPage.dev はプランをチームがすでに使っているツールに渡すため、修正を割り当てて反映できます。share · export を使うと、ページのスキャン結果やサイト全体の監査結果を次の形式に変換できます。
- Google Sheets:調査結果ごとに 1 行で、優先度、ページ、問題、修正内容、コード、ステータスを含みます。エクスポートごとに非公開の CSV リンクが付属するため、
=IMPORTDATA("https://onpage.dev/export/….csv")を使えば、コネクタなしでシートに読み込めます。 - Slack、Teams、Discord:重要度の高い修正をまとめた概要を、エージェントの Slack ツールまたは受信 Webhook に直接投稿します。
- Linear、Jira、Asana、Trello、GitHub Issues:問題ごとに 1 件のタスクを作成し、複数ページにまたがるものはまとめて、優先度、ラベル、修正方法を記載します。
- Notion または Confluence:Markdown 形式のチェックリストを作成します。
You: Audit example.com, put every fix in a Google Sheet and post the summary in #seo.
Assistant: site_audit · start 25 pages, 41 findings
share · export sheet link, Slack message, 12 tasks
(Google Sheets) rows added to "SEO fixes"
(Slack) posted to #seo
OnPage.dev が Slack、Google、タスクボードにログインすることはありません。エージェントは、ユーザーがすでに接続しているツールを使ってプランを送信するか、数式を貼り付けるだけです。スキャン結果や監査結果には案内が付くため、エージェントは自発的にエクスポートを提案します。
すべての閲覧者に見える内容
Google は HTML を読み取ります。訪問者はスマートフォンで画面を 1 つ見ます。スクリーンリーダーや、人に代わってウェブを閲覧する AI エージェントは、アクセシビリティツリーを読み取ります。OnPage.dev は実際のブラウザーですべてをチェックします。
layout · render はスマートフォン、タブレット、デスクトップでページを読み込み、最初の画面をチェックします。スクロールせずに H1 と行動喚起が見えるか、Cookie の同意画面やポップアップがそれを覆っていないか、タップ対象は十分な大きさか、読み込み中に何がずれるかを確認します。JavaScript をオフにしてページをもう一度読み込み、GPTBot と ClaudeBot に見えない内容を表示し、最初の画面が Google のスニペットで約束された内容を提供しているかをチェックします。スクリーンショットも確認できます。
さらに、ページをプロらしく読みやすくする細部であるデザインと読みやすさもチェックします。
- 実際の背景色に対して測定した、コントラストが不十分なテキスト(WCAG AA:4.5:1、大きなテキストの場合は 3:1)。修正に必要な色も示します。
- スマートフォンでページを横スクロールさせる正確な要素と、そのピクセル数。
- ボタンのスタイルの不統一:ボタンに使われている角のスタイルと高さの種類数。
- セクション間隔の不均一さ。
accessibility · screen_reader は、スクリーンリーダーが読み上げるとおりにページを読み取ります。
heading level 1, Running shoes for flat feet
link, Women
link ← announced without a name
button ← announced without a name
image, Trail shoe in grey mesh, side view
link, Read more ← vague, and weak anchor text
名前のないリンクやボタン、曖昧なリンクテキスト、ラベルのないフォームフィールド、メインランドマークの欠落、見出しレベルの飛ばし、閲覧者に隠された表示テキストを検出します。アクセシビリティは Google の直接的なランキング要因ではありませんが、代替テキスト、リンクテキスト、見出し、隠されていないテキストは、検索エンジン、AI 回答エンジン、ブラウジングエージェントが実際に読み取る内容です。AI コーディングアシスタントで構築したサイトを含め、注意深く構築されたサイトでも見落としがあります。Lighthouse を含む他のすべてのチェックに合格した、よく構築されたニュースサイトを実際にスキャンしたところ、スクリーンリーダーの表示では、サイト内の 9 種類のカードレイアウトで「リンク」とだけ読み上げられるリンクが見つかりました。各サムネイル画像は記事へのリンクでしたが、スクリーンリーダーが読み上げる名前がありませんでした。
独自のブラウザーツール(Claude in Chrome、Playwright)をお持ちですか? layout · probe は簡単な計測スクリプトを提供し、layout · analyze はその結果を分析します。1 日あたりの制限はなく、ステージング環境、localhost、ログインが必要なページでも機能します。
実際のユーザーの表示速度
ラボテストは推測にすぎません。web_vitals · now は、Google がランキングに使用するフィールドデータである Chrome UX Report から、過去 28 日間に実際の Chrome 訪問者が得た結果を表示します。
You: Is our homepage fast enough for Google?
Assistant: web_vitals · now Phone: passed · Desktop: passed
LCP 1.4 s good 93% of visits good
INP 197 ms good 75% of visits good, 8% poor
CLS 0.00 good 95% of visits good
- スマートフォンとデスクトップそれぞれの LCP、INP、CLS に加え、FCP と最初のバイトまでの時間を表示し、それぞれを「良好」「要改善」「不良」と評価します。
- Core Web Vitals の評価の合格または不合格と、良好、要対応、不良だった訪問の割合。
- トラフィックが少なすぎるページではサイト全体のデータに切り替わり、その旨がツールに表示されます。
- 良好でないすべての指標について、修正すべき内容を示します。同じカードが onpage.dev のすべてのスキャンに表示されます。
すでにある SEO データを活用
Google Search Console、GA4、Ahrefs、Semrush をすでにアシスタントに接続していますか? OnPage.dev はアシスタントに各サービスから数値を取得するよう伝え、prioritize_fixes が獲得できるトラフィックに基づいて修正を順位付けします。何も接続していない場合は、これまでどおり深刻度に基づいて順位付けします。設定は不要です。
You: Audit example.com and tell me what to fix first.
Assistant: site_audit · start 10 pages, average 81
(Ahrefs) top pages clicks, positions, keywords, referring domains
prioritize_fixes ranked by traffic impact
1. /pricing is noindex but gets 900 visits a month. Fix this first.
2. /results ranks #6 for "league table" (5,600 searches a month).
Add the term to the H1 to push into the top 3, ~330 extra clicks.
3. /guide shows up 20,000 times at position 3 but gets 0.2% clicks.
Rewrite the title and description, test them with check_snippet.
仕組み:MCP サーバーは他のコネクターを読み取れませんし、読み取るべきでもありません。OnPage.dev の結果と指示は、利用可能な SEO データツールから数値を取得するようアシスタントに依頼し、アシスタントがそれを prioritize_fixes に渡します。数値はその回答に限って使用され、保存されることはありません。OnPage.dev がそれらのサービスにログインすることはありません。
スパイク、急落と、その背景にある Google のアップデート
CSV をエクスポートせずに、1 つのチャットで Search Console、GA4、Bing を利用できます。トラフィックについて尋ねると、エージェントが日次データを find_opportunities に渡し、mode: "anomalies" を指定します。
You: Did anything odd happen to our traffic this quarter?
Assistant: (Search Console) daily clicks, 90 days, by page
find_opportunities · anomalies
Drop 25 to 27 Sep: -59% (90 clicks, normal about 220)
Google: September 2026 spam update (Ranking, 24 Sep to 8 Oct)
/pricing 12 clicks, normal about 80
- 各日のデータを、曜日ごとに過去 28 日間と比較するため、通常の週末の落ち込みがアラートになることはありません。
- Google のコアアップデート、スパムアップデート、検索インシデントを、Google Search Status Dashboard からリアルタイムで取得します。
traffic_dropにdrop_dateを渡すと、同じ一覧を確認します。 mode: "ai_queries"は、Search Console または Bing のデータから、ページごとに質問、比較、長い会話型クエリを見つけ、検索順位は高いのに AI の回答にクリックを奪われているページを特定します。
AI がすでに引用している内容
Ahrefs Brand Radar(または AI 引用数のデータソース)を接続すると、ai_visibility · citations により、ChatGPT、Perplexity、Gemini、Google AI が引用しているページと、引用していないページを並べて確認できます。OnPage.dev はすべてのページをスキャンし、引用されているページが満たしていて、ほかのページが満たしていないチェック項目を表示します。また、各項目の平均値(AI 対応度、単語数、100 語あたりの事実、外部ソース、エンティティグラフの問題)を並べて比較し、引用されていない各ページで何を変更すべきかを示します。限界についても正直です。これは少数のページに見られる相関であり、因果関係の証明ではありません。
prioritize_fixes が確認する項目:トラフィックのあるページの障害要因、掲載順位に対して低いクリック率、上位に食い込めるキーワード(掲載順位 4~15 位)、タイトルや H1 に含まれていない上位クエリ、強力なバックリンクがあるのにスコアが低いページです。
GA4 のコンバージョン(キーイベント)またはページごとの収益を設定すると、クリック数ではなく収益に基づいて順位付けします。コンバージョンにつながる料金ページは、アクセス数が多くてもコンバージョンにつながらないブログ記事より上位になります。
重要な情報を把握する順位トラッカー
キーワードリストを管理する必要はありません。Claude のルーチンまたはダッシュボードの更新から、毎日または毎週実行するたびに、アシスタントが Search Console のデータと、接続している場合は Ahrefs Rank Tracker または Semrush Position Tracking のデータを track_rankings に渡します。OnPage.dev は Search Console の平均値とトラッカーの正確な掲載順位を統合し、追跡対象を自動で選びます。
- 実施した作業: 修正ログにあるすべてのページのクエリと、変更した日付
- 収益につながるキーワード: GA4 のコンバージョンまたは収益があるページ、商業目的または取引目的の検索意図、自分で指定したリスト
- あと一歩のページ: 実際の検索需要がある掲載順位 4~20 位のページ
- 防衛すべき上位 3 位以内と、Ahrefs または Semrush ですでに追跡しているすべての項目
You: How did our rankings do this week?
Assistant: (Search Console) + (Ahrefs Rank Tracker)
track_rankings run 6, 214 keywords followed
Needs attention: "buy boots" off page 1 (8 → 15) [money]
"buy boots" now ranks with /blog/boots instead of /boots
→ diagnose_cannibalization
Wins: "trail shoes" onto page 1 (13 → 5) [money]
Work done: /trail (title, 1 Oct): 9 queries, average +6 places
実行するたびに、新たに上位 3 位以内や 1 ページ目に入ったキーワード、失ったキーワード、大きく順位が変動したキーワード、別のページが順位付けされたケース(カニバリゼーションの兆候)、表示されなくなったクエリ、AI Overviews の出現を、それぞれに対応する次のツールとともに一覧表示し、Slack または Discord に投稿できます。初回の結果と直近 90 回分を保持します。
キーワードで上位表示されるのはどのページか
同じキーワードを狙うページが 2 つあり、意図しないページが上位に表示されています。check_keyword · cannibalization は、本来上位表示されるべきページと、それを上回っているページをリアルタイムで読み込み、ページ内の各シグナルを並べて比較して、変更すべき点を示します。
You: Our blog post outranks the product page for "trail running shoes". Why?
Assistant: (Search Console) rows blog post at #4, product page at #14
diagnose_cannibalization
| Signal | Product page | Blog post |
| Title | partial | exact @0 |
| H1 | – | exact |
| H2 / H3 | 0 / 1 | 3 / 2 |
| Body mentions | 2 (0.3%) | 11 (1.4%) |
| Bold / italic | 0 / 0 | 4 / 1 |
| Alt / file names| 0 / 0 | 3 / 2 |
1. Strengthen the product page: exact keyword at the start of the title, in the H1 and an H2.
2. Tone down the blog post: keyword out of its title, H1 around its own angle, stop bolding it.
3. Link from the blog post to the product page with "trail running shoes" as the anchor.
タイトル(およびキーワードがどれだけ前方にあるか)、URL、メタディスクリプション、H1、H2、H3、本文、最初の 100 語、太字と斜体、画像の代替テキストとファイル名におけるキーワードの使用状況を数え、canonical と noindex を確認します。また、キーワードをアンカーテキストとして、どのページが相互にリンクしているかをマッピングします。2 つのページの内容がほとんど同じ場合は、代わりに 301 リダイレクトを伴う統合を提案します。content · topics は、まずサイト全体から競合するページを見つけます。
リスクを冒さずに否認し、手動による対策にも対応
誤った否認ファイルは、スパム自体よりもランキングを大きく下げるおそれがあります。backlinks · disavow は、被リンクデータ(Ahrefs の is_spam、Semrush の有害マーカー、または CSV)を受け取り、明らかなスパムだけを disavow.txt に追加します。対象となるのは、スパムと判定されたドメイン、または権威性もトラフィックもないサイト上のスパムアンカーです。権威性のあるものはすべて担当者が判断できるようリストに追加し、手動による対策も実際のネガティブ SEO もない場合は、ファイルをアップロードしないよう通知します。
手動による対策を受けましたか? explain_google · manual_action は、Google のドキュメントに記載されたすべての種類(不自然なリンク、質の低いコンテンツ、クローキング、構造化データ、サイトの評判の悪用など)を対象としています。Google が意味する内容、順を追った修正手順、それらを確認するツール、証拠として残すもの、そして実際に行ったすべての対応について TODO が付いた再審査リクエストの下書きを確認できます。
独自のクロールデータを利用
site_audit · start は最大 25 ページを読み込みます。Screaming Frog、Ahrefs Site Audit、Semrush、Sitebulb ですでにサイトをクロールしましたか? site_audit · import は最大 500 ページ分の行と内部リンクを受け取り、すべての監査ツールが認識する audit_id を返します。対象ツールは site_audit · continue、internal_links · equity、internal_links · suggest、edge_worker · rules、technical · parameters、share · export です。
You: Here is our Screaming Frog export. What should we fix first?
Assistant: site_audit · import 480 pages, 6,912 internal links
site_audit · continue meta description missing on 118 pages, 9 broken pages
internal_links · equity /pricing is 5 clicks deep with 2 links in
edge_worker · rules one rule fixes the descriptions on all /blog pages
送信した列だけがチェックされるため、説明列のないクロールデータから説明の欠落が 480 件報告されることはありません。行データは監査を進めるのに十分な 1 時間保持されます。その後は、ページごとの URL、ステータス、スコア、タイトル、canonical、noindex、問題名だけを含むコンパクトなスナップショットが 90 日間保持され、次回に site_audit · compare で変更点を確認できます。
前回の監査からの変更点
クロールまたはインポートされたサイト監査が完了するたびに、小さなスナップショットが 90 日間保存されます。次回のリリース後に監査を再実行すると、site_audit · compare で変更点を確認できます。
You: We shipped the new templates. Did anything break?
Assistant: site_audit · import 480 pages from this morning's crawl
site_audit · compare vs the crawl of 3 October
Regressions: /pricing now returns 404, /blog/guide turned noindex,
12 product pages changed their canonical.
Fixed: meta descriptions on 118 pages, 9 broken pages work again.
または、自動実行することもできます。watch · site_audit は毎日、毎週、または毎月(最大 25 ページ)サイトを監査し、各監査を前回の結果と比較します。ページのエラー、noindex への変更、canonical の変更、新たな問題があった場合は、変更点を Slack、Discord、または任意の https webhook に投稿します。action: "status" で最後の結果を確認できます。
獲得につながるリンクと、AI の回答に掲載される方法
SEO ツールのデータを活用して、OnPage.dev が実行計画に落とし込む、もう 2 つの作業をご紹介します。
track_rankings:Search Console と Ahrefs または Semrush の順位追跡を使い、作業内容から選んだキーワード、収益につながるページ、あと一歩のページを確認できます。実行ごとに何が変化したかもわかります。backlinks · disavow:明らかなスパムだけを含む disavow.txt を作成し、それ以外は確認対象として残します。アップロードすべきでない場合は警告します。explain_google · manual_action:Google の手動対策のすべての種類について、対処手順、確認ツール、保管すべき証拠、再審査リクエストの下書きを提示します。check_links · outbound:他のサイトへのリンク切れ、引用先がホームページにリダイレクトされているページ、移転したページを検出し、代わりに使えるアーカイブ済みページを提示します。check_keyword · cannibalization:本来なら上位表示されるべきページと、それを上回っている自サイトのページを、シグナルごとに確認します(タイトル、URL、メタデータ、H1 から H3、言及、最初の 100 語、太字、斜体、alt テキスト、ファイル名、キーワードを含む内部リンクのアンカーテキスト)。修正計画も提示します。plan · split_test:同じテンプレートを使う 20 ページ以上を、トラフィックが均等な 2 つのグループに分割します。一方のグループだけでタイトルまたは説明を変更する Worker を用意し、訪問者と Googlebot の両方に同じ変更を適用します。効果はmeasure · impactで測定します。site_audit · report:サイト監査を仕上げて、代理店名入りの見やすいレポートページを作成します。リンクで共有したり、PDF として保存したりできます。text_quality · spelling:ページ本文にある実際のスペルミスや文法の誤りを検出します(LanguageTool、約 30 言語に対応)。ブランド名やスタイルに関するアドバイスは対象外です。sitemap · generate:監査結果から、インデックス登録可能で自己参照型 canonical のページだけを含む sitemap.xml を作成します。除外した各ページの理由も示します。- セクションと競合:
site_audit · continueではセクションごとの問題を確認できます。competitor_audit_idを指定してsite_audit · compareを使うと、2 つのサイトを並べて比較できます。 find_opportunities · content_decay:ページごとの月間クリック数(Search Console、Ahrefs pages-history、または GA4)を、ピーク後に下落し続けているページの更新キューに変換します。季節的な落ち込みは除外されます。get_fix_pack · alt_texts:alt テキストのない画像を一覧表示します。アシスタントが画像を見てテキストを作成し、OnPage.dev が確認して HTML、Cloudflare Worker、WordPress、またはコードとして反映します。- 内部リンクの適用:
platformを指定したinternal_links · suggestは、各ページで最初に言及される箇所にリンクを追加する Cloudflare Worker(既存リンク内には追加しません)、WordPress 用の手順、またはコード変更を返します。 - Google ビジネス プロフィールとサイトの比較:
gbp_profileを指定したlocal · checkは、Google ビジネス プロフィールの名前、電話番号、住所、曜日ごとの営業時間、カテゴリ、ウェブサイトのリンクをサイトと比較します。 - リッチリザルトのエラー:
explain_google · index_statusは、URL Inspection のrichResultsResultと Enhancements のエクスポート行を、種類と問題ごとにまとめます。壊れたテンプレートも 1 回の修正で対処できます。 get_fix_pack · web_vitals:速度改善の修正をコードとして、問題が発生している指標の順に提示します(メイン画像の優先設定、スクリプトの遅延読み込み、preconnect、フォントの置換、画像サイズ)。Cloudflare Worker としても提供します。backlinks · opportunities:最大 5 社の競合と自社の参照ドメインを渡します(Ahrefs、Semrush、または CSV)。自社にはリンクしていないものの、競合 2 社以上にリンクしているサイトを、重複数とドメイン評価順に提示します。ベスト記事、リソースページ、レビューサイト、ディレクトリ、フォーラム、ニュースなどの種類と、それぞれへのアプローチ方法もわかり、リンクの有効性もリアルタイムで確認します。ブランドに言及しているページを追加すると、各ページを読み込み、リンクなしで自社名を挙げている箇所と、メールで引用できる文章を返します。ai_visibility · gaps:Ahrefs Brand Radar または別の AI 可視性ツールから、実際の AI 回答を渡します。各検索エンジンの回答における自社のシェアを競合と並べて確認でき、自社ではなく競合が挙げられている質問(検索ボリューム順)、回答のために AI が検索した情報、引用されている外部サイトもわかります。掲載を目指すべきサイトが明確になります。
You: Why does ChatGPT recommend Rivalo and not us?
Assistant: (Ahrefs) Brand Radar 120 answers for us and 2 competitors
ai_visibility · gaps ChatGPT names Rivalo in 41%, us in 12%
14 questions where only they appear
cited most: zapier.com list, g2.com, reddit
backlinks · opportunities zapier.com links to both rivals, not to us
失われたリンクも
他のサイトから、削除または移動したページへのリンクが今も残っており、訪問者は引き続きそこにたどり着きます。こうしたリンクや訪問はすべて、本来得られたはずの価値を失わせています。Ahrefs、Semrush、GA4(404ページのページビュー)、またはCSVエクスポートを使えば、backlinks · broken がそれらをランキング向上とトラフィックにつなげます。
You: Which of our backlinks point at dead pages? Fix them.
Assistant: (Ahrefs) broken backlinks 112 links to 19 dead pages
backlinks · broken ranked by linking sites and domain rating
top 20 checked live: 14 dead, 3 already fixed, 2 block bots
1. /blog/running-shoes-guide 38 sites, best DR 81 → /guides/running-shoes
2. /old-promo 12 sites, best DR 64 → /socks/trail (anchor text match)
3. /moved reached via 3 redirects → one 301 straight to /new-home
14 rules ready for _redirects. /old-promo is still in your sitemap.
リンク切れのページは、リンク価値に応じてグループ化され、順位付けされます(リンク元サイトはそれぞれ1回だけカウントされ、ドメインレーティングに応じて重み付けされます。nofollowは30%です)。上位20件は実際に確認されるため、すでに再び機能しているページや、ボットだけをブロックしているページが誤ってリダイレクトされることはありません。各リンク切れページには、サイトマップまたはサイト監査から最適な有効ページが割り当てられます。URL、ページタイトル、他のサイトで使われていたアンカーテキストを照合します。近い候補がない場合は、その旨が示され、リンクがホームページに転送されることはありません。GA4の404ヒットは実際の訪問数として順位に反映され、訪問者が自サイト内のページから来た場合は、リダイレクトの裏に隠すのではなく、そのリンクが編集箇所として一覧表示されます。ルールは_redirects、nginx、Apache、Next.js、またはCSV向けに出力され、価値の高いリンク元サイトにはメールで連絡できます。その後、check_links · urlsで各リンクが単一の301リダイレクトであることを確認し、fix_log · logで継続的に監視します。
失われた被リンクにも対応します。履歴とlost_reasonを含むAhrefsの被リンクデータを渡すと、ページが消えた場合や自サイト側でリダイレクトが壊れた場合は301リダイレクトを設定します。相手サイトがリンクを削除した場合は、優先度の高い順に、依頼内容(「リンクを戻す」「ページの新しいバージョンにリンクする」)と、以前リンクが置かれていた文章を添えたアプローチ先リストに追加します。
Search Consoleを接続していなくても、find_opportunities · striking_distanceとcontent · topicsでは、AhrefsまたはSemrushのオーガニックキーワードデータ(キーワード、URL、順位、検索ボリューム、トラフィック)を利用できます。また、competitor_rowsを指定したcontent · topicsは、キーワードギャップを提示します。競合が検索ボリューム順でトップ10にランクインしている一方、自サイトはランクインしていないトピックと、強化すべきページまたは新たに作成すべきページを特定します。
サイト独自の語り口で執筆
ほとんどのAIライティングツールは、いかにもAIライティングツールらしい文章になります。OnPage.devは自ら文章を書くことはありません。執筆するのはあなた自身のエージェントです。OnPage.devはそのための視点、計画、チェック機能を提供し、すべての記事がサイト全体になじむ語り口になり、サイトですでに成果を上げた内容に基づいて作成されるようにします。
You: Plan next month's posts for example.com and draft the first one.
Assistant: content · voice 5 articles read: sentences ~14 words, paragraphs ~52,
"you" voice, 30% question headings
content · calendar 8 items over 4 weeks
Mon Refresh /guides/compost "compost bin" (pos 11, +140 clicks)
Thu New "raised bed soil" as a list (lists lifted clicks +18% here)
content · draft Voice match 91/100
1 figure without a source: "cuts household waste by 30%"
SEO scan 88/100
Here is the draft. Approve it and I publish it as a draft in WordPress,
log it, and measure it in 4 weeks.
- 語り口を学習します。 最良の記事を2~5本使い、文、段落、セクションの長さ、疑問形の見出し、リスト、「あなた」または「私たち」の使い方、タイトルの長さ、文章のサンプルを学習します。以降のすべてのコンテンツブリーフに反映されます。
- カレンダーを作成します。 1ページ目に近い検索クエリ向けの更新と、取りこぼしているトピックの新規ページ(
content · topicsまたはai_visibility · gapsから取得)を交互に配置し、週ごとに日付を設定します。すでに下書き済みのキーワードは除外されます。 - 下書きを表示する前に毎回チェックします。 具体的な改善案付きの語り口の一致度、出典リンクのない数値、HTMLの包括的なSEOスキャンを確認します。
- サイトで効果のある内容を学習します。 下書きが公開され、記録されると、
measure · impactの結果が形式、長さ、タイトル、FAQに関連付けられます。3回測定するとルールが作成され、Googleの更新は除外され、5件ごとにまだ試していない形式がテストされます。 - 継続的なサイクルを維持します。 カレンダーはサイトメモリに保存されるため、
site_memoryで期限が来ている項目や期限を過ぎた項目、測定準備が整った公開記事を確認できます。SlackまたはDiscordのWebhookを追加すると、毎週月曜日にリマインドされます。 - 自動で公開することはありません。
content_autopilotプロンプトは一連のワークフローを実行し、公開前に必ず承認を待ちます。
検索意図に合致
1か月を無駄にする最速の方法は、Googleでガイドしか上位表示されないキーワード向けに製品ページを書くことです。content · intent は、執筆前に実際に上位表示されているページを確認します。
エージェントが Ahrefs または Semrush からキーワードの上位検索結果を取得し、OnPage.dev がそのすべてをスキャンして、Googleが評価するページタイプを特定します。ガイド、リスト記事や比較記事、製品ページ、カテゴリーページ、サービスページ、ツール、地域のビジネスページ、ニュース記事、レシピ、ヘルプページ、料金ページ、フォーラム、動画などです。
You: Does our page fit "best running shoes for flat feet"?
Assistant: (Ahrefs) serp-overview top 7 results
content · intent 8 pages read
Your page fits: Google ranks listicles here (runrepeat, rtings),
and yours is one too.
4 of 7 results are forums (Reddit, JustAnswer): searchers want
real experience. Add first-hand testing, photos and named experts.
43% of the top results put the year in the title.
- ページタイプの一致度: 一致、近似(同じ意図で形式が異なる)、または不一致を、各検索結果の根拠とともに示します。
- 上位表示される形式: 上位検索結果の文字数と小見出しの中央値、FAQ、年号、タイトル内の数字を含むページの数を示します。
- フォーラムと動画: スクレイピングせず、URLから認識し、経験や信頼性に関する具体的なアドバイスに反映します。
- サイト全体: Search Console の行を渡すと、2つのページが互いに競合しているクエリや、複数の意図を集めているページを見つけます。
ページに合った読みやすさ
製品ページはドキュメントのような文章にすべきではありません。text_quality · readability は、適切な目標値と比較して読みやすさ(Flesch、またはオランダ語の場合は Flesch-Douma)を測定します。目標値には、そのキーワードで上位表示されているページの中央値を使い、競合がない場合はページタイプの一般的な基準を使います。最初に書き直すべき難解な文や段落を、メニュー、リンク一覧、表を除外してリストアップします。
Assistant: text_quality · readability Reading ease 63, ranking pages median 52 (52, 63, 49)
Hardest sentence (22 words, score 8):
"Runner's World Running Reviews Editor, Amanda Furrer, who has
relatively low arches, researched shoe testing data from..."
WordPress に反映
チャットから公開まで、変更はすべてあなたが承認します。platform: "wordpress" を指定した get_fix_pack は、エージェントが独自の WordPress 接続(たとえば WordPress MCP サーバー)経由で適用できる WordPress 向けプランを作成します。
You: Fix the SEO on /trail-shoes and put it live.
Assistant: scan_page 46: title too short, no meta description, 1 image without alt
get_fix_pack platform: wordpress, 3 changes
SEO title -> Yoast _yoast_wpseo_title
Description -> Yoast _yoast_wpseo_metadesc
Alt text -> media library
Shall I apply these 3 changes? You: yes
(WordPress) update post + media
scan_page · rescan 94, all 3 fixed
- Yoast SEO と Rank Math の各値を設定する正確なフィールド、メディアライブラリ用の代替テキスト、カスタム HTML ブロックとしての構造化データを提示します。
- エージェントは変更内容をすべて変更前と変更後の値で表示し、公開前にあなたの承認を待ちます。
- OnPage.dev はあなたのサイトにログインせず、パスワードも保存しません。変更はすべて、あなた自身の WordPress 接続を通じて行われます。
- WordPress 接続がない場合も、同じプランで、何をどこに貼り付ければよいかを正確に案内します。
WordPress プラグインでワンクリック承認
OnPage.dev WordPress plugin(ソース)をインストールし、「Tools, OnPage.dev」で「Connect」をクリックして、サイトキーをエージェントに渡します。すると、mode: "wordpress" を指定した get_fix_pack が修正内容を直接 wp-admin に送信します。
プラグイン 1.1 の新機能:エージェントから投稿全体を送信することもできます。新しい投稿や固定ページは、あなたが公開する下書きとして届きます。既存の投稿を更新する場合は、削除された段落と追加された段落が並べて表示され、承認すると公開されます。その後、誰も投稿を編集していなければ、元のテキストに戻すことができます。
You: Fix the SEO on /trail-shoes and send it to WordPress. Site key wpk_...
Assistant: get_fix_pack · wordpress 3 changes waiting for approval
wp-admin: Tools, OnPage.dev
title Trail shoes -> Trail running shoes for rocky ground | Acme
meta_description (empty) -> Grip, cushioning and sizes for ...
jsonld (none) -> Product
[Approve selected] [Reject all]
Assistant: get_fix_pack · wordpress change_id: applied, old values kept
scan_page · rescan 94, all 3 fixed
- フィールドごとに変更前と変更後の値を表示し、すべてまたは一部を承認できます。変更セットは後からいつでも元に戻せます。
- Yoast SEO または Rank Math が有効な場合は、それを通じて書き込みます。どちらも有効でない場合は、プラグインがタイトル、説明、canonical、ソーシャルタグを出力します。JSON-LD とメディアライブラリの代替テキストは、どの環境でも利用できます。
- データの取得のみ:提案された変更は、プラグインのページを開いたときに取得されます。OnPage.dev はあなたのサイトにログインせず、管理者の承認なしに変更が加わることはありません。
WordPress だけでなく、CMS に変更を適用します
get_fix_pack は、サイトが利用しているプラットフォーム向けに修正プランを作成します。承認後、ユーザー自身の接続を通じて修正を適用します。各修正には、使用する MCP ツールまたは API 呼び出しとフィールドが正確に指定されます。
| プラットフォーム | 修正の適用方法 | 知っておきたい制限 |
|---|---|---|
| WordPress | WordPress MCP を通じた Yoast SEO または Rank Math のフィールド | テーマレベルのタグはテーマ内にあります |
| Shopify | Admin GraphQL:productUpdate / collectionUpdate の seo、ページと記事の global.title_tag メタフィールド、urlRedirectCreate | canonical、構造化データ、robots.txt はテーマ内にあります |
| Webflow | 公式 Webflow MCP:update_page_settings(seo、openGraph)、CMS フィールド、JSON-LD 用の upsert_page_script | MCP 経由でページごとの canonical は設定できません。リダイレクトには Enterprise が必要です |
| Wix | 公式 Wix MCP:SEO タグ API(title、description、canonical、robots、OG、JSON-LD) | 書き込みのたびにタグ一式が置き換わるため、先に読み取ってください |
| Storyblok | Management API 上の公式 Storyblok MCP:ストーリーを読み取り、publish を使ってコンテンツ全体を書き戻します(SEO アプリのフィールド、独自の SEO フィールド、アセットの alt) | PUT ではコンテンツ全体が置き換わるため、先に読み取ってください。canonical と JSON-LD はフロントエンド内にあります |
| Sanity、Contentful、Strapi | 公式 MCP サーバーでエントリーにパッチを適用または更新し、その後 publish します | フィールド名はコンテンツモデルによって異なります |
| Ghost、Magento | 管理 API または REST API、あるいはコミュニティ MCP サーバー | スキーマにはテーマテンプレートを使用します |
| その他すべて | Git のプルリクエスト、またはエッジであらゆる CMS を修正する Cloudflare Worker |
プルリクエストとして出力します
WordPress 以外をお使いですか? platform: "git" を指定した get_fix_pack は、サイトのフレームワーク向けのコードとして修正を作成し、エージェントがすでに利用できる Git ツールを通じてプルリクエストを作成します。ページ自体から Next.js(App Router と Pages Router)、Nuxt、SvelteKit、Astro、Angular、React、Vue、プレーン HTML を検出します。
You: Fix the SEO on /pricing and open a PR.
Assistant: scan_page 58: title too short, no canonical, no structured data
get_fix_pack platform: git, detected Next.js (App Router)
export const metadata = { title, alternates.canonical }
JSON-LD in the page component
git switch -c seo/onpage-pricing
(edit app/pricing/page.tsx, build)
scan_page · html 91, nothing else changed
gh pr create #42 "SEO: title, canonical, jsonLd for /pricing"
- Next.js では
metadata、Nuxt と Vue ではuseSeoMetaとuseHead、SvelteKit では<svelte:head>、Angular ではTitleとMetaサービス、Astro とプレーン HTML では head タグを使用します。 - 必ず新しいブランチを作成し、PR の前に
scan_page · htmlでチェックします。エージェントがマージすることはありません。 - クライアントサイドの React、Vue、Angular アプリについては、AI クローラーは JavaScript を実行しないため、プリレンダリングの方法も説明します。
無料 API を使ったシェアカードの確認
snippet · social は、Facebook、LinkedIn、X、WhatsApp、Slack でページを共有したときの表示を確認します。すべての Open Graph タグと Twitter タグに加え、シェア画像そのものも確認します。画像を読み込み、ファイルヘッダーから実際のサイズを読み取るため、ほかのチェッカーが見逃すケースも検出できます。たとえば、404 を返す og:image、1200 x 630 の画像が適切な場所にある 400 x 400 のロゴ、どのプラットフォームにも表示されない SVG、6 MB のファイルなどです。
同じチェックは、キー不要の無料公開 REST API としても利用できます。
curl "https://onpage.dev/api/v1/og?url=https://example.com"
{ "url": "https://github.com/", "score": 100,
"image": { "ok": true, "type": "image/png", "width": 1200, "height": 630, "bytes": 618778 },
"issues": [] }
IP アドレスごとに毎分 10 件までリクエストできます。CORS はすべて許可され、各結果は 5 分間キャッシュされます。ブラウザーでお試しください:Open Graph チェッカー。
公開後も監視を続けます
SEO の問題は、公開初日に発生するとは限りません。後から発生することもあります。デプロイで noindex が追加されたり、CMS の更新で canonical が変更されたり、新しい robots.txt によって GPTBot がブロックされたりします。watch · page はページをおよそ 1 日に 1 回再チェックし、検索と AI に関する変更をすべて記録します。アラートは非公開の RSS フィードに送信され、指定した場合は Slack または Discord の webhook にも送信されます。アカウントもキーも不要です。
You: Keep an eye on our pricing page and tell me if anything breaks.
Assistant: watch · page baseline 94/100, 8 of 8 AI crawlers allowed
...three days later, in your Slack:
OnPage.dev: 2 change(s) on https://example.com/pricing
- A noindex tag was added: the page will drop out of Google
- The score went from 94 to 71
さらに、エージェントが毎週依頼される 3 つの作業があります。
content · brief:検索語と、その検索語で上位に表示されるページを指定すると、執筆用のブリーフを取得できます。多くのページが扱っているサブトピック、回答している質問、自社データで裏付けるべき数値、目標文字数、スキーマ、内部リンクが含まれます。ボット対策の壁やナビゲーション見出しは除外されます。plan · redirects:移行前後の URL(またはサイトのサイトマップを読み込む場合はサイト)を指定すると、マッチごとの信頼度スコア付きの 301 マップを取得できます。_redirects、nginx、Apache、Next.js、CSV の形式で出力できます。公開後はcheck_links · urlsで検証できます。site_audit · import:すでに実施したクロールのページ行(Screaming Frog、Ahrefs Site Audit、Semrush、Sitebulb)を、内部リンクと合わせて最大 500 ページまで渡すと、すべての監査ツールでサイト全体を対象にできます。送信した列のみがチェックされます。site_audit · compare:完了したサイト監査を、同じサイトの前回の監査と比較します(スナップショットは 90 日間保持)。問題が発生したページ、noindex になったページ、canonical または title が変更されたページ、コードごとの新規または修正済みの問題、追加または消失したページ、監査前後の平均スコアを確認できます。watch · site_audit:サイト全体を 1、7、30 日ごとに監査し、毎回の監査を前回と比較して、後退を webhook(Slack、Discord、または任意の https エンドポイント)に投稿します。schedule_idでステータスを確認し、停止できます。backlinks · opportunities:競合のバックリンクギャップ(2 社以上の競合にはリンクしているが、自社にはリンクしていないサイト)をランキングし、それぞれへのアプローチ方法を分類します。さらに、ライブデータから未リンクのブランド言及を読み込み、引用できる文も取得できます。ai_visibility · gaps:実際の AI 回答(Brand Radar など)から、エンジン別のシェア、競合のみが言及されている質問、AI が行った検索、その AI が引用したサイトを把握できます。backlinks · broken:Ahrefs、Semrush、または CSV エクスポートから、切れたバックリンクを渡します。リンク元がまだ残っているサイトの数に基づいてリンク切れページをランキングし、上位 20 件をライブでチェックします。各ページには、サイトマップ、サイト監査、アンカーテキストから判断した、301 で転送するのに最適な現行ページが割り当てられ、すぐに公開できるルールが出力されます。サイトマップに残っているリンク切れページ、リダイレクトチェーン、一時的なリダイレクトにもフラグが付きます。share · link:サイトの修正後、修正した問題とともに、修正前後のページ(例:46 → 94)を公開してクライアントに送れます。インデックス登録されず、90 日後に期限切れになります。
すべてのサイトを記憶します
エージェントはチャットが変わるとすべてを忘れてしまいます。OnPage.dev は違います。site_memory は秘密の memory_key のもと、サイトごとに1つのメモリーを保持します。チャットで開くと、OnPage.dev のすべてのツール呼び出し(見つかったこと、公開したこと、測定したこと)が記録され、そのチャットで開始したガード、スケジュール済み監査、競合サイトの監視、修正ログの結果も追加されます。次のチャットは、Claude、ChatGPT、Cursor のいずれでも、前のチャットが終わったところから始められます。
You: Pick up where we left off on example.com.
Assistant: site_memory · open 41 steps since July: pricing 46 → 91, 12 fixes shipped,
+38% clicks vs control, guard caught a noindex on 3 Oct
Next: 1. Measure the 4 fixes shipped 5 weeks ago
2. /blog/guide scored 58, no fix written yet
3. No rank tracker yet
| モード | 機能 |
|---|---|
open | メモリーを開くか作成し、チャットに紐づけ、概要と次のステップを返します |
next | 記録されたすべての内容から最適な次のステップを提示します。測定されていない修正、修正がない低スコア、未解決のアラート、未設定のガードやトラッキングが対象です |
timeline | スキャン、修正、測定、ランキングの実行、アラートを、ページ別または種類別に新しい順でスキャンします |
note | 「タイトルに価格を入れない」や「10月3日に移行した」など、ツールでは把握できない決定事項を記録します |
forget | メモリーとその中のすべての内容を削除します |
学習します。 測定された各結果は、その前に公開された修正と紐づけられます。そのため、メモリーを開くと、prioritize_fixes、get_fix_pack、plan · sprint で、このサイトのトラフィックを伸ばした修正の種類(「このサイトではタイトルの書き換えで+38%」など)が示され、site_memory · next では、それらをさらに多くのページに展開することが提案されます。メモとして保存した決定事項は、すべての修正パック、概要、下書きに含まれます。
点と点をつなげます。 ランキングの低下、トラフィックの減少、劣化、バイタルの悪化、アラートには、過去3週間の修正、デプロイ、決定事項が添えられるため、エージェントはまずそれらを確認します。
オプトインすると、複数のサイトをまたいで学習します。 share_learning: true を指定してメモリーを開くと、測定結果ごとに、修正の種類、整数パーセントに丸めた変化量、月だけを含む匿名の行が共有プールに追加されます。サイト名、アドレス、数値、テキストは共有されません。ある修正の種類について、10サイトから20件の測定結果が集まると、prioritize_fixes、get_fix_pack、plan · sprint にサイト間の変化量の中央値が表示されます。無効にするかメモリーを削除すると、そのメモリーが追加したデータはすべて削除されます。
メモリーには各ステップの概要といくつかの数値が保存され、生データの行やページの内容は保存されません。キーはハッシュとしてのみ保存され、400日間使われなかったメモリーは削除されます。
SEO チームのように実行し、監視し、測定します
すでに接続済みのツールを使って、エージェントが修正に取り組みます。
| 作業 | 呼び出し | 得られるもの |
|---|---|---|
| リンク獲得につながるアウトリーチ | backlinks · outreach | 被リンクデータを基に、サイトごとに短いメールを作成します。リンク切れやリンクの欠落、自社のページ、アンカーテキストを記載します。承認後に Gmail または Outlook に下書きを作成します |
| チームが実行できる計画 | plan · sprint | 開発、コンテンツ、アウトリーチの各担当者が対応できる時間内に、修正を週ごとに整理し、Linear、Jira、Asana、monday.com、または GitHub のチケットとして作成します |
| 修正後すぐに再クロール | request_recrawl | 公開した各ページのステータス、noindex、canonical を確認し、サイトマップの lastmod を最新にして IndexNow を実行し、Search Console で再クロールをリクエストするページを提示します |
| デプロイ時のガード | watch · guard | robots.txt、サイトマップ、https、重要なページを6時間ごとに確認します。Disallow: /、noindex、canonical の移動を検知すると、修正案とともに Slack に通知します |
| 競合他社が公開しているコンテンツ | watch · competitors | 最大3社のサイトマップを毎週確認し、新規、更新、削除されたページのうち、自社のトピックに関わるものを知らせます |
| AI アシスタントからの訪問 | measure · ai_referrals | GA4 から、ChatGPT、Perplexity、Gemini、Copilot、Claude 経由の訪問数をランディングページごとに確認し、コンバージョン状況も把握できます |
| ブランド検索と非ブランド検索 | measure · brand_split | 成長が SEO によるものか、社名を検索する人によるものかを確認できます |
| シェア・オブ・ボイス | measure · share_of_voice | Ahrefs または Semrush の順位データを基に、競合他社に対するクリックシェアと、競合他社が獲得しているキーワードを確認できます |
find_opportunities · prune | 1年分のクリック数、表示回数、コンバージョン、被リンク、内部リンクを基に、ページごとに1つの判断を提示します。維持、更新、301 リダイレクトを伴う統合、noindex、410 を返して削除から選べます。価値のあるページは削除しません | 38 merges, 112 removals |
find_opportunities · discover | Google Discover と News に向けて記事テンプレートを確認します(大きな画像プレビュー、1200 px の画像、日付、Article マークアップ、わかりやすいタイトル)。Discover または News の行も提示します。コンテンツの陳腐化とトラフィック減少では、search_type が Discover、News、Image、Video の行を読み取ります | 4 of 6, image too small |
local · reviews | 返信がない Google レビューすべてに、短く個別の返信を作成します。不満を持つ顧客を優先し、称賛や苦情のテーマもまとめます。承認後、ユーザーの Business Profile コネクターを通じて投稿します | 12 replies, 3 urgent |
local · demand | Business Profile の検索語句と地理グリッドの順位(Local Falcon など)を、新しいサービスページや地域ページ、および対策が必要なマップエリアにつなげます | 5 new pages, 2 weak areas |
tracking · gsc_vs_ga4 | ページごとの Search Console のクリック数と GA4 のセッション数を比較し、タグの欠落、同意の喪失、参照元を失わせるリダイレクト、誤ったトラフィック分類を特定します | 3 pages lose 40% of visits |
find_opportunities · paid_organic | Google Ads の検索語句を Search Console と並べて確認し、上位3位以内にランクインしているのに広告費を払っているキーワード、コンバージョンにつながるのにページがない広告語句、コンバージョンのない広告費を特定します | €1,240 a month to test |
explain_google · bing | Bing Webmaster のクロールとインデックスの問題を修正案とともにまとめ、クエリごとに Bing と Google を比較します(Bing のデータは Copilot にも提供されます) | 14 issues, 6 weak queries |
You: We shipped the new templates. Make sure nothing broke and plan next month.
Assistant: request_recrawl 12 of 12 pages indexable, IndexNow sent
watch · guard guarding robots.txt, sitemap and 5 key pages
plan · sprint 19 tasks over 4 weeks, tickets ready for Linear
...two days later, in your Slack:
OnPage.dev guard: /pricing has noindex. Fix: remove the noindex meta tag.
エージェント向けに構築
OnPage.dev が他のどの SEO MCP サーバーとも異なる点:
- すべてをチャットで完結。ダッシュボードも含みます。 データ、計画、エージェントがデプロイする修正、その証拠まで、すべてチャット内で完結します。
dashboard · feedはサイトの重要なページを毎日チェックし、dashboard · dataはGA4やSearch Consoleと結合できる整ったテーブル形式で履歴を返します。dashboard · buildは、リアルタイムのGA4ブロック(分ごとのアクティブユーザー、ページ、イベント)をSEOの健全性、修正、速度、AIでの可視性と並べた、Claude向けのライブダッシュボードを設計します。 - メモを残すだけでなく、実際に対応します。 エージェント自身が修正を反映します。お使いのフレームワークでプルリクエストを作成するか、ご自身のWordPress接続経由で変更するか、
get_fix_packにplatform: "cloudflare"を指定してCloudflare Workerを作成し、ご自身のCloudflareアカウント上のあらゆるCMSで、ページの配信時にタグを修正します。ロールバックはワンステップです。 - 実際にループを完結させます。
fix_log · logは反映した修正をすべて記録します。OnPage.devは約6時間ごとに各修正が引き続き有効かチェックし、デプロイによって修正が元に戻された場合は復元コードをWebhookに送信します。修正ごとにmeasure · impactの結果を保存し、効果が悪化した場合はロールバック計画を提示します。また、fix_log · reportはクライアント向けレポートを作成します。 - 結果を証明します。
measure · impactは、変更していないページを対照群として、修正前後の数値を比較します。詳細。 - 発見から完了まで。
share · exportは、プランをGoogle Sheets(コネクター不要)、Slack、Notion、またはタスクボードに送信します。詳細。 - あらゆる読者を把握します。 実際のブラウザーで、スマートフォン、タブレット、デスクトップのファーストスクリーンを確認し、スクリーンリーダーのようにページを読み上げます。詳細。
- JavaScriptアプリに対応します。 クライアントサイドのみで動作するReact、Angular、Vueアプリも、Googleからの見え方に基づいてレンダリング後のページを全面的に監査します。また、JavaScriptなしではAIクローラーがどれだけ少ない情報しか取得できないかも確認します。
- どこにでも反映できます。 WordPressはご自身の接続経由で、それ以外のあらゆるスタックにはフレームワークのコードを含むGitプルリクエストで対応します。詳細。
- 実ユーザーと実際のボット。
web_vitals · nowは実際のChromeユーザーからCore Web Vitalsを読み取り、technical · logsはGooglebotとAIクローラーが実際にクロールした内容を表示します。 - 多言語対応で信頼性も確保。
technical · hreflangはすべての言語版をチェックし、修正済みのタグ一式を作成します。entity · trustはサイト全体のE-E-A-Tシグナルをチェックします。 - 技術監査に抜けはありません。
sitemap · checkは形式、上限、lastmodの日付をチェックし、掲載されたURLの一部を対象に、リダイレクト、エラー、noindex、別の場所にあるcanonicalを確認します。technical · extractは最大20ページから1つの値を抽出します(CSSセレクター、正規表現、またはJSON-LDパス)。technical · duplicatesは、監査対象ページのコンテンツに基づいて類似ページをグループ化し、technical · parametersはクローラーを誘導してしまうトラッキング、検索、フィルターのURLを見つけます。 - クリック数以上の指標を測定します。
find_opportunities · traffic_dropは、順位の低下、需要の減少、同じ順位でのクリック数減少、検索結果から消えたページなど、ページごとにトラフィック減少の原因を説明します。find_opportunities · ctr_gapsとfind_opportunities · striking_distanceは、Search Consoleのデータから最も早く成果を得られる機会を見つけます。web_vitals · trendは、修正前後約9か月分の実ユーザーの速度を週ごとに表示し、measure · ai_citationsは対照群と比較して、AIの回答で得られた成果を証明します。 - セクション全体とJavaScriptアプリを修正します。
edge_worker · rulesは、サイト監査の結果をセクションごとのCloudflare Workerルールに変換します(該当するすべてのページのタイトル、説明、canonical、ソーシャルタグに対応し、プレビューも表示します)。edge_worker · prerenderは、ご自身のCloudflareアカウントでBrowser Renderingを使い、GPTBot、ClaudeBot、PerplexityBotにReact、Vue、Angularアプリのレンダリング済みページを配信します。 - Googleがページをスキップする理由を説明します。
explain_google · index_statusは、Search ConsoleのURL検査結果を原因、修正方法、次に使うツールに変換します。また、各スキャンでheadの途中終了も検出します(<head>内の画像やiframeがcanonicalを隠している場合など)。 - 競合を監視します。
competitor_ofを指定したwatch · pageは競合のページを追跡します。競合がセクション、構造化データ、または大幅に多いテキストを追加すると、アラートで自分のページに不足しているものと、それを修正するツールがわかります。 - GA4のグラフとリポジトリに修正をすべて反映します。
format: "annotations"を指定したfix_log · reportは、修正を行った日をGA4に記録します。また、fix guard GitHub Actionは、デプロイによって修正が元に戻された場合、復元コードを含むIssueを作成します。 - GA4をデバッグします。
tracking · ga4は、実際のブラウザーで、Cookieの同意前後および再訪時に、ページがGoogleへ実際に送信するヒットを記録します。二重計測、同意前のトラッキング、Consent Modeを一度も更新しないバナー、デバッグモードの切り忘れ、Universal Analyticsの残存設定を検出します。 - AIに読まれ、引用されるようにします。
robots_txt · ai_policyは13種類のAIクローラー向けにrobots.txtルールを作成し、llms_txt · generateとllms_txt · validateはllms.txtに対応します。answer_readiness · passagesは、ページが引用に十分な回答を提供しているかを示し、entity · graphはAIがサイトの運営者を把握しているかをチェックします。 - トピックを整理し、スニペットを獲得します。
content · topicsは、Search Consoleのクエリをトピックごとにまとめ、各トピックを担当するページ、競合ページ、ギャップを表示します。answer_readiness · formatは、強調スニペットの獲得につながる回答形式(段落、リスト、表)を示します。 - 上位表示ページに内容を合わせます。
content · intentは、キーワードに対してGoogleが評価するページの種類を見つけ、text_quality · readabilityは読みやすさを上位表示ページと比較し、content · briefはそれらを執筆用のブリーフにまとめます。 - 共有時のプレビューも問題なく表示します。
snippet · socialは実際の共有画像を読み込み、Facebook、LinkedIn、Xでの表示をチェックします。無料のREST APIとしても利用できます。 - ローカル情報と内部リンク。
local · checkはLocalBusinessマークアップ、NAPの一貫性、Googleビジネスプロフィールへのリンク、各所在地のページをチェックします。internal_links · equityは内部PageRankとクリック深度を可視化し、重要なページのうち、さらにリンクが必要なものを示します。 - AI Modeに対応します。
answer_readiness · questionsは、AI検索がトピックについて展開するサブクエリに対してページをチェックし、AIが他者を引用する原因となる不足箇所を示します。 - EAAに対応したアクセシビリティ。
accessibility · wcagは、すべてのチェックをEuropean Accessibility Actの基準であるWCAG 2.1 AAに対応付けます。 - Eコマースと同意管理。
schema · product_pageは、マーチャントリスティング向けのProductマークアップをチェックし、tracking · consentはCookieバナーとConsent Mode v2をチェックします。 - 公開後もループを完結させます。
request_recrawl · indexnowはBingなどのIndexNow対応検索エンジンに通知し、エージェントはGoogle向けにSearch ConsoleツールでURL検査を実行します。 - あらゆる言語を適切に読み取ります。 読みやすさはページの言語に合った数式で評価します。オランダ語はFlesch-Douma、ドイツ語はAmstad、フランス語はKandel-Moles、スペイン語はFernández-Huertaを使用します。
- 公開された評価方法。 すべてのチェック、そのコスト、スコアに含まれない項目はonpage.dev/methodologyで確認できます。変更履歴はonpage.dev/changelogで確認できます。
- コンテキストを節約します。 37のツールで116の作業に対応します。関連する作業は1つのツールの
modeで処理できるため、エージェントが各チャットで読み込むツール一覧は約155 KBから約71 KBに減り、ツール数に上限のあるクライアントにも適合します。従来のツール名も引き続き使えます。エージェントがすでに多くのサーバーを読み込んでいる場合は、8つの主要ツールを利用できるhttps://onpage.dev/mcp?tools=coreに接続してください。 - 続きを簡単に実行でき、コンテキストも節約します。 部分的な結果にはすべて
next_callが含まれ、続きを実行するためのツールと引数が正確に示されるため、長時間かかる作業も最後まで完了できます。任意の呼び出しにdetail: "brief"を追加すると、構造化された結果は完全なまま、短い要約(約80%短縮)を取得できます。 - 監視を続けます。
watch · pageは公開後の問題を検出し、RSSまたはWebhookで通知します。詳細。 - すでにあるデータを活用します。 同じチャットでSearch Console、GA4、Ahrefs、Semrushを使えますか?
prioritize_fixesは各サービスの数値を使ってトラフィックへの影響に基づき修正の優先順位を付け、ai_visibility · citationsはAIが引用するページと異なる点を示します。仕組み。 - 安定したIssueコードと型付きの結果。 各Issueには
meta-missingやh1-missingのような固定コードがあり、主要ツールは出力スキーマを宣言します。エージェントはIssueを1つずつ処理し、それぞれが解消されたことを証明できます。 - エージェントが書いたコードをチェックします。
scan_page · html、schema · validate、compare · htmlは、新しいHTMLとJSON-LDを公開前にテストし、余分なnoindexや削除されたcanonicalなどの問題を検出します。 - 公開と移行に必要な機能を内蔵しています。
check_links · urlsは、一度に最大20個のURLについてリダイレクトチェーンをたどります。robots_txt · testは、*や$のワイルドカードを含むGoogle独自の照合ルールを使って、「このボットはこのURLを取得できるか」に回答します。 - サイト全体を段階的に処理します。
site_audit · startはエージェントが順に処理するジョブとして実行されるため、25ページの監査も無料のホスト型サービスで実施できます。サイト全体のIssueをコード別に報告し、リンク切れページ、孤立ページ、重複ページも検出します。 - 自分のページと上位表示ページを比較します。
compare · pagesはページを最大3つの競合ページと並べて、コンテンツの不足箇所と追いつくための修正を示します。internal_links · suggestは、どのページからどこへリンクすべきかを示します。 - ナレッジグラフに対応します。
entity · graphは、Organizationと著者が、単に有効なマークアップであるだけでなく、プロフィールリンクを備えた実在の関連エンティティであることをチェックします。llms_txt · validateは、/llms.txtがHTMLページを返すよくあるケースを検出します。 - クロール可能性だけでなく、引用されやすさも確認します。 AI対応状況の評価では、事実の密度、外部ソースの引用、各疑問文見出しへの直接的な回答の有無をチェックします。
compare · pagesは、競合だけが示している事実や数値、自分だけが示している事実や数値を、上位表示ページとの比較で測定した情報利得として表示します。 - 根拠のないアドバイスはしません。
onpage://rulesリソースは、各チェック、しきい値、修正方法をアシスタントに提供するため、スキャナーと同じルールに基づいてSEOを説明できます。 - 無料のホスト型サービスです。 URLを1つ貼り付けるだけで使えます。アカウント、APIキー、インストールは不要です。
1分でインストール
Cursor と VS Code ならワンクリックで設定できます。Claude、ChatGPT、その他のクライアントについては、以下をご覧ください。
サーバーはホストされています。インストールや実行は不要で、キーも必要ありません。
コンテキスト内のツール数を減らすには、メインの8つのツール(サイトメモリ、スキャン、AI ビジビリティ、修正パック、レイアウト、サイト監査、優先順位付け、共有)を利用できる https://onpage.dev/mcp?tools=core を使用してください。フルサーバーには37個のツールがあり、Cursor が全サーバーについて表示する約40個を下回ります。。
サーバー URL: https://onpage.dev/mcp
Claude Code
claude mcp add --transport http onpage https://onpage.dev/mcp
サーバーにコマンドとスキルがあらかじめ用意されたプラグインをインストールすることもできます。
Claude(claude.ai およびデスクトップ)
設定 → コネクター → カスタムコネクターを追加 → https://onpage.dev/mcp を貼り付け → 保存します。チャットでコネクターをオンにしてください。
ChatGPT
https://onpage.dev/mcp を使用してカスタムコネクターを追加します(開発者モードをオンにして、設定 → コネクターを開きます)。カスタムコネクターを利用できるプランは OpenAI が決定します。
Cursor
プロジェクト内の ~/.cursor/mcp.json または .cursor/mcp.json:
{
"mcpServers": {
"onpage": { "url": "https://onpage.dev/mcp" }
}
}
VS Code
.vscode/mcp.json:
{
"servers": {
"onpage": { "type": "http", "url": "https://onpage.dev/mcp" }
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json(Windsurf では serverUrl を使用します)。その後、「Manage MCPs」で「Refresh」を実行します。
{
"mcpServers": {
"onpage": { "serverUrl": "https://onpage.dev/mcp" }
}
}
Gemini CLI
~/.gemini/settings.json を設定し、/mcp で確認します。
{
"mcpServers": {
"onpage": { "httpUrl": "https://onpage.dev/mcp" }
}
}
OpenAI Codex
codex mcp add onpage --url https://onpage.dev/mcp
または、~/.codex/config.toml に [mcp_servers.onpage] と url = "https://onpage.dev/mcp" を設定します。
Cline
cline_mcp_settings.json:
{
"mcpServers": {
"onpage": { "type": "streamableHttp", "url": "https://onpage.dev/mcp" }
}
}
Zed
settings.json(Node.js を使った簡易ブリッジ):
{
"context_servers": {
"onpage": { "command": "npx", "args": ["-y", "mcp-remote", "https://onpage.dev/mcp"] }
}
}
n8n
AI エージェントに MCP Client Tool ノードを追加し、サーバー URL に https://onpage.dev/mcp、トランスポートに HTTP Streamable、認証に「なし」を設定します。これで、ワークフローからスケジュールに沿ってスキャン、監査、レポート作成を実行できます。
その他の MCP クライアント
https://onpage.dev/mcp で Streamable HTTP トランスポートを使用します。認証は不要です。MCP 2026-07-28(ステートレス、server/discover)と、セッションを使用するそれ以前のリビジョン(2024-11-05 まで)をサポートしています。セッションを使用しない場合、サイトメモリに記録するには、ツール呼び出し時に memory_key を渡してください。
できること
116種類のジョブをカバーする37個のツールがあります。関連するジョブは1つのツールでまとめられ、mode で選択します。たとえば site_audit では、start、continue、import、compare、report を指定できます。最初の操作では mode を省略してください。2.0より前の古いツール名も引き続き使用できます。すべての結果に、onpage.dev のビジュアルレポートへのリンクが含まれます。問題には固定コードが割り当てられており、一覧は onpage://rules リソースにあります。
監査と修正
| ツール | 機能 | 結果の例 |
|---|---|---|
scan_page | 0〜100のスコア、優先して修正すべき問題とその理由・対処方法、AI 対応状況、主な事実 | 46/100, 5 fixes |
scan_page · deep | 測定項目の全詳細をセクション別に表示します。速度に関するヒント、リンクとアンカーテキスト、アクセシビリティ、画像 SEO、リッチリザルト、セキュリティヘッダー、コンテンツ、技術的な情報が含まれます | 8 sections |
get_fix_pack | ページ自体のコンテンツをもとに作成した、各問題に対応する貼り付け可能な HTML を提供します。platform: "git" の場合は、Next.js、Nuxt、SvelteKit、Astro、Angular、React、Vue 向けのコードとプルリクエストの手順を提供します。platform: "wordpress" の場合は、Yoast SEO または Rank Math の各値に対応するフィールドと、WordPress 接続を通じて反映する手順を提供します。platform: "cloudflare" の場合は、あらゆる CMS で修正をエッジに適用する Cloudflare Worker を提供します | <title>、<meta>、canonical、ソーシャルタグ |
edge_worker · rules | 完了したサイト監査をもとに、セクションごと(例:/products/*)に Cloudflare Worker ルールを1つ作成します。プレビュー付きで、一致するすべてのページのタイトルや説明の欠落・サイズ不適切、canonical やソーシャルタグの欠落を修正します。欠落している値や範囲外の値のみを補います | /products/*: 212 pages |
edge_worker · prerender | クライアントサイドの React、Vue、Angular アプリ向けです。独自の Cloudflare アカウントで Browser Rendering からレンダリング済みページを取得し、AI クローラーに1日間キャッシュして配信する Worker を提供します。訪問者と Google には通常のページを配信します。不要な場合はその旨を表示します | 12 → 900 words for GPTBot |
schema · generate | Article、Product、FAQ、Organization、breadcrumb、VideoObject、Event、Recipe、JobPosting、SoftwareApplication、ProfilePage、Course の JSON-LD を生成し、Google のリッチリザルトのルールに照らして検証します。読み取れない値は捏造せず、TODO としてマークします | Product: eligible |
accessibility · wcag | 欧州アクセシビリティ法に対応した WCAG 2.1 AA レポートです。自動チェック項目と達成基準の対応、実ブラウザーでのチェックによるコントラストとリフローの結果、手動でテストすべき項目を表示します | 9 of 11 criteria pass |
schema · product_page | EC 商品ページ向けです。商品とオファーのマークアップ、価格、在庫、識別子、販売者リスティング向けの配送・返品ポリシー、バリエーション、在庫切れ時の処理、フィルター URL を確認します | 2 errors, 3 warnings |
tracking · consent | Cookie バナーと Google Consent Mode v2 を確認します。実行中の同意管理プラットフォーム、Google タグより前にデフォルト設定が行われているか、ad_user_data と ad_personalization を表示します | Consent Mode v2: missing signals |
tracking · ga4 | 実ブラウザーで GA4 をデバッグします。インストール済みの測定 ID と GTM コンテナ、および初回訪問時、Cookie への同意後、再訪問時に送信されるヒットを確認します。page_view の二重発火、同意前のヒット、更新されない Consent Mode、有効なデバッグモード、Universal Analytics の残存設定を検出します | G-XXXX sends 2 page_views |
web_vitals · now | 実際の Chrome ユーザーの Core Web Vitals(CrUX)を、モバイルとデスクトップで確認します。LCP、INP、CLS、FCP、TTFB を「良好」「要改善」「不良」で評価し、修正すべき点を表示します | Phone fails: LCP 3.1 s |
scan_page · rescan | 修正後に再スキャンし、スコアの変化、修正された項目、新たな問題を表示します | 46 → 94 |
share · link | クライアントに送れる、修正前後を比較する公開ページを作成します。スコアの変化、修正済みの問題、未解決の問題を表示します。インデックスされず、90日後に期限切れになります | 46 → 94, shareable |
share · export | スキャンまたはサイト監査の結果をアクションプランとして出力します。Google Sheets の行と =IMPORTDATA 用の CSV リンク、Slack メッセージ(または Webhook 投稿)、Linear、Jira、Asana、GitHub 向けの問題ごとのタスク、Markdown チェックリストを提供します | Sheet, Slack, 12 tasks |
measure · impact | Search Console、GA4、Ahrefs、Semrush から、変更したページの修正前後の数値を取得します。未変更ページを対照群として比較し、監視履歴からページごとの変化を表示します | +66% clicks vs control |
find_opportunities · traffic_drop | トラフィックが減少した理由を表示します。Search Console の2つの期間をページごとに比較し、順位低下、検索需要の低下、同じ掲載順位でのクリック減少(AI Overview またはスニペット)、検索結果から消えたページに分類します。失われたクリック数順に並べ、原因ごとに次に使うツールを提示します | 3 pages lost rankings |
find_opportunities · ctr_gaps | 掲載順位に対するクリック率が通常より大幅に低い、検索結果の1ページ目の結果を表示します。より良いタイトルと説明文で獲得できるクリック数も示します | +700 clicks from 4 titles |
find_opportunities · striking_distance | 実際のインプレッションがある掲載順位8〜20位のクエリをページごとにまとめ、上位5位以内に入った場合に獲得できるクリック数と、同じクエリで競合するページを表示します | 23 queries, +1,900 clicks |
web_vitals · trend | Chrome UX Report の履歴から、実際の Chrome ユーザーの Core Web Vitals を約9か月分、モバイルとデスクトップ別に週単位で表示します。修正日の前後の値と、各指標が基準を満たした時期を確認できます | LCP 4.2 s → 2.2 s |
measure · ai_citations | 修正前後の AI による引用を、検索エンジン別(ChatGPT、Perplexity、AI Overviews、AI Mode、Gemini、Copilot)に表示します。変更していないページとの比較も行います | +190% vs control |
fix_log · log | 修正が反映された後、その内容(ページ、フィールド、変更前後の値、反映方法)を記録します。OnPage.dev は約6時間ごとに修正が有効な状態か確認し、デプロイによって元に戻された場合は、復元コードを Webhook に送信します | 4 fixes logged, all live |
fix_log · report | 修正ログを表示します。現在も有効、元に戻された、変更済みの状態、復元コード、measure · impact に基づく修正ごとの影響、効果が低下した修正のロールバック計画、OnPage.dev のブランド表示なしでクライアントに共有できる月次レポートが含まれます。また、修正を反映した日ごとの GA4 アノテーションも提供します | 1 undone, restore ready |
layout · render | 実ブラウザーで、モバイル、タブレット、デスクトップのファーストビューを確認します。H1 と CTA の位置、Cookie の表示制限やポップアップ、タップ対象、小さな文字、コントラストの低い文字、横スクロールする要素、ボタンの混在、不均等な間隔、レイアウトシフト、JavaScript のみで表示されるコンテンツ、スニペットとの一致を確認します。スクリーンショットも表示します | CTA below the fold on phone |
サイト全体と競合
| ツール | 内容 | 結果の例 |
|---|---|---|
site_audit · start | サイトマップから最大25ページをジョブとして監査します。audit_id と、最初の進捗状況を返します | 3 of 25 scanned |
site_audit · continue | 完了まで続行し、サイト全体の結果を読み取ります。コード別の問題と該当ページ、リンク切れページ、孤立ページ、重複ページを確認できます | 25 pages, average 92 |
internal_links · equity | 完了済みの監査から、内部 PageRank とクリック深度を確認します。ホームページから到達できないページ、階層が深すぎるページ、行き止まり、リンクをほとんど渡さない強力なページ、リダイレクト経由またはリンク切れ・noindex ページへのリンク、リンクが不足している重要なページ(Search Console または GA4 のデータに基づく)を確認できます | 3 important pages need links |
dashboard · feed | ホームページと最大10件の主要ページを毎日チェックし、履歴を保持します。スコア、AI 対応状況、コード別のエラーと警告、AI クローラーのアクセス状況、週ごとの Core Web Vitals を確認できます | Feed live, 8 pages daily |
dashboard · data | フィードから1つのデータセット(概要、ページ、問題、バイタル、修正、AI アクセス)を、日付列と完全な URL を含むテーブルとして取得します。GA4、Search Console、またはそれらの BigQuery エクスポートとの結合にすぐ利用できます | 30 days, 8 pages |
dashboard · build | Claude Dashboards またはアーティファクト用の、デザイン済みダッシュボードです。リアルタイムの GA4(分あたりのユーザー数、ページ、イベント、国)、トラフィック、SEO の健全性、修正、速度、AI での可視性を、ライトモードとダークモードで表示します | Dashboard with 9 panels |
internal_links · suggest | アンカーテキストとともに、監査済みのどのページから特定のページにリンクすべきかを提示します。トピックを指定すれば、新しいページにも対応します | 3 links to add |
content · topics | Search Console の行データからトピッククラスターを作成します。各トピックを担当するページ、ページ同士が競合している箇所、専用ページのないトピック、検索需要のないページ、追加すべき内部リンクを確認できます | 14 topics, 3 compete, 2 gaps |
prioritize_fixes | 接続済みの Search Console、GA4、Ahrefs、または Semrush の数値を使い、トラフィックへの影響に基づいて修正の優先順位を付けます。障害要因、CTR の低さ、上位表示目前のキーワード、キーワードの不足、弱いページにある強力なリンクなどを対象とします。データがない場合は深刻度に基づいて優先順位を付けます | #6 → top 3, ~336 clicks/mo |
content · intent | ページは検索意図に合っていますか? 渡された上位検索結果(Ahrefs または Semrush のデータ)をスキャンし、Google が上位表示するページの種類(ガイド、リスト記事、製品、カテゴリ、サービス、フォーラム、動画など)と、上位表示される形式を特定します。Search Console の行データがあれば、同じクエリで競合するページも確認できます | Mismatch: results are listicles, yours is a product page |
text_quality · readability | ページの言語に対応する数式(Flesch、Flesch-Douma、Amstad、Kandel-Moles、Fernández-Huerta、Flesch-Vacca)を使って、上位表示ページまたはページの種類ごとの基準と比較した読みやすさ、平均文長、長い文、書き換えが最も難しい文や段落を確認できます | 63 vs 52 for ranking pages |
snippet · social | Open Graph と Twitter のタグ、および実際の共有画像(読み込み状況、ピクセル寸法、種類、ファイルサイズ)を、Facebook、LinkedIn、X が必要とする内容と照合します。無料の REST API も利用できます:GET /api/v1/og?url= | og:image returns 404 |
compare · pages | あるページを最大3件の競合ページと並べて比較します。コンテンツの不足、競合が使用している構造化データ、追いつくための修正を確認できます。クッキーの同意画面も検出します | You lead on 12 of 14 |
実行、監視、測定
| ツール | 機能 | 結果の例 |
|---|---|---|
backlinks · outreach | リンク獲得候補(リンク切れ、消失、リンクされていない言及やリソース)をサイトごとに1通のメールにまとめ、優先度の高い順に、ユーザーのメール用の下書きとして作成します。承認後に送信します | 14 drafts, 9 sites |
plan · sprint | 指定された作業時間内で、修正項目を役割ごとの週次計画に落とし込みます。時間あたりの価値が高いものを優先し、タスクごとにチケットを作成します | 23 tasks over 4 weeks |
request_recrawl | 公開したページがインデックス登録可能かを確認し、サイトマップの最終更新日時(lastmod)を更新して、IndexNow に送信し、URL Inspection の対象ページを一覧表示します | 8 of 9 ready |
watch · guard | 6時間ごとに、robots.txt によるクローラーのブロック、サイトマップの消失または縮小、https を使わない http、エラーステータス、noindex、正規 URL の変更、重要なページのタイトルの空欄を確認します | 1 new problem: noindex |
watch · competitors | 最大3社の競合他社のサイトマップを週次で比較し、トピックに基づいて、新規、更新、削除されたページにフラグを付けます | 6 new, 2 on your topics |
measure · ai_referrals | GA4 で AI アシスタントからのセッションを、アシスタント別、ランディングページ別に表示します。全訪問数に占める割合とコンバージョン率も表示します | 1,240 visits, +38% |
measure · brand_split | Search Console または Ahrefs のキーワード行を、ブランドと非ブランドに分類し、推移と非ブランドの上位クエリを表示します | Non-brand +22% |
measure · share_of_voice | ランク行から、順位で重み付けしたドメインごとのクリックシェアを算出し、競合他社が優位に立つキーワードも表示します | 31% → 36% |
AI 検索
| ツール | 機能 | 結果の例 |
|---|---|---|
ai_visibility · check | ページを読み取れる可能性のある AI クローラー(GPTBot、ClaudeBot、PerplexityBot、Google-Extended など)、llms.txt、AI の回答に関する 15 項目のチェック、モデルが読み取るページの内容 | 8 クローラー中 7 クローラーを許可 |
request_recrawl · indexnow | 修正が公開された直後に、ページが変更されたことを Bing、Yandex などの IndexNow エンジンに通知します。初回はキー ファイルを設定します | 12 URL を受け付けました |
technical · logs | アクセスログから、Googlebot、Bingbot、14 種類の AI クローラーが実際にリクエストしている内容を確認します。Googlebot、Bingbot、OpenAI、Perplexity、Applebot のアクセスは公開済みの IP 範囲と照合されるため、偽装ボットは除外されます。ボットごとのアクセス数、発生したエラーとリダイレクト、パラメーターによるクロールバジェットの消費、Googlebot が訪問しないサイトマップのページを確認できます | GPTBot:212 回アクセス、エラー率 9% |
ai_visibility · bots | ブラウザーとして、また Googlebot、Bingbot、GPTBot、OAI-SearchBot、ChatGPT-User、ClaudeBot、PerplexityBot として取得したページを確認します。ファイアウォールによるブロック、チャレンジページ、従量課金型クロール(HTTP 402、x402)、クローキング、robots.txt には表示されないボット専用リダイレクトも検出します | GPTBot をブロック:403 |
technical · duplicates | サイト監査で見つかった類似ページを、メニュー、ヘッダー、フッター以外のテキストに基づいてグループ化します。残すページと、ほかのページへの対応(canonical、統合、書き換え、商品ページ向けの選択肢としてのバリエーション)も提示します | 2 グループ、8 ページ |
technical · parameters | 監査対象のリンクに含まれるすべてのクエリパラメーターを、トラッキング、セッション、検索、並べ替え、ページネーション、フィルターに分類します。クロールトラップ、ページネーションの canonical、修正用の robots.txt ルールも提示します | 内部リンク 14 件に utm |
explain_google · index_status | Search Console の URL 検査結果(またはページレポートの行)を、原因ごとに重大度の高い順で分類します。noindex、robots.txt、Google が無視する canonical、クロール済みまたは検出済みだが未登録、ソフト 404、サーバーエラーとリダイレクトエラーについて、修正方法と次に使うツールを提示します | 12 件がクロール済み、未登録 |
technical · hreflang | 多言語サイト向けに、言語コードと地域コードの有効性、x-default、各言語版のステータス、noindex、canonical、戻りタグ、html lang を確認します。修正済みのタグ一式を返します | 4 バージョン、戻りタグが 1 件不足 |
entity · trust | サイト全体の E-E-A-T を確認します。About、Contact、Privacy、Terms ページ(英語、オランダ語、ドイツ語、フランス語、スペイン語で検出)、メールアドレス、電話番号、住所、会社番号、VAT 番号、Organization マークアップ、ソーシャルプロフィール、著者、日付が対象です | 8 項目中 6 項目に合格 |
local · check | 地域ビジネス向けに、LocalBusiness マークアップ(具体的なタイプ、住所、電話番号、営業時間、geo)、名称・住所・電話番号とページ内容の一致、Google ビジネス プロフィールのリンク、地図、タイトル内の都市名、各拠点に固有のマークアップを持つページを確認します。TODO 付きの修正済み JSON-LD を作成します | NAP の不一致:電話番号 |
answer_readiness · questions | AI Mode と AI Overviews に向けた情報の網羅性を確認します。アシスタントが、AI 検索エンジンがトピックを検索する際に展開するサブクエスチョンを作成し、ツールが各質問について、ページ(および競合ページ最大 2 件)で回答済み、記載箇所が分かりにくい、一部回答、未回答のいずれかを評価し、追加すべきセクションを列挙します | 60/100、2 件未回答 |
answer_readiness · format | 強調スニペットと「他の人はこちらも質問」向けに、検索上位ページで評価される回答形式(段落と文字数、リストと項目数、または表)と自分のセクションを比較し、書き換え案を提示します | 効果的な形式:7 項目のリスト、自分のページ:段落 |
answer_readiness · passages | AI が引用するのに十分な回答をページが提示しているかを確認します。最適な文章と、その長さおよび適合度を返します | 最適な文章、64 語 |
robots_txt · ai_policy | ポリシー(すべて許可、AI 検索のみ許可、すべてブロック)に基づいて、13 種類の AI クローラー向け robots.txt ルールを作成し、既存ファイルに統合します | 13 ボット、統合済み |
llms_txt · generate | サイトマップとホームページから、すぐに使える llms.txt を作成します | llms.txt、42 ページ |
llms_txt · validate | llmstxt.org の形式に照らして llms.txt を検証します。実際のテキストファイルであること(HTML のソフト 404 ではないこと)、タイトルが 1 つあること、概要、[name](url): notes 形式のリンクを含むセクション、サイズ、リンク切れ、llms-full.txt の有無を確認します。下書きも検証できます | 有効、6 セクション、8 件中 8 件のリンクを読み込み可能 |
entity · graph | AI のナレッジグラフが読み取る方法に沿って、構造化データがページの運営者をどう記述しているかを確認します。Organization、著者、発行者がリンクされたエンティティ(@id)として記述されているか、sameAs のプロフィールが読み込めるか、ホームページと一致しているかを確認し、不足している JSON-LD を TODO 付きで提示します | 5 エンティティ、1 件の修正:sameAs なし |
accessibility · screen_reader | スクリーンリーダーと閲覧する AI エージェントがページをどう読み取るかを確認します。ランドマーク、見出しのアウトライン、すべてのリンク、ボタン、画像、フィールドの名前、および不足している項目を提示します | 名前のないリンクが 3 件 |
ai_visibility · citations | Ahrefs Brand Radar などのソースによるページごとの AI 引用数を、OnPage.dev のチェック結果と並べて表示します。引用されたページが合格したチェックと、ほかのページで不合格になったチェックを比較し、平均を並べて表示するとともに、引用されなかった各ページの変更点を提示します | 回答を冒頭に明記:引用されたページは 100%、それ以外は 0% |
watch · page / watch · page_status / watch · page_stop | 問題の再発を毎日確認します。ページのダウンまたはリダイレクト、noindex の追加、AI クローラーのブロック、canonical またはタイトルの変更、スコア低下、新たな問題と修正済みの問題を検出します。非公開 RSS フィードに加えて、オプションで Slack または Discord の webhook を利用できます。competitor_of を指定すると競合ページを追跡し、新しいセクション、構造化データの種類、コンテンツ量の大幅な増加ごとに、自分のページで取るべき対抗策を提示します | noindex を追加、アラートを送信 |
公開と移行
| ツール | 機能 | 結果の例 |
|---|---|---|
check_links · urls | 最大20件のURLについて、各URLの遷移先と照合し、ステータスコードとリダイレクトの全経路を確認します。チェーンと一時リダイレクトを検出します | 19 of 20 OK |
sitemap · check | XMLサイトマップを確認します。robots.txtからの検出、インデックスの追跡、形式と上限、外部ホスト、偽の日付や未来のlastmod日付を調べます。さらに、掲載URLのサンプルについて、リダイレクト、エラー、noindex、別の場所にあるcanonicalを確認し、修正済みのエントリーを提示します | 4 of 12 URLs do not belong |
technical · extract | 最大20ページから、CSSセレクター(属性指定を含む)、正規表現、またはProduct.offers.priceのようなJSON-LDパスを使って値を1つ取得し、テンプレートの修正が広範囲で反映されたかを確認します | 18 of 20 have a price |
plan · redirects | 古いURLから新しいURLへの対応を、マッチごとの信頼度スコア付きで作成します。_redirects、nginx、Apache、Next.js、CSVのルールとして出力します | 212 matched, 9 to review |
site_audit · import | Screaming Frog、Ahrefs、Semrushのクロール(最大500ページと内部リンク)を、あらゆる監査ツールで使える監査データに変換します | 480 pages, 6,912 links |
site_audit · compare | サイト監査を前回分と比較し、悪化、新規・修正された問題をコードごとに表示します。追加・消失したページも確認できます | 3 regressions, 41 fixed |
watch · site_audit | サイト全体を毎日、毎週、または毎月監査し、悪化があればSlack、Discord、またはWebhookに通知します | Weekly, 2 regressions sent |
track_rankings | キーワードを自動で選び、順位の変動を報告する順位トラッカーです | 3 into top 10, 1 lost |
backlinks · disavow | 明らかなスパムのみを対象にした否認ファイルを作成し、それ以外は確認対象として残します | 14 domains, 3 to review |
explain_google · manual_action | 手動による対策の解消計画と再審査リクエストの下書きを作成します | Unnatural links: 5 steps |
check_links · outbound | 他のサイトへのリンク切れや移動先を確認し、アーカイブ済みのコピーも表示します | 3 dead, 1 moved |
check_keyword · cannibalization | 競合する自サイトのページを、あらゆるキーワード指標で並べて比較し、修正方法を提示します | #1 wins on 6 signals |
plan · split_test | テンプレートページをトラフィックで分割し、バリエーション用のWorkerを作成して、コントロール群と比較測定します | 12 vs 12 pages |
site_audit · report | 監査結果を、ブランドに合わせたレポートページとPDFで出力します | Link and PDF |
text_quality · spelling | メインテキストのスペルミスと文法エラーを検出し、修正案を提示します | 4 errors, 3 spelling |
sitemap · generate | 監査結果からクリーンなsitemap.xmlを生成し、除外した項目をすべて説明します | 212 pages, 9 left out |
find_opportunities · content_decay | ピーク後もクリック数が減り続けているページを、更新対象の一覧として表示します | 9 pages, −1,840 clicks |
get_fix_pack · alt_texts | altテキストがない項目を一覧表示して確認し、HTML、Worker、WordPress、またはコードとして反映します | 12 alts, 2 decorative |
get_fix_pack · web_vitals | 速度改善をコードとして提示します。問題のある指標を最初に示し、Cloudflare Workerとしても出力します | LCP: 4 fixes |
backlinks · opportunities | 競合にはリンクしているものの、あなたにはリンクしていないサイトを分類して順位付けします。リンクのないブランド言及も表示します | 38 sites, 6 unlinked |
ai_visibility · gaps | AIの回答をエンジンごとのシェアに変換し、ギャップのある質問、AI検索、引用されたサイトを表示します | 14 gaps, 9 sources |
backlinks · broken | AhrefsまたはSemrushのリンク切れ・消失バックリンクと、GA4の404アクセスを、リンク価値と訪問数で順位付けしてライブで確認します。301ルール、リンク修正案、アウトリーチ先一覧として出力します | 14 pages, 38 sites back |
robots_txt · test | Googlebot、GPTBot、ClaudeBot、または任意のクローラーがこのURLを取得できるかを確認します。Googleの照合ルールを使用し、判定を決めた正確なルールを返します。変更案のrobots.txtもテストできます | Blocked by "Disallow: /search?" |
ライティングとコード
| ツール | 機能 | 結果の例 |
|---|---|---|
scan_page · html | まだ公開されていない HTML をスキャンします。ローカルビルド、テンプレート、下書きが対象です。scan_page と同じスコアと修正内容を確認できます | 92/100 before deploy |
compare · html | 2 つのバージョンのページを SEO の観点から比較します。スコア、修正・追加された問題(コード別)、タイトル、説明、H1、canonical、robots、構造化データの変更を確認できます | 72 → 18, noindex added |
schema · validate | 作成した JSON-LD をチェックします。構文、@context と @type、ISO 日付、絶対 URL、プレースホルダー、Google が必須とするフィールドを確認できます | 2 errors, 3 warnings |
check_keyword · focus | 1 つの検索語句について 8 項目をチェックします。タイトル、説明、H1、URL、冒頭のテキスト、サブ見出し、代替テキスト、キーワードの使用状況を確認できます | 6 of 8 |
snippet · search | Google の表示幅制限に対するタイトルと説明のピクセル幅を、デスクトップとモバイルで推定します | 612 px, cut off |
content · brief | 検索上位ページをもとに、サブトピック、質問、数値、目標の長さ、スキーマ、タイトルのパターン、内部リンクを含むライティングブリーフを作成します | 8 topics, 5 questions |
content · voice | 最良の記事から 2~5 本を分析し、サイトの書き方を学習します。文、段落、セクションの長さ、見出し、リスト、文体、文章のサンプルを確認できます | 14 words per sentence, "you" |
content · calendar | このサイトでトラフィック増加につながった形式を参考に、更新記事と新規ページの公開日付きカレンダーを作成します | 8 items over 4 weeks |
content · draft | 承認前に、サイトの文体に合わせてエージェントが作成した下書きを、出典のない数値や SEO スキャンと照らして確認します | Voice 91/100, 1 figure |
layout · probe / layout · analyze | お使いのブラウザツールでファーストビューのチェックを実行します。1 日あたりの上限はなく、ステージング環境と localhost でも動作します | First screen, 3 devices |
すぐに使えるワークフロー(MCP プロンプト)
プロンプトを表示できるクライアントでワンクリック:
- SEO と AI の総合監査:スキャン、AI チェックと修正パックを実行し、優先順位付きの計画を作成します。
- AI がサイトを見つけられない理由:どのアシスタントがサイトを読み、引用できるか、何を変更すべきかを確認します。
- 公開前チェックリスト:ページを公開する前に必要な項目すべてをチェックし、合格または不合格を表示します。
- AI からの見つけやすさを改善:robots.txt、llms.txt、回答文をまとめて整備します。
- デプロイ前の SEO ゲート:ビルド済み HTML をスキャンし、最低スコアを下回る場合はリリースをブロックします。
- 前回の続きから再開:サイトのメモリを開き、次のステップに進みます。
- 週次 SEO ルーティン:アラート、順位、未対応の修正項目、この週に行うべき 3 つのことを確認します。
- 修正して効果を証明:スキャン、修正、承認後に公開、記録、再クロールを行い、効果測定を計画します。
- サイト移行:ベースライン監査、リダイレクトマップ、新サイトのチェック、ガードを行います。
- クライアント向け月次レポート:公開した修正、変更していないページとの比較結果、順位、翌月の予定をまとめます。
- トラフィック減少の調査:減少時期、そのときに実施された Google のアップデート、順位を落としたページとクエリ、最初に行うべき修正を確認します。
- AI 検索レビュー:AI が回答するクエリ、引用されるべきページ、追加すべき文章を確認します。
- エグゼクティブサマリー:経営陣向けの 1 ページ資料を作成します。傾向、原因、修正内容、翌月の予定をまとめます。
- コンテンツの自動運用:文体を学習し、カレンダーを作成して下書きとチェックを行い、承認後に公開して、結果から学習します。
リファレンスリソース
onpage://rules:各チェックの安定したコード、重要な理由、修正方法に加え、主な基準値(タイトルと説明のピクセル長、単語数、代替テキスト、サーバー応答、AI の回答の長さ)を確認できます。
チャット内のスコアカード
MCP Apps(Claude)またはApps SDK(ChatGPT)に対応しているクライアントでは、スキャン結果がチャット内にビジュアルカードとして表示されます。
- スコア:0〜100のスコアと、1行の判定。
- AI対応度:AIアシスタントがページをどの程度読み取り、信頼し、引用できるかを示します。
- 最初に修正:最も重要な問題を、エラー、注意、ヒントに分類して表示します。
- 完全なレポートを開く:onpage.devでビジュアルレポート全体を表示します。
その他のクライアントでも、同じ結果がテキストと構造化データで表示されるため、情報が失われることはありません。
## 異なる点
| OnPage.dev | データベンダーの MCP(Ahrefs、Semrush など) | セルフホスト型の監査サーバー | |
|---|---|---|---|
| 価格 | 無料 | 有料プランまたは API クレジット | 無料 |
| セットアップ | URL を 1 つ貼り付けるだけ | アカウントとキーが必要 | 自分でインストールして実行します。追加の API キーが必要なこともよくあります |
| 対象 | 結果を活用すること:修正、デプロイ前の確認、検証 | 調査データ:キーワード、バックリンク、ランキング | 監査とレポート |
| 未公開の HTML をスキャン | はい。scan_page · html と compare · html | いいえ | まれ |
| エージェント向けの出力 | 安定した問題コード、出力スキーマ、ルールのリソース | データ行 | さまざま |
| 移行チェック | リダイレクトチェーン、robots.txt テスター | 一部対応 | 一部対応 |
| サイト全体の監査 | 25 ページまで無料、または独自のクロールで最大 500 ページ。スケジュールに沿った週次実行とアラートに対応 | 対応。有料 | 対応。自分で実行 |
| 競合サイトとのギャップ | ページ同士を比較し、コンテンツのギャップを確認 | キーワードとバックリンクのギャップ | まれ |
| AI 検索ツール | クローラーのアクセス、AI の回答チェック、robots.txt ポリシー、llms.txt | 一部で AI 可視性のトラッキングに対応 | まれ |
| すぐ使えるコード | 修正パック、JSON-LD、robots.txt、llms.txt | なし | さまざま |
| トラフィックデータの利用 | はい。チャット内ですでに利用可能な GSC、GA4、Ahrefs、Semrush のデータを使用 | 独自データ | まれ |
| AI の引用を解説 | 引用されたページとスキップされたページを並べてチェック | 引用数のみ | なし |
| モニタリングとアラート | 毎日の監視、RSS と webhook。無料 | 対応。有料 | まれ |
| 実ブラウザーでのファーストスクリーン | スマートフォン、タブレット、デスクトップに対応。JavaScript の有効・無効を選択可能 | なし | まれ |
| クライアントサイドアプリ(React、Angular、Vue) | レンダリングされたページを完全に監査し、AI クローラーが見逃す点も確認 | なし | まれ |
| アクセシビリティレポート | WCAG 2.1 AA に準拠。欧州アクセシビリティ法に向け、各基準に対応付け | なし | まれ |
| 修正の適用 | WordPress、Shopify、Webflow、Wix、Storyblok、ヘッドレス CMS、またはフレームワークのコードを含む Git プルリクエスト | なし | まれ |
| サーバーログ分析 | Googlebot と 14 種類の AI クローラー、サイトマップのギャップ | なし | 一部対応 |
| 実ユーザーの Web Vitals | Chrome UX Report。スマートフォンとデスクトップに対応 | 一部対応 | 一部対応 |
| スクリーンリーダー表示 | アクセシビリティツリーを読み上げ、名前のない操作要素にフラグを付与 | なし | まれ |
| 結果の測定 | 対照群を設けて、実施前後を比較 | ランキングとトラフィックのグラフ | まれ |
| 調査結果からタスクへの変換 | Google Sheets、Slack、Notion、タスクボードに対応。Sheets にはコネクター不要 | CSV または PDF にエクスポート | まれ |
| 移行用リダイレクトマップ | 信頼度付きで旧 URL から新 URL への対応を作成し、ルールをすぐ利用可能 | なし | まれ |
| キーワードのカニバリゼーション | すべてのオンページ指標で競合ページを比較し、対策プランを提示 | 競合するページを確認 | まれ |
| 破損・失効したバックリンク | 優先順位付きの 301 ルール、リンク修正、アウトリーチに変換 | 一覧表示 | まれ |
| 否認 | 明らかなスパムのみを対象にレビューリストを作成。アップロードしない方がよい場合は警告 | 一部では有害度スコアからエクスポート | なし |
| 手動による対策 | 種類ごとのクリーンアップ計画と再審査リクエストの下書き | なし | なし |
| ランクトラッキング | 作業内容、収益ページ、上位表示が近いページからキーワードを自動選定。Search Console と独自のトラッカーを利用 | 対応。有料。キーワードは自分で選択 | まれ |
| 速度の改善 | 不合格の指標に応じた優先順位付きのコードと Cloudflare Worker | ラボレポート | レポート |
| SEO スプリットテスト | トラフィックを均等に分けたグループ、Worker、効果測定 | なし | なし |
| クライアント向けレポート | 監査結果から作成するブランド付きレポートページと PDF | 対応。有料 | さまざま |
価格を含む Ahrefs、Semrush、SE Ranking、DataForSEO の MCP サーバーとの詳細な比較:onpage.dev/compare。
OnPage.dev にないもの:独自の検索ボリューム、ランキング、バックリンクです。同じチャット内でデータベンダーを接続すると、OnPage.dev がその数値を優先順位付きの修正案に変換します。
プロンプトの例
Why does ChatGPT never mention example.com? Check it with OnPage.dev.
Scan our pricing page and give me the five fixes with the code.
Let ChatGPT search read our site but block AI training. Write the robots.txt.
We moved to a new URL structure. Check that these 20 old URLs redirect to the right new pages.
Review this pull request for SEO regressions: compare the old and new HTML of the changed pages.
Audit our whole site and tell me the three fixes that help the most pages at once.
We are writing a page about trail running shoes. Which of our pages should link to it?
How does our pricing page compare with these two competitors, and what are we missing?
Does our blog post answer "how long does shipping to Germany take" well enough for AI to quote?
Write three title options for this page and check which ones fit in Google.
Fix the SEO issues in this project, check the build with OnPage.dev and keep going until it scores 95.
Claude Code プラグイン
修正ループを自動で実行する、サーバーとコマンド、スキルです。
/plugin marketplace add seoonpage/seo-mcp-server
/plugin install onpage@onpage-dev
/seo-check [url or path]:公開中のページをスキャンするか、このプロジェクトでビルドされた HTML を見つけてスキャンし、問題を修正します。/ai-visibility:ChatGPT、Claude、Perplexity、Gemini がサイトを読み取って引用できるか確認し、robots.txtとllms.txtを作成します。- seo-fix-loop スキル:ソース(テンプレート、Next.js の
metadata、Astro のフロントマター)を修正し、デプロイ前にscan_page · htmlで確認して、デプロイ後にscan_page · rescanで再確認します。
常時有効なコンテキストは約300トークンです。
GitHub Action:SEO ゲート
プルリクエストごとにビルドで生成された HTML をスキャンし、スコアと優先度の高い修正項目をコメントし、ページが最低基準を下回ると失敗します。
name: SEO gate
on: pull_request
permissions:
contents: read
pull-requests: write
jobs:
seo:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- run: npm ci && npm run build
- uses: seoonpage/seo-mcp-server@v1
with:
paths: "dist/**/*.html" # built HTML to check
base-url: "https://example.com" # optional, for canonical and relative links
min-score: "80" # fail below this
max-files: "10" # about 20 scans per minute
プルリクエストには次のようなコメントが付き、プッシュのたびに更新されます。
❌ OnPage.dev SEO ゲート:最低スコア 36(最低基準 80)
ページ スコア AI 対応度 優先する修正 dist/about/index.html36 0 meta description がありません。H1 がありません。タイトルは5文字です dist/index.html90 22 コンテンツが不十分です:32語。構造化データがありません。Open Graph が不完全です
GitHub Action:プレビュー確認
マージ前に、デプロイプレビューを本番環境と照合します。Vercel、Netlify、Cloudflare Pages のプレビューと公開中のサイトで同じパスを比較し、ページの表示崩れ、タイトル、canonical、H1 の消失、新たな noindex、構造化データの欠落、プレビュー用ホストを指す canonical や og:url を確認します。プレビュー用ホストが追加する X-Robots-Tag の noindex は無視されます。結果は1つのプルリクエストコメントにまとめられます。
name: SEO preview check
on: deployment_status
permissions:
contents: read
pull-requests: write
jobs:
seo:
if: github.event.deployment_status.state == 'success' && github.event.deployment.environment != 'Production'
runs-on: ubuntu-latest
steps:
- uses: seoonpage/seo-mcp-server/preview@v1
with:
preview-url: ${{ github.event.deployment_status.environment_url }}
production-url: https://example.com
paths: "/ /pricing /blog"
fail-on: blocker # blocker, warning or none
bypass-token: ${{ secrets.VERCEL_AUTOMATION_BYPASS_SECRET }} # only for protected Vercel previews
同じ確認はチャットでも利用できます:mode: "preview" を指定して compare を実行します。
GitHub Action:修正ガード
リリース済みの修正が反映された状態を維持します。1日に1回、修正ログにあるすべての修正がページに反映されたままか、OnPage.dev に確認します。デプロイによって修正が取り消されていた場合は、復元用コードとともに issue を作成し、すべて再び反映されたら issue を閉じます。リポジトリ自身のトークンを使用するため、OnPage.dev が GitHub にアクセスすることはありません。
name: SEO fix guard
on:
schedule:
- cron: "0 7 * * *"
permissions:
issues: write
jobs:
guard:
runs-on: ubuntu-latest
steps:
- uses: seoonpage/seo-mcp-server/guard@v1
with:
fix-log-id: "YOUR_FIX_LOG_ID" # from fix_log
fail-on-regression: "false" # true to fail the run as well
コーディングエージェントが issue に対応し、値を復元してプルリクエストを作成できます。
セキュリティとプライバシー
- サイト上で勝手に変更が行われることはありません。 OnPage.dev は公開ページ、またはお客様が送信した HTML のみを読み取ります。修正は、お客様が承認した後に、お客様自身のツール(git、WordPress、Cloudflare)を通じて適用されます。監視機能と共有結果ページにはスコアと問題名のみが保存され、ページのコンテンツは保存されません。修正ログには、記録した URL と変更前後の値が保存されます。
- 公開ページのみが対象です。 プライベート、内部、ローカルネットワークのアドレス(SSRF 保護対象)と、ウェブ以外のスキームは拒否されます。
- コンテンツは保存されません。
scan_page · htmlに送信された HTML はメモリ上で解析され、破棄されます。変更の追跡では、スコアと問題名のみがハッシュ化されたキーのもとで、最長 30 日間保存されます。スケジュールされた監査では、お客様が停止するまでサイトアドレス、間隔、Webhook、最終結果が保存されます(最長 400 日)。完了したサイト監査では、変更内容をsite_audit · compareで確認できるよう、スナップショットが 90 日間保存されます(ページごとに、アドレス、ステータス、スコア、タイトル、canonical、noindex、問題名)。ページ本文は保存されません。text_quality · spellingは、ページ自身の公開テキストを最大 10,000 文字まで LanguageTool に送信します。backlinks · broken、backlinks · opportunities、ai_visibility · gapsに渡されたバックリンク、404、AI 回答の行は、その回答の生成にのみ使用されます。 - トラフィックデータはお客様のものです。
prioritize_fixesまたはmeasure · impactに渡された数値は、その回答の生成にのみ使用されます。ただし、fix_log_idを指定してmeasure · impactを実行した場合は、修正ログ内のページごとに変更前、変更後、差分が保存されます。OnPage.dev が Search Console、GA4、Ahrefs、Semrush に自ら接続することはありません。 - プロンプトインジェクションに対応しています。 スキャンしたページのテキストはデータとして返され、その旨が明示されます。
- 公正利用の制限があります。 接続ごとに毎分約 20 回のスキャンに加え、全体で共有される上限があります。実ブラウザーによるチェック(
layout · render、accessibility · screen_reader)は、1 日あたりの予算を共有します。お客様自身のブラウザーツールを使用する場合、layout · probeに制限はありません。アカウント、キー、トラッキング Cookie は不要です。
詳細はこちらをご覧ください:onpage.dev/privacy および onpage.dev/terms。
知っておくとよいこと
- メインのスキャンでは、AI クローラーと同様に、サーバーが返す HTML を読み取ります。その HTML がクライアント側の React、Angular、Vue アプリによる空のシェルである場合、
scan_pageは実ブラウザーでページを読み込み、レンダリングされたページを監査して、JavaScript を実行しないクローラーが取得できる単語数を報告します。この処理は 1 日あたりの実ブラウザー予算を共有します。予算を使い切ると、警告とともに生 HTML のスキャンが実行されます。layout · renderとaccessibility · screen_readerでは、JavaScript の有効時と無効時の、スマートフォン、タブレット、デスクトップの表示を追加で確認します。 - リンクのチェック、画像サイズ、AI クローラーのアクセス確認には有効な URL が必要なため、
scan_page · htmlではスキップされます。 snippet · searchのピクセル幅は推定値です。Google がスニペットを書き換えることもあります。
リンク
- ウェブアプリ:onpage.dev
- MCP サーバーとセットアップ:onpage.dev/mcp
- お問い合わせ:[email protected] または問題を報告
ライセンス
MIT
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。




