Spook SEO
Free SEO tools + the Spook SEO autopilot: analyze domains, generate and publish SEO articles.
使うべきか
品質と安全性
検出事項(48)
- LOWheadline-analyzer 内
- LOWaeo-checker 内
- LOWserp-preview 内
- LOWmeta-tag-generator 内
- LOWschema-generator 内
- LOWrobots-txt-generator 内
- LOWword-counter 内
- LOWcharacter-counter 内
- LOWreadability-checker 内
- LOWhreflang-generator 内
ツール定義とプロトコルへの準拠に関する自動分析に基づいています。
コンテキストコスト
これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。
インストール
ワンクリックインストール
これを `claude_desktop_config.json` ファイルに追加してください:
{
"mcpServers": {
"spook": {
"url": "https://www.tryspook.com/api/mcp"
}
}
}リモートエンドポイント
https://www.tryspook.com/api/mcpstreamable-httpできること
ツール一覧
ツール(59)
🟢serp-preview(title, url, description, device)
Preview how a page's title and meta description render in Google search, with pixel-width truncation for desktop and mobile.
入力スキーマ
{
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The page title tag."
},
"url": {
"type": "string",
"description": "The page URL."
},
"description": {
"type": "string",
"description": "The meta description."
},
"device": {
"type": "string",
"enum": [
"desktop",
"mobile"
],
"default": "desktop"
}
},
"required": [
"title"
]
}🟢meta-tag-generator(title, description, url, image, siteName, ...)
Generate a complete set of HTML meta tags: title, description, canonical, Open Graph, and Twitter Cards.
入力スキーマ
{
"type": "object",
"properties": {
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"url": {
"type": "string",
"description": "Canonical URL."
},
"image": {
"type": "string",
"description": "Social share image URL."
},
"siteName": {
"type": "string"
},
"ogType": {
"type": "string",
"enum": [
"website",
"article",
"product",
"profile"
],
"default": "website"
},
"twitter": {
"type": "string",
"description": "Twitter handle."
}
}
}🟢schema-generator(type, faqs, article, organization, product)
Build valid JSON-LD structured data (FAQ, Article, Organization, or Product) for rich results.
入力スキーマ
{
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"FAQ",
"Article",
"Organization",
"Product"
]
},
"faqs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"q": {
"type": "string"
},
"a": {
"type": "string"
}
}
}
},
"article": {
"type": "object"
},
"organization": {
"type": "object"
},
"product": {
"type": "object"
}
},
"required": [
"type"
]
}🟢robots-txt-generator(mode, disallow, sitemap, crawlDelay, blockedBots)
Build a valid robots.txt: allow or block crawlers, disallow paths, block specific bots, and link a sitemap.
入力スキーマ
{
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"allow",
"disallow"
],
"default": "allow"
},
"disallow": {
"type": "array",
"items": {
"type": "string"
}
},
"sitemap": {
"type": "string"
},
"crawlDelay": {
"type": "number"
},
"blockedBots": {
"type": "array",
"items": {
"type": "string"
}
}
}
}🟢word-counter(text)
Count words, characters, sentences, and paragraphs in text, plus reading and speaking time.
入力スキーマ
{
"type": "object",
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
]
}🟢character-counter(text)
Count characters (with and without spaces), words, sentences, and paragraphs in text.
入力スキーマ
{
"type": "object",
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
]
}🟢readability-checker(text)
Score text readability with Flesch Reading Ease and Flesch-Kincaid Grade, plus a reading level.
入力スキーマ
{
"type": "object",
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
]
}🟢hreflang-generator(rows, xDefault)
Generate hreflang link tags for international/multilingual pages, plus an optional x-default.
入力スキーマ
{
"type": "object",
"properties": {
"rows": {
"type": "array",
"items": {
"type": "object",
"properties": {
"lang": {
"type": "string"
},
"url": {
"type": "string"
}
}
}
},
"xDefault": {
"type": "string"
}
},
"required": [
"rows"
]
}🟢canonical-tag-generator(url)
Generate a rel=canonical link tag for a URL.
入力スキーマ
{
"type": "object",
"properties": {
"url": {
"type": "string"
}
},
"required": [
"url"
]
}🟢meta-robots-generator(index, follow, noarchive, nosnippet, noimageindex, ...)
Build a meta robots tag (and X-Robots-Tag header) from index/follow and snippet directives.
入力スキーマ
{
"type": "object",
"properties": {
"index": {
"type": "boolean",
"default": true
},
"follow": {
"type": "boolean",
"default": true
},
"noarchive": {
"type": "boolean"
},
"nosnippet": {
"type": "boolean"
},
"noimageindex": {
"type": "boolean"
},
"maxSnippet": {
"type": "string"
},
"maxImagePreview": {
"type": "string",
"enum": [
"",
"none",
"standard",
"large"
]
},
"maxVideoPreview": {
"type": "string"
}
}
}🟢sitemap-generator(urls, lastmod)
Build an XML sitemap from a list of URLs, with an optional lastmod date.
入力スキーマ
{
"type": "object",
"properties": {
"urls": {
"type": "array",
"items": {
"type": "string"
}
},
"lastmod": {
"type": "string"
}
},
"required": [
"urls"
]
}🟢robots-txt-tester(robotsTxt, url, userAgent)
Test whether a robots.txt allows or blocks a given URL path for a given user-agent.
入力スキーマ
{
"type": "object",
"properties": {
"robotsTxt": {
"type": "string"
},
"url": {
"type": "string"
},
"userAgent": {
"type": "string",
"default": "*"
}
},
"required": [
"robotsTxt",
"url"
]
}🟢keyword-density-checker(text, n, removeStopwords, limit)
Analyze text for the most frequent words and phrases with their density, to spot keyword stuffing or thin coverage.
入力スキーマ
{
"type": "object",
"properties": {
"text": {
"type": "string"
},
"n": {
"type": "integer",
"enum": [
1,
2,
3
],
"default": 1,
"description": "Phrase length (n-gram)."
},
"removeStopwords": {
"type": "boolean",
"default": true
},
"limit": {
"type": "integer",
"default": 15
}
},
"required": [
"text"
]
}🟢headline-analyzer(headline)
Score a headline (0-100) on length, word balance, power/emotional words, numbers, and brackets.
入力スキーマ
{
"type": "object",
"properties": {
"headline": {
"type": "string"
}
},
"required": [
"headline"
]
}🟢slug-generator(text, separator, removeStopwords)
Turn a title into a clean, SEO-friendly URL slug: lowercase, hyphenated, accent-safe, optional stopword removal.
入力スキーマ
{
"type": "object",
"properties": {
"text": {
"type": "string"
},
"separator": {
"type": "string",
"default": "-"
},
"removeStopwords": {
"type": "boolean",
"default": true
}
},
"required": [
"text"
]
}🟢utm-builder(url, source, medium, campaign, term, ...)
Append UTM tracking parameters (source, medium, campaign, term, content) to a destination URL.
入力スキーマ
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"source": {
"type": "string"
},
"medium": {
"type": "string"
},
"campaign": {
"type": "string"
},
"term": {
"type": "string"
},
"content": {
"type": "string"
}
},
"required": [
"url",
"source",
"medium",
"campaign"
]
}🟢ctr-calculator(clicks, impressions)
Calculate Click-through rate.
入力スキーマ
{
"type": "object",
"properties": {
"clicks": {
"type": "number",
"description": "Clicks"
},
"impressions": {
"type": "number",
"description": "Impressions"
}
},
"required": [
"clicks",
"impressions"
]
}🟢conversion-rate-calculator(conversions, visitors)
Calculate Conversion rate.
入力スキーマ
{
"type": "object",
"properties": {
"conversions": {
"type": "number",
"description": "Conversions"
},
"visitors": {
"type": "number",
"description": "Visitors"
}
},
"required": [
"conversions",
"visitors"
]
}🟢roas-calculator(revenue, adSpend)
Calculate ROAS, ROAS (percentage).
入力スキーマ
{
"type": "object",
"properties": {
"revenue": {
"type": "number",
"description": "Revenue from ads"
},
"adSpend": {
"type": "number",
"description": "Ad spend"
}
},
"required": [
"revenue",
"adSpend"
]
}🟢cpm-calculator(cost, impressions)
Calculate Cost per 1,000 impressions (CPM).
入力スキーマ
{
"type": "object",
"properties": {
"cost": {
"type": "number",
"description": "Total cost"
},
"impressions": {
"type": "number",
"description": "Impressions"
}
},
"required": [
"cost",
"impressions"
]
}🟢cpc-calculator(cost, clicks)
Calculate Cost per click (CPC).
入力スキーマ
{
"type": "object",
"properties": {
"cost": {
"type": "number",
"description": "Total cost"
},
"clicks": {
"type": "number",
"description": "Clicks"
}
},
"required": [
"cost",
"clicks"
]
}🟢ai-crawler-checker(robotsTxt)
Check a robots.txt to see which AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, ...) it currently allows or blocks.
入力スキーマ
{
"type": "object",
"properties": {
"robotsTxt": {
"type": "string",
"description": "The contents of a robots.txt file."
}
},
"required": [
"robotsTxt"
]
}🟢aeo-checker(text)
Score content (0-100) for how easily AI answer engines (ChatGPT, Perplexity, AI Overviews) can quote it, with specific fixes.
入力スキーマ
{
"type": "object",
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
]
}🟢llms-txt-generator(siteName, summary, details, sections)
Generate an llms.txt file from a site name, one-line summary, optional details, and sections of links.
入力スキーマ
{
"type": "object",
"properties": {
"siteName": {
"type": "string"
},
"summary": {
"type": "string"
},
"details": {
"type": "string"
},
"sections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"links": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"notes": {
"type": "string"
}
}
}
}
}
}
}
},
"required": [
"siteName"
]
}🟢ai-prompt-generator(brand, category, competitors, audience)
Generate prompts to test whether ChatGPT/Perplexity/Gemini/Claude recommend a brand, and where it's invisible.
入力スキーマ
{
"type": "object",
"properties": {
"brand": {
"type": "string"
},
"category": {
"type": "string",
"description": "What the brand does / its category."
},
"competitors": {
"type": "array",
"items": {
"type": "string"
},
"description": "Competitor names (array, or a comma-separated string)."
},
"audience": {
"type": "string"
}
},
"required": [
"brand",
"category"
]
}🟢analyze_domain(domain)
Free, no-signup SEO snapshot for any domain: the queries it already ranks on page 1-2 for (its quick-win opportunities), with search volume and estimated traffic. Great first look before signing up.
入力スキーマ
{
"type": "object",
"properties": {
"domain": {
"type": "string",
"description": "A domain, e.g. example.com"
}
},
"required": [
"domain"
]
}🟢list_sites
List the Spook sites on the account this API key belongs to, with each site's id, domain, autopilot state, and publishing setup. (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {}
}🟢get_site(siteId)
Get one site's details and status by its id. (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {
"siteId": {
"type": "string"
}
},
"required": [
"siteId"
]
}🟢list_opportunities(siteId, questionsOnly, limit)
The winnable search queries Spook has found for a site (scored, ranked). No cost. Pass questionsOnly to get only question-shaped queries. (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {
"siteId": {
"type": "string"
},
"questionsOnly": {
"type": "boolean"
},
"limit": {
"type": "integer",
"default": 20
}
},
"required": [
"siteId"
]
}🟢list_articles(siteId, limit)
Recent articles for a site with their status (draft/review/published) and generation status. (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {
"siteId": {
"type": "string"
},
"limit": {
"type": "integer",
"default": 20
}
},
"required": [
"siteId"
]
}🟢generate_article(siteId, query, callbackUrl)
Generate a new SEO article draft for a site targeting a search query. Returns an articleId immediately; generation runs in the background - poll get_article/list_articles, or pass callbackUrl to be notified. Idempotent per query (a repeat returns the existing article). Requires an active subscription. (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {
"siteId": {
"type": "string"
},
"query": {
"type": "string",
"description": "The search query the article should target."
},
"callbackUrl": {
"type": "string",
"description": "Optional https URL to POST { articleId, status, ... } to when generation finishes."
}
},
"required": [
"siteId",
"query"
]
}🟢get_article(articleId)
Fetch one article by id: full markdown body, meta, FAQs, SEO score, status, and published URL. Use to review a draft before publishing. (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {
"articleId": {
"type": "string"
}
},
"required": [
"articleId"
]
}🟢get_site_metrics(siteId, days)
Read a site's performance: daily Search Console clicks/impressions trend plus cached SEO metrics (domain rating, organic traffic estimate, top keywords). No cost. Use to check whether Spook is working. (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {
"siteId": {
"type": "string"
},
"days": {
"type": "integer",
"default": 28
}
},
"required": [
"siteId"
]
}🟡create_site(name, domain, description, brandVoice, niche, ...)
Add a new site to the account. Language/market is auto-detected from the homepage. Requires an available paid site slot (use create_checkout first if none). Returns the new siteId. (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"domain": {
"type": "string",
"description": "Bare domain, e.g. example.com"
},
"description": {
"type": "string"
},
"brandVoice": {
"type": "string"
},
"niche": {
"type": "string"
},
"publishIntegration": {
"type": "string",
"enum": [
"none",
"webhook",
"wordpress",
"ghost",
"shopify",
"webflow",
"rest",
"nextjs"
]
},
"publishWebhookUrl": {
"type": "string"
}
},
"required": [
"name",
"domain"
]
}🟡update_publishing(siteId, publishIntegration, publishMode, publishWebhookUrl, publishWebhookSecret)
Configure where a site publishes. Set publishIntegration to 'nextjs' for a credential-free Spook-hosted blog (returns a blog API key), or 'webhook' with publishWebhookUrl. publishMode 'draft' or 'live'. (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {
"siteId": {
"type": "string"
},
"publishIntegration": {
"type": "string",
"enum": [
"none",
"webhook",
"wordpress",
"ghost",
"shopify",
"webflow",
"rest",
"nextjs"
]
},
"publishMode": {
"type": "string",
"enum": [
"draft",
"live"
]
},
"publishWebhookUrl": {
"type": "string"
},
"publishWebhookSecret": {
"type": "string"
}
},
"required": [
"siteId"
]
}🟡create_checkout
Get a Stripe Checkout URL to add the first paid site to the account. Return the URL to the user to approve payment. Needed before create_site if the account has no available slot. (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {}
}🟡publish_article(articleId)
Publish a generated article to the site's connected CMS. Enforces Spook's SEO-score floor - a draft below it is refused (returns published:false with a reason). (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {
"articleId": {
"type": "string"
}
},
"required": [
"articleId"
]
}🟡set_autopilot(siteId, enabled)
Turn a site's autopilot on or off. When on, Spook plans, writes, and publishes articles automatically. (requires an agent API key)
入力スキーマ
{
"type": "object",
"properties": {
"siteId": {
"type": "string"
},
"enabled": {
"type": "boolean"
}
},
"required": [
"siteId",
"enabled"
]
}🟢blog-keyword-generator(topic)
Blog Keyword Generator: Generate SEO keyword ideas for a topic, with search intent and difficulty. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
]
}🟢content-brief-generator(keyword, audience)
Content Brief Generator: Create a detailed SEO content brief for a target keyword. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"keyword": {
"type": "string"
},
"audience": {
"type": "string",
"description": "Optional target audience."
}
},
"required": [
"keyword"
]
}🟢blog-outline-generator(topic)
Blog Outline Generator: Produce a structured, SEO-friendly blog post outline. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
]
}🟢content-idea-generator(topic)
Content Idea Generator: Generate content ideas with formats and angles for a niche. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
]
}🟢seo-title-generator(keyword, topic)
SEO Title Generator: Write catchy, SEO-friendly title tags for a topic. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"keyword": {
"type": "string"
},
"topic": {
"type": "string"
}
},
"required": [
"keyword"
]
}🟢meta-description-generator(keyword, topic, tone)
Meta Description Generator: Write SEO meta descriptions that maximize click-through rate. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"keyword": {
"type": "string"
},
"topic": {
"type": "string"
},
"tone": {
"type": "string",
"description": "Optional tone, e.g. professional, playful."
}
},
"required": [
"keyword"
]
}🟢headline-generator(topic)
Headline Generator: Generate catchy, click-worthy headlines. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
]
}🟢subject-line-generator(topic)
Email Subject Line Generator: Write high-converting email subject lines. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
]
}🟢cta-generator(product, topic, goal)
CTA Generator: Write effective call-to-action phrases. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"product": {
"type": "string"
},
"topic": {
"type": "string"
},
"goal": {
"type": "string",
"description": "Optional CTA goal, e.g. sign up, buy."
}
},
"required": [
"product"
]
}🟢ad-copy-generator(product, topic, platform)
Ad Copy Generator: Generate ad headlines and descriptions. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"product": {
"type": "string"
},
"topic": {
"type": "string"
},
"platform": {
"type": "string",
"description": "Optional ad platform, e.g. Google, Meta."
}
},
"required": [
"product"
]
}🟢social-post-generator(topic, platform)
Social Media Post Generator: Write platform-specific social media posts. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"topic": {
"type": "string"
},
"platform": {
"type": "string",
"description": "Optional network, e.g. LinkedIn, X."
}
},
"required": [
"topic"
]
}🟢article-summarizer(text)
AI Article Summarizer: Condense an article into a TL;DR, key points, and summary. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
]
}🟢article-rewriter(text, tone)
AI Article Rewriter: Rephrase text to be clearer, unique, and engaging. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"text": {
"type": "string"
},
"tone": {
"type": "string",
"description": "Optional target tone."
}
},
"required": [
"text"
]
}🟢grammar-checker(text)
AI Grammar Checker: Fix grammar, spelling, and punctuation, and list the corrections. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"text": {
"type": "string"
}
},
"required": [
"text"
]
}🟢faq-generator(topic)
FAQ Generator: Generate a set of frequently asked questions and answers for a topic. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
]
}🟢product-description-generator(product, features)
Product Description Generator: Write persuasive product descriptions. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"product": {
"type": "string"
},
"features": {
"type": "string",
"description": "Optional key features."
}
},
"required": [
"product"
]
}🟢business-name-generator(topic, keywords, style)
Business Name Generator: Generate brandable business name ideas. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"topic": {
"type": "string",
"description": "What the business is about."
},
"keywords": {
"type": "string",
"description": "Optional words to work in."
},
"style": {
"type": "string",
"description": "Optional naming style."
}
},
"required": [
"topic"
]
}🟢youtube-title-generator(topic)
YouTube Title & Description Generator: Write a YouTube title, description, and tags for a video topic. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"topic": {
"type": "string"
}
},
"required": [
"topic"
]
}🟢paragraph-generator(topic, tone)
Paragraph Generator: Expand a topic or sentence into a well-written paragraph. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"topic": {
"type": "string"
},
"tone": {
"type": "string",
"description": "Optional tone."
}
},
"required": [
"topic"
]
}🟢content-coverage-checker(keyword, language)
Content Coverage Checker: List the terms and entities an article targeting a keyword is expected to cover. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"keyword": {
"type": "string"
},
"language": {
"type": "string"
}
}
}🟢hashtag-generator(topic, platform)
Hashtag Generator: Generate relevant hashtags for a topic and platform. (free, AI-generated, rate-limited).
入力スキーマ
{
"type": "object",
"properties": {
"topic": {
"type": "string"
},
"platform": {
"type": "string",
"description": "Optional network, e.g. Instagram, TikTok."
}
},
"required": [
"topic"
]
}コミュニティ
エビデンス