Документация 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

Аутентификация

Поддерживаются три метода (в порядке приоритета):

МетодПример
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-символьная шестнадцатеричная строка.

Поток OAuth

Для клиентов с поддержкой OAuth эндпоинт MCP также принимает стандартные токены OAuth 2.0 Bearer, полученные через процесс Google OAuth. Токен доступа, возвращённый после авторизации, сохраняется в записи пользователя и может использоваться как 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 UnauthorizedУбедитесь, что API-токен верен и включён в запрос.
429 Too Many RequestsВы превысили лимит запросов. Подождите или улучшите план.
Инструмент не найденУбедитесь, что название инструмента точно совпадает со справкой выше.
Соединение отклоненоУбедитесь, что URL хоста верен и доступен из вашей сети.
Неверные параметрыУбедитесь, что параметры соответствуют схеме. ID должны быть числами.