Servidor MCP

SEOPro AI

io.github.alpha-ai-labs/seo-agent
Datos y analítica Marketing y publicidad Público y accesible MCP 2025-11-25

Qué hace este 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.
Esquema de entrada
{'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.
Esquema de entrada
{'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.
Destructivo
Esquema de entrada
{'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.
Solo lectura Idempotente
Esquema de entrada
{'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.
Solo lectura Idempotente
Esquema de entrada
{'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.
Solo lectura Idempotente
Esquema de entrada
{'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.
Solo lectura Idempotente
Esquema de entrada
{'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.
Solo lectura Idempotente
Esquema de entrada
{'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.
Solo lectura Idempotente
Esquema de entrada
{'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.
Solo lectura Idempotente
Esquema de entrada
{'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.
Solo lectura Idempotente
Esquema de entrada
{'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.
Solo lectura Idempotente
Esquema de entrada
{'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.
Solo lectura Idempotente
Esquema de entrada
{'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').
Solo lectura Idempotente
Esquema de entrada
{'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.
Solo lectura Idempotente
Esquema de entrada
{'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.
Destructivo Acceso externo
Esquema de entrada
{'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.
Destructivo Acceso externo
Esquema de entrada
{'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.
Esquema de entrada
{'type': 'object', 'title': 'run_seo_auditArguments', 'required': ['url'], 'properties': {'url': {'type': 'string', 'title': 'Url'}}}
Añadido
get_indexing_status
17 de September de 2026 a las 12:40
Añadido
request_indexing
17 de September de 2026 a las 12:40
Añadido
publish_article
17 de September de 2026 a las 12:40
Añadido
get_article
17 de September de 2026 a las 12:40
Añadido
list_articles
17 de September de 2026 a las 12:40
Añadido
get_article_status
17 de September de 2026 a las 12:40
Añadido
generate_article
17 de September de 2026 a las 12:40
Añadido
generate_keyword_plan
17 de September de 2026 a las 12:40
Añadido
get_keyword_plan
17 de September de 2026 a las 12:40
Añadido
get_backlink_profile
17 de September de 2026 a las 12:40
Añadido
check_ai_citations
17 de September de 2026 a las 12:40
Añadido
run_seo_audit
17 de September de 2026 a las 12:40
Añadido
get_ai_search_traffic
17 de September de 2026 a las 12:40
Añadido
get_search_trends
17 de September de 2026 a las 12:40
Añadido
get_top_search_keywords
17 de September de 2026 a las 12:40
Añadido
get_search_performance
17 de September de 2026 a las 12:40
Añadido
get_website_stats
17 de September de 2026 a las 12:40
Añadido
list_websites
17 de September de 2026 a las 12:40