Serveur MCP

SEOPro AI

io.github.alpha-ai-labs/seo-agent
Données et analytique Marketing et publicité Public et accessible MCP 2025-11-25

Ce que fait ce MCP

Uses Search Console and related data to audit websites, plan and generate SEO content, measure search and AI traffic, manage indexing, and publish articles.

check_ai_citations
Check AI Citations
Check whether AI assistants (ChatGPT, Claude, Gemini, Perplexity) mention or cite a website when answering questions in its niche. Takes 1-3 minutes; results are cached for 7 days.
Schéma d’entrée
{'type': 'object', 'title': 'check_ai_citationsArguments', 'required': ['url'], 'properties': {'url': {'type': 'string', 'title': 'Url'}}}
generate_article
Generate SEO Article
Start generating an SEO article for a target keyword. Returns immediately; generation takes 5-10 minutes in the background — poll get_article_status for the scheduled_date until it shows a blog. scheduled_date is YYYY-MM-DD and defaults to today (UTC). One article is generated per website per date; if that date already has an article the existing blog_id is returned. Counts toward the plan's monthly limit.
Schéma d’entrée
{'type': 'object', 'title': 'generate_articleArguments', 'required': ['website_id', 'keyword'], 'properties': {'topic': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Topic', 'default': None}, 'keyword': {'type': 'string', 'title': 'Keyword'}, 'website_id': {'type': 'integer', 'title': 'Website Id'}, 'scheduled_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Scheduled Date', 'default': None}}}
generate_keyword_plan
Generate Keyword Content Plan
Generate an AI keyword/content plan for the website. Optionally guide it with topic instructions and comma-separated primary/secondary keywords. Can take a minute or two. Set replace_existing=true only after the user explicitly approves discarding the current plan's pending topics; that path also requires confirm_replace_existing=true.
Destructif
Schéma d’entrée
{'type': 'object', 'title': 'generate_keyword_planArguments', 'required': ['website_id'], 'properties': {'website_id': {'type': 'integer', 'title': 'Website Id'}, 'primary_keywords': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Primary Keywords', 'default': None}, 'replace_existing': {'type': 'boolean', 'title': 'Replace Existing', 'default': False}, 'secondary_keywords': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Secondary Keywords', 'default': None}, 'topic_instructions': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Topic Instructions', 'default': None}, 'confirm_replace_existing': {'type': 'boolean', 'title': 'Confirm Replace Existing', 'default': False}}}
get_ai_search_traffic
Measure AI Search Traffic
Show traffic the website receives from AI assistants and AI search (ChatGPT, Perplexity, Claude, Gemini, etc.): sessions, engaged pages and per-source breakdowns. Dates are YYYY-MM-DD; defaults to the last 30 days.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'get_ai_search_trafficArguments', 'required': ['website_id'], 'properties': {'limit': {'type': 'integer', 'title': 'Limit', 'default': 20}, 'end_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'End Date', 'default': None}, 'start_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Start Date', 'default': None}, 'website_id': {'type': 'integer', 'title': 'Website Id'}}}
get_article
Review Article Draft
Read a single article by blog_id. By default returns metadata and a short excerpt; set include_content=true for the full HTML content.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'get_articleArguments', 'required': ['blog_id'], 'properties': {'blog_id': {'type': 'integer', 'title': 'Blog Id'}, 'include_content': {'type': 'boolean', 'title': 'Include Content', 'default': False}}}
get_article_status
Check Article Generation Status
Check article generation/publication status per date. Dates are YYYY-MM-DD and default to the current month. A date with has_blog=true and a blog_id means the article is ready to read via get_article.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'get_article_statusArguments', 'required': ['website_id'], 'properties': {'end_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'End Date', 'default': None}, 'start_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Start Date', 'default': None}, 'website_id': {'type': 'integer', 'title': 'Website Id'}}}
get_backlink_profile
Get Backlink Profile
Get the website's backlink profile from the SEOPro AI backlink network: totals, unique sources, available credits and the most recent earned backlinks.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'get_backlink_profileArguments', 'required': ['website_id'], 'properties': {'website_id': {'type': 'integer', 'title': 'Website Id'}}}
get_indexing_status
Get Indexing Status
Get auto-indexing stats for the website: how many URLs are indexed, pending or failed.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'get_indexing_statusArguments', 'required': ['website_id'], 'properties': {'website_id': {'type': 'integer', 'title': 'Website Id'}}}
get_keyword_plan
Get Keyword Content Plan
Get the website's scheduled keyword/content plan: which keywords are planned, their scheduled dates and statuses.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'get_keyword_planArguments', 'required': ['website_id'], 'properties': {'website_id': {'type': 'integer', 'title': 'Website Id'}}}
get_search_performance
Get Search Performance
Get the Google Search Console performance summary for a website: clicks, impressions, CTR, average position, top keywords, AI-assistant traffic sources and device/country breakdowns. Dates are YYYY-MM-DD; defaults to the last 30 days.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'get_search_performanceArguments', 'required': ['website_id'], 'properties': {'end_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'End Date', 'default': None}, 'start_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Start Date', 'default': None}, 'website_id': {'type': 'integer', 'title': 'Website Id'}}}
get_search_trends
Get Search Trends
Get monthly search-performance trends (clicks, impressions, CTR, average position) for the last N months. Use to spot growth or decay.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'get_search_trendsArguments', 'required': ['website_id'], 'properties': {'months': {'type': 'integer', 'title': 'Months', 'default': 6}, 'website_id': {'type': 'integer', 'title': 'Website Id'}}}
get_top_search_keywords
Find Top Search Keywords
List the website's top search keywords with clicks, impressions, CTR and average position. Great for finding quick wins (positions 5-15 with high impressions). Dates are YYYY-MM-DD; defaults to the last 30 days.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'get_top_search_keywordsArguments', 'required': ['website_id'], 'properties': {'limit': {'type': 'integer', 'title': 'Limit', 'default': 50}, 'end_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'End Date', 'default': None}, 'start_date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Start Date', 'default': None}, 'website_id': {'type': 'integer', 'title': 'Website Id'}}}
get_website_stats
Get Website Content Stats
Get content stats for a website: total articles, keywords tracked, published posts and whether SEO autopilot is enabled.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'get_website_statsArguments', 'required': ['website_id'], 'properties': {'website_id': {'type': 'integer', 'title': 'Website Id'}}}
list_articles
List Website Articles
List the website's articles (drafts and published), newest first. Optionally filter by status (e.g. 'draft', 'published').
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'list_articlesArguments', 'required': ['website_id'], 'properties': {'limit': {'type': 'integer', 'title': 'Limit', 'default': 25}, 'status': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Status', 'default': None}, 'website_id': {'type': 'integer', 'title': 'Website Id'}}}
list_websites
List Account Websites
List the websites in the user's SEOPro AI account. Returns each website's numeric website_id (needed by most other tools), URL, platform and autopilot status. Call this first.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 'list_websitesArguments', 'properties': {}}
publish_article
Publish Article to CMS
Publish an article to the website's connected platform (WordPress, Shopify, Webflow, etc.). Set publish_as_draft=true to push it as an unpublished draft in the CMS instead of going live. Before calling, show the user the article and destination and obtain explicit approval. Every call requires confirm_publish=true.
Destructif Accès externe
Schéma d’entrée
{'type': 'object', 'title': 'publish_articleArguments', 'required': ['blog_id'], 'properties': {'blog_id': {'type': 'integer', 'title': 'Blog Id'}, 'confirm_publish': {'type': 'boolean', 'title': 'Confirm Publish', 'default': False}, 'publish_as_draft': {'type': 'boolean', 'title': 'Publish As Draft', 'default': False}}}
request_indexing
Request Search Engine Indexing
Submit up to 50 URLs for search-engine indexing (Google/Bing) via SEOPro AI auto-indexing. Requires the auto-indexing feature on the account. Show the exact URL list and obtain explicit user approval first; every call requires confirm_indexing=true.
Destructif Accès externe
Schéma d’entrée
{'type': 'object', 'title': 'request_indexingArguments', 'required': ['website_id', 'urls'], 'properties': {'urls': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Urls'}, 'website_id': {'type': 'integer', 'title': 'Website Id'}, 'confirm_indexing': {'type': 'boolean', 'title': 'Confirm Indexing', 'default': False}}}
run_seo_audit
Run Technical SEO Audit
Run a technical SEO audit on any URL: meta tags, headings, images, links, performance, content quality, security and social metadata, with a scored result. Rate-limited for free accounts.
Schéma d’entrée
{'type': 'object', 'title': 'run_seo_auditArguments', 'required': ['url'], 'properties': {'url': {'type': 'string', 'title': 'Url'}}}
Ajouté
get_indexing_status
17 September 2026 12:40
Ajouté
request_indexing
17 September 2026 12:40
Ajouté
publish_article
17 September 2026 12:40
Ajouté
get_article
17 September 2026 12:40
Ajouté
list_articles
17 September 2026 12:40
Ajouté
get_article_status
17 September 2026 12:40
Ajouté
generate_article
17 September 2026 12:40
Ajouté
generate_keyword_plan
17 September 2026 12:40
Ajouté
get_keyword_plan
17 September 2026 12:40
Ajouté
get_backlink_profile
17 September 2026 12:40
Ajouté
check_ai_citations
17 September 2026 12:40
Ajouté
run_seo_audit
17 September 2026 12:40
Ajouté
get_ai_search_traffic
17 September 2026 12:40
Ajouté
get_search_trends
17 September 2026 12:40
Ajouté
get_top_search_keywords
17 September 2026 12:40
Ajouté
get_search_performance
17 September 2026 12:40
Ajouté
get_website_stats
17 September 2026 12:40
Ajouté
list_websites
17 September 2026 12:40