وثائق 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 المضيف صحيح ويمكن الوصول إليه من شبكتك.
معلمات غير صالحةتأكد أن المعلمات المطلوبة تطابق المخطط. يجب أن تكون المعرّفات أرقامًا.