MCP 서버

SEOPro AI

io.github.alpha-ai-labs/seo-agent
데이터 및 분석 마케팅 및 광고 공개 · 연결 가능 MCP 2025-11-25

이 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.
입력 스키마
{'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.
입력 스키마
{'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.
파괴적 작업
입력 스키마
{'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.
읽기 전용 멱등성
입력 스키마
{'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.
읽기 전용 멱등성
입력 스키마
{'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.
읽기 전용 멱등성
입력 스키마
{'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.
읽기 전용 멱등성
입력 스키마
{'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.
읽기 전용 멱등성
입력 스키마
{'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.
읽기 전용 멱등성
입력 스키마
{'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.
읽기 전용 멱등성
입력 스키마
{'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.
읽기 전용 멱등성
입력 스키마
{'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.
읽기 전용 멱등성
입력 스키마
{'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.
읽기 전용 멱등성
입력 스키마
{'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').
읽기 전용 멱등성
입력 스키마
{'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.
읽기 전용 멱등성
입력 스키마
{'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.
파괴적 작업 외부 접근 가능
입력 스키마
{'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.
파괴적 작업 외부 접근 가능
입력 스키마
{'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.
입력 스키마
{'type': 'object', 'title': 'run_seo_auditArguments', 'required': ['url'], 'properties': {'url': {'type': 'string', 'title': 'Url'}}}
추가됨
get_indexing_status
2026년 9월 17일 12:40 PM
추가됨
request_indexing
2026년 9월 17일 12:40 PM
추가됨
publish_article
2026년 9월 17일 12:40 PM
추가됨
get_article
2026년 9월 17일 12:40 PM
추가됨
list_articles
2026년 9월 17일 12:40 PM
추가됨
get_article_status
2026년 9월 17일 12:40 PM
추가됨
generate_article
2026년 9월 17일 12:40 PM
추가됨
generate_keyword_plan
2026년 9월 17일 12:40 PM
추가됨
get_keyword_plan
2026년 9월 17일 12:40 PM
추가됨
get_backlink_profile
2026년 9월 17일 12:40 PM
추가됨
check_ai_citations
2026년 9월 17일 12:40 PM
추가됨
run_seo_audit
2026년 9월 17일 12:40 PM
추가됨
get_ai_search_traffic
2026년 9월 17일 12:40 PM
추가됨
get_search_trends
2026년 9월 17일 12:40 PM
추가됨
get_top_search_keywords
2026년 9월 17일 12:40 PM
추가됨
get_search_performance
2026년 9월 17일 12:40 PM
추가됨
get_website_stats
2026년 9월 17일 12:40 PM
추가됨
list_websites
2026년 9월 17일 12:40 PM