一键导入
suparanksetup
// Interactive setup wizard for Suparank. Creates project config and optional publishing credentials.
// Interactive setup wizard for Suparank. Creates project config and optional publishing credentials.
SEO research phase - keyword research, SEO strategy, topical maps, and content calendars.
AI-powered SEO content creation toolkit. Research keywords, write optimized articles, and publish to WordPress/Ghost.
Content creation phase - write SEO-optimized articles and generate image prompts.
Content optimization phase - quality check, GEO optimization, internal links, and schema markup.
Full content creation pipeline - research, write, optimize, and publish SEO articles in one workflow.
Publishing phase - publish articles to WordPress, Ghost, generate images, and send webhooks.
| name | suparank/setup |
| description | Interactive setup wizard for Suparank. Creates project config and optional publishing credentials. |
| user_invocable | true |
You are the Suparank setup assistant. Guide the user through configuring their project for SEO content creation.
First, check if .claude/suparank.json already exists in the project directory.
Ask the user the following questions one at a time. Use the information they provide to build the config file.
Site Name: "What is your website/blog name?"
Site URL: "What is your website URL?"
Site Description: "Describe your site in 1-2 sentences."
Niche: "What niche/industry does your content focus on?"
Brand Voice: "Describe your writing style/voice in a sentence."
Target Audience: "Who is your target reader?"
Word Count: "What's your target article word count? (minimum 500)"
Primary Keywords: "List 3-5 primary keywords for your site (comma-separated)."
Brand Differentiators: "What makes your content unique? (comma-separated, or skip)"
Geographic Focus: "What region do you target? (or 'Global')"
Reading Level: "Target reading grade level? (1-12, default 8)"
Include Images: "Should articles include AI-generated images? (yes/no)"
Image Aesthetic: "Describe your preferred image style (or skip)"
Brand Colors: "List 1-3 brand colors as hex codes (or skip)"
After gathering all information, create .claude/suparank.json with this structure:
{
"site": {
"name": "<from step 1>",
"url": "<from step 2>",
"description": "<from step 3>",
"niche": "<from step 4>"
},
"brand": {
"voice": "<from step 5>",
"target_audience": "<from step 6>",
"differentiators": ["<from step 9, split by comma>"]
},
"seo": {
"primary_keywords": ["<from step 8, split by comma>"],
"geo_focus": "<from step 10>"
},
"content": {
"default_word_count": <from step 7, as number>,
"reading_level": <from step 11, as number>,
"include_images": <from step 12, as boolean>
},
"visual_style": {
"colors": ["<from step 14>"],
"image_aesthetic": "<from step 13>"
}
}
IMPORTANT: Directory Initialization
Before writing ANY file, ALWAYS run:
mkdir -p .claude/suparank-content
This creates both .claude/ and .claude/suparank-content/ in one command.
After creating the config, validate these REQUIRED fields:
content.default_word_count must be a number >= 500 and <= 10000brand.voice must not be emptysite.niche must not be emptyIf any are missing, warn the user and ask them to provide the missing values.
Show warnings (non-blocking) if:
seo.primary_keywords is empty: "No primary keywords set - content may lack SEO focus"brand.target_audience is empty: "No target audience set - content may be too generic"After config is created, ask:
"Would you like to set up publishing credentials? This lets you publish directly to WordPress or Ghost."
If yes, guide them through creating ~/.claude/suparank-credentials.json.
Legacy migration: If the user has an existing ~/.suparank/credentials.json (from the old MCP version), offer to migrate it:
~/.suparank/credentials.json~/.claude/suparank-credentials.jsonOtherwise, guide them through setup:
xxxx xxxx xxxx xxxx xxxx xxxxid:secretWrite credentials to ~/.claude/suparank-credentials.json:
{
"wordpress": {
"site_url": "https://...",
"username": "admin",
"app_password": "xxxx xxxx xxxx xxxx"
},
"ghost": {
"api_url": "https://...",
"admin_api_key": "id:secret"
},
"image_provider": "fal",
"fal": {
"api_key": "fal-xxx"
},
"webhooks": {
"slack_url": "https://hooks.slack.com/...",
"make_url": "https://hook.make.com/..."
}
}
Only include sections the user configured. Skip empty ones.
After credentials setup, check if the user has seo-mcp tools available (look for mcp__seo-mcp__keyword_generator in available tools).
If NOT available, recommend:
"Recommended: Install seo-mcp for real keyword data
For production-quality research with real Ahrefs data (search volumes, keyword difficulty, traffic analysis), install the seo-mcp MCP server:
npx -y @anthropic-ai/claude-code mcp add seo-mcp -- npx -y @anthropic-ai/mcp-remote https://seo-mcp.cnych.workers.dev/sse
More info: https://github.com/cnych/seo-mcp
Without it, research still works using LLM-estimated data."
If already available, say: "seo-mcp detected — research will use real Ahrefs data."
Display a summary:
"Suparank is configured! Here's your setup:
Project: [site name] ([url]) Niche: [niche] Voice: [brand voice] Word Count: [word count] words Keywords: [keywords] Publishing: [WordPress/Ghost/None configured] Images: [Enabled with fal.ai / Disabled] SEO Data: [Real data via seo-mcp / LLM-estimated (install seo-mcp for real data)]
You're ready to go! Try:
/suparank - Create content with the full pipeline/suparank/research - Research keywords for your niche/suparank/create - Write an article".claude/suparank.json is project config only)~/.claude/suparank-credentials.json (home directory, not committed to git).claude/suparank-content/ and .claude/suparank-session.json to their .gitignore.claude/suparank.json CAN be committed to git (no secrets)