MCPドキュメント

The Model Context Protocol (MCP) allows AI assistants like Claude, GPT, and Cursor to interact directly with your Better Search Console data. Your assistant can list websites, check indexation status, analyze prompts, manage sitemaps, and much more — all through a standardized tool-calling interface.

エンドポイント

MCPサーバーは以下で利用可能です:

https://api.better-search-console.com/_mcp

認証

3つの認証方法がサポートされています(優先順):

メソッド例
X-API-TOKEN headerX-API-TOKEN: your_token_here
Authorization: Bearer headerAuthorization: Bearer your_token_here
?token= query parameter/_mcp?token=your_token_here

APIトークンは設定画面で確認できます。64文字の16進数文字列です。

OAuthフロー

OAuthに対応するクライアントの場合、MCPエンドポイントはGoogle OAuthフローで取得した標準的なOAuth 2.0 Bearerトークンも受け付けます。ユーザーが認可した後に返されるアクセストークンはユーザーレコードに保存され、Bearerトークンとして使用できます。

セットアップ手順

Claude.ai (Web)

{
  "mcpServers": {
    "better-search-console": {
      "url": "https://api.better-search-console.com/_mcp?token=<YOUR_API_TOKEN>"
    }
  }
}

Claude Desktop

{
  "mcpServers": {
    "better-search-console": {
      "url": "https://api.better-search-console.com/_mcp",
      "headers": {
        "X-API-TOKEN": "<YOUR_API_TOKEN>"
      }
    }
  }
}

Cursor

{
  "mcpServers": {
    "better-search-console": {
      "url": "https://api.better-search-console.com/_mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_API_TOKEN>"
      }
    }
  }
}

レート制限

ティアリクエスト数/分リクエスト数/日
Free1050
Starter100200
Pro200500
MasterUnlimitedUnlimited

Tool Reference (50 tools)

list-websites

List all websites owned by the authenticated user.

パラメータは不要です。

get-website

Get detailed information about a specific website.

パラメータ:

  • website_id
update-website

Update website settings (name, description, category, auto flags).

パラメータ:

  • website_id
  • name
  • description
  • category
  • auto_indexing
  • auto_sitemap_refresh
  • auto_update_status
list-urls

List URLs for a website with optional filters and pagination.

パラメータ:

  • website_id
  • coverage_state
  • url_contains
  • indexing_state
  • page
  • limit
delete-url

Delete a single URL from a website.

パラメータ:

  • url_id
delete-urls-bulk

Delete multiple URLs from a website in bulk.

パラメータ:

  • website_id
  • urls
get-url-stats

Get URL statistics grouped by coverage state.

パラメータ:

  • website_id
get-indexation-queue-status

Get the current indexation queue status for a website.

パラメータ:

  • website_id
list-sitemaps

List all sitemaps for a website.

パラメータ:

  • website_id
add-sitemap

Add a sitemap URL to a website (validates domain and reachability).

パラメータ:

  • website_id
  • sitemap_url
process-sitemap

Fetch and parse a sitemap, importing discovered URLs into the database.

パラメータ:

  • sitemap_id
process-all-sitemaps

Process all sitemaps for a website.

パラメータ:

  • website_id
delete-sitemap

Delete a sitemap and optionally its associated URLs.

パラメータ:

  • sitemap_id
queue-google

Queue a URL for Google indexation.

パラメータ:

  • url
queue-bing

Queue a URL for Bing indexation.

パラメータ:

  • url
queue-bulk

Queue multiple URLs for Google and/or Bing indexation.

パラメータ:

  • website_id
  • urls
  • google
  • bing
refresh-bing-crawl-info

Ask Bing what its crawler knows about a website's URLs (discovery date, last crawl, document size) and store it. This is not the same as bing_status, which reports whether a URL appears in Bing search results. Paced at about one URL per second and skips readings taken in the last week.

パラメータ:

  • website_id
  • limit
check-indexation

Queue a URL for indexation status check.

パラメータ:

  • url
check-indexation-bulk

Queue multiple URLs for indexation status check.

パラメータ:

  • website_id
  • urls
disable-indexation-bulk

Disable indexation for multiple URLs (sets mustBeIndexed to false).

パラメータ:

  • website_id
  • urls
reenable-indexation-bulk

Re-enable indexation for multiple URLs (sets mustBeIndexed to true).

パラメータ:

  • website_id
  • urls
update-coverage-state

Manually update the coverage state of a URL.

パラメータ:

  • url
  • state
plan-indexation

Rank URLs by how much a Google indexation request would help, and report which ones cannot be helped and why. Read-only: it spends no quota and queues nothing. Use it to decide what to submit before calling queue-google or queue-bulk.

パラメータ:

  • website_id
  • budget
get-search-analytics

Get Search Console analytics data with flexible dimensions.

パラメータ:

  • website_id
  • start_date
  • end_date
  • dimensions
  • row_limit
get-top-queries

Get top search queries for a website.

パラメータ:

  • website_id
  • start_date
  • end_date
  • limit
get-top-pages

Get top pages by search performance.

パラメータ:

  • website_id
  • start_date
  • end_date
  • limit
get-device-breakdown

Get search performance breakdown by device type.

パラメータ:

  • website_id
  • start_date
  • end_date
get-country-breakdown

Get search performance breakdown by country.

パラメータ:

  • website_id
  • start_date
  • end_date
  • limit
compare-periods

Compare search analytics between two time periods with deltas.

パラメータ:

  • website_id
  • period1_start
  • period1_end
  • period2_start
  • period2_end
  • dimensions
list-prompt-analyses

List all prompt analyses for a website.

パラメータ:

  • website_id
create-prompt-analysis

Create a new prompt analysis entry.

パラメータ:

  • website_id
  • prompt
  • models
  • targeted_keywords
update-keywords

Update targeted keywords for a prompt analysis.

パラメータ:

  • analysis_id
  • targeted_keywords
get-prompt-analysis-results

Get detailed results and keyword statistics for a prompt analysis.

パラメータ:

  • analysis_id
create-dashboard

Create a custom dashboard (max 3 per website).

パラメータ:

  • website_id
  • name
  • is_default
update-dashboard

Update a custom dashboard name or default status.

パラメータ:

  • dashboard_id
  • name
  • is_default
delete-dashboard

Delete a custom dashboard and its widgets.

パラメータ:

  • dashboard_id
save-dashboard-widgets

Replace all widgets on a dashboard.

パラメータ:

  • dashboard_id
  • widgets
list-saved-filters

List saved URL filters for a website.

パラメータ:

  • website_id
create-saved-filter

Create a saved URL filter.

パラメータ:

  • website_id
  • name
  • search
  • sitemap
  • indexation
delete-saved-filter

Delete a saved filter.

パラメータ:

  • filter_id
generate-report

Generate a PDF report for a website (requires pro/master subscription).

パラメータ:

  • website_id
  • start_date
  • end_date
get-report-branding

Get report branding settings for a website.

パラメータ:

  • website_id
update-report-branding

Update report branding settings (company name, colors, footer).

パラメータ:

  • website_id
  • company_name
  • primary_color
  • accent_color
  • footer_text
analyze-meta-tags

Fetch a URL and extract SEO meta tags (title, description, OG, robots, h1s).

パラメータ:

  • url
analyze-keyword-density

Analyze keyword density in a text.

パラメータ:

  • text
  • keywords
check-url-structure

Check URL structure for SEO issues and return a score.

パラメータ:

  • url
analyze-readability

Analyze text readability using Flesch Reading Ease and Flesch-Kincaid grade.

パラメータ:

  • text
generate-sitemap

Crawl a website and generate a sitemap XML file.

パラメータ:

  • website_url
  • max_urls
generate-robots

Generate a robots.txt from a configuration of user agents and sitemaps.

パラメータ:

  • user_agents
  • sitemaps
get-profile

Get the authenticated user profile and subscription info.

パラメータは不要です。

使用例

ウェブサイトの一覧を取得:

Tool: list-websites
Arguments: {}

URLのインデックス状況を確認:

Tool: check-url-indexation
Arguments: { "website_id": 1, "url": "https://example.com/page" }

インデックス用にURLを送信:

Tool: submit-urls-for-indexing
Arguments: { "website_id": 1, "url_ids": [10, 11, 12] }

トラブルシューティング

問題解決策
401 UnauthorizedAPIトークンが正しく、リクエストに含まれていることを確認してください。
429 Too Many Requestsレート制限を超えました。しばらく待つか、プランをアップグレードしてください。
ツールが見つかりませんツール名が上記のリファレンスと完全に一致していることを確認してください。
接続が拒否されましたホストURLが正しく、ネットワークからアクセス可能であることを確認してください。
無効なパラメータ必須パラメータがスキーマに一致しているか確認してください。IDは数値である必要があります。