MCP Server
SEO tools for Claude Code, Cursor, and other MCP clients. Use free tools instantly or unlock premium analysis with an API key.
Table of Contents
Quick Start
Prefer a condensed walkthrough with copy-paste commands and a downloadable install prompt? See the Quick Install Guide.
Free tools work instantly without signing up. For premium and Google tools, create a free API key in your Visibly AI account.
No Claude account yet? Download Claude or Claude Code (npm install -g @anthropic-ai/claude-code)
Remote (no install)
Add the server URL directly to Claude Code or Cursor. No local installation required. 8 free tools work instantly without an API key.
Get API key (optional)
Go to Settings > API Key & MCP and create a new key. The key starts with lc_. This unlocks all premium and Google tools.
Use tools
Ask Claude Code directly for SEO data: traffic, keywords, backlinks, competitors, and more, all from the chat.
Available Tools
The MCP server provides 33 tools. 8 free tools work without an API key. 20 premium tools require a valid API key with credits. 5 Google/project tools require an API key but don't consume credits.
Free Tools (8)
| Tool | Description | Credits |
|---|---|---|
classify_keywords_simple |
Keyword classification via local regex (offline, no API): intent, brand type, funnel stage, topic, conversion score. For DataForSEO-based analysis: classify_keywords_advanced (paid). | Free |
seo_checklist |
SEO checklists for 5 types: general, blog, ecommerce, discover, backlink | Free |
seo_guidance |
SEO best practices on 10 topics such as technical SEO, content, backlinks, Core Web Vitals, and more | Free |
get_google_guidelines |
Official Google guidelines by category: Helpful Content, EEAT, Spam, Core Updates, Structured Data, and more | Free |
analyze_url_structure |
URL SEO analysis: length, readability, keywords in the URL, special characters, recommendations | Free |
get_account_info |
Check credit balance and subscription tier: available credits, subscription tier, account information | Free |
list_locations |
Available countries and regions for location-specific data queries for traffic and keywords | Free |
get_skill |
Fetch SEO workflow skills: ready-made guides for SEO audits, keyword research, competitor analysis, and more. List available skills with name="list". | Free |
Premium Tools (20)
get_account_info.
get_traffic_snapshot, get_historical_traffic, and get_keywords automatically detect whether Google Analytics or Search Console is connected. If yes, real Google data is used (0 credits). If not, DataForSEO is used as a fallback (costs credits). The response contains a data_source field with the value 'google' or 'dataforseo'.
| Tool | Description | Credits |
|---|---|---|
classify_keywords_advanced |
Keyword classification using DataForSEO Search Intent API + regex classifier: intent, brand type, funnel stage, topic, modifiers, and conversion score per keyword | Dynamic |
get_traffic_snapshot |
Current traffic for a domain. Automatically uses Google Analytics (free) if connected, otherwise DataForSEO (credits). Response includes data_source. | Dynamic |
get_historical_traffic |
Historical traffic trends. Automatically uses Google Analytics (free) if connected, otherwise DataForSEO (credits, up to 5 years). Response includes data_source. | Dynamic |
get_keywords |
Top keywords for a domain. Automatically uses Google Search Console (free, real click data) if connected, otherwise DataForSEO (credits). Response includes data_source. | Dynamic |
get_competitors |
Competitor domains by keyword overlap: shared keywords, traffic comparison, similarity score | Dynamic |
get_backlinks |
Backlink profile for a domain: Domain Rating (0-100), total backlinks, referring domains, DoFollow/NoFollow breakdown | Dynamic |
get_referring_domains |
Referring domains with authority score, number of backlinks per domain, and DoFollow share | Dynamic |
validate_keywords |
Validate search volume, competition (CPC), and keyword difficulty for a list of keywords | Dynamic |
crawl_website |
Website crawl with subsequent 24-point on-page analysis: title, meta tags, structure, internal links, load time | 15-60 |
onpage_analysis |
24-point on-page SEO audit of a single URL: title, meta description, H1-H6, alt tags, canonical URL, robots directives | 15 |
check_serp |
Live Google SERP results for a keyword: top-10 organic results with position, URL, domain, title, for competitor analysis and content gap detection | 15 |
check_links |
Broken link detection for a domain or URL: HTTP status codes, dead links, redirect chains | 20 |
check_pagespeed |
Google PageSpeed Insights + Core Web Vitals: performance, accessibility, and SEO scores, LCP, CLS, TBT, FCP, and top optimization recommendations | 5 |
audit_sitemap |
XML sitemap audit: total URLs, duplicates, broken links (sample up to 200 URLs), lastmod coverage, sitemap structure | 20 |
check_structured_data |
JSON-LD and microdata validation: detect schema types, check required fields, identify errors and warnings for Article, Product, Organization, FAQPage, etc. | 5 |
check_hreflang |
Hreflang validation: x-default present, language codes valid, all target URLs reachable, bidirectional linking checked | 10 |
seo_agent |
SEO agent system: 6 specialized agents for crawling, SEO analysis, strategy, copywriting, content review, and consulting | Dynamic |
seo_workflow |
Multi-stage SEO workflows with report generation: seo_performance_audit (GSC analysis + PDF, keyword performance report) and indexing_diagnosis | 150-200 |
query_knowledge_base |
RAG search across the SEO knowledge base: blog articles, documentation, Google guidelines, semantic full-text search by relevance and recency | 2 |
query_fanout |
AI query fan-out and content coverage analysis for a URL and seed keyword: AI-generated sub-queries are matched semantically against the crawled page content. Returns coverage score, fan-out queries, and detected topic gaps, for content gap analysis and AI search coverage. | 10-60 |
Google & Project Tools (5)
| Tool | Description | Credits |
|---|---|---|
list_projects |
List EEAT projects with scores, status, and competitor counts | Free |
get_project |
Get project details including competitors and Google connection status (GSC/GA4) | Free |
get_google_connections |
Show connected Google Search Console and Analytics 4 properties plus GSC-GA4 pairings | Free |
query_search_console |
Query Google Search Console: keywords, pages, countries, devices. Property is auto-detected. | Free |
query_analytics |
Query Google Analytics 4: traffic overview, top pages, traffic sources, or e-commerce revenue. Property is auto-detected. | Free |
Skills & Workflows
Skills are ready-made SEO workflows with methodology, steps, and quality gates. In the SEO Copilot chat they are triggered with an @ command. Via MCP they are loaded through the get_skill tool.
@ to open the workflow menu. Example:
@full-seo-audit example.com
Via MCP tool:
get_skill(name="list")
| Workflow | Description | Credits (approx.) |
|---|---|---|
@full-seo-audit |
Complete audit: sitemap crawl, PageSpeed/CWV, structured data, hreflang, backlinks, keywords, competitors, with P1/P2/P3 prioritization and a 30-60-90 day roadmap | 300-500 |
@quick-seo-audit |
Quick audit: 100-page sample, PageSpeed, core checks, health score, ideal for an initial assessment or monitoring | 80-120 |
@seo-audit |
Standard SEO audit: traffic, keywords, on-page, backlinks, competitors, using the 4-phase Neuro-SEO approach | 80-120 |
@keyword-optimization |
Keyword optimization: live SERP check, GSC data, close-variant analysis, page crawl, on-page score, prioritized strategy | 55-70 |
@keyword-research |
Keyword research with search volume validation, intent classification, cluster building, and quick-win identification | 20-40 |
@keyword-performance-report |
Keyword performance deep-dive: ranking distribution, intent mapping, CTR benchmarking, quick-win prioritization, cannibalization | 20-30 |
@seo-potential-report |
Potential analysis with CTR model, cluster breakdown, lead calculation, SEA equivalence, phased offer, and ROI | 50-80 |
@competitor-analysis |
Competitor comparison: keyword gaps, traffic comparison, backlink authority, ranking distribution | 40-60 |
@traffic-analysis |
Traffic analysis with historical trends, SEA equivalence calculation, and growth forecast | 15-30 |
@gsc-report |
Google Search Console report: top queries, pages, CTR benchmarking against Keyword Study 2026, quick wins | 0 |
@site-health-check |
Website health check: broken links, on-page issues, crawlability, indexation | 30-50 |
@seo-structure-check |
Technical SEO structure check: URL routing, canonical URLs, sitemap, robots.txt, hreflang | 30-50 |
Calling a workflow
In SEO Copilot chat
Type @ in the chat input field, a dropdown shows all available workflows:
# Examples for Copilot chat:
@full-seo-audit example.com
@quick-seo-audit example.com
@keyword-optimization "gold wedding ring" example.com
@seo-potential-report example.com US market
Via MCP tool (Claude Code, Cursor, etc.)
Use the get_skill tool to load the workflow guide:
# Show all available skills:
get_skill(name="list")
# Load a skill (e.g. Full SEO Audit):
get_skill(name="full-seo-audit")
# Or directly in the prompt:
# "Load the full-seo-audit skill and run it for example.com,
# monthly SEA budget $20,000, B2B industry"
Setup: Remote Server (recommended)
The remote server runs on our infrastructure. You don't need to install anything. Simply add the server URL to your MCP configuration.
Claude Code CLI
# PowerShell / Windows (with API key, all 33 tools available):
claude mcp add --transport http visiblyai https://mcp.visibly-ai.com/mcp --header "Authorization: Bearer lc_your_key"
# PowerShell / Windows (without API key, 8 free tools only):
claude mcp add --transport http visiblyai https://mcp.visibly-ai.com/mcp
\ is not a valid line continuation there for claude mcp add and easily causes parser errors.
JSON configuration (settings.json / mcp_servers.json)
For Cursor, VS Code, and other clients that use a JSON configuration file:
{
"mcpServers": {
"visiblyai": {
"type": "http",
"url": "https://mcp.visibly-ai.com/mcp",
"headers": {
"Authorization": "Bearer lc_your_key"
}
}
}
}
lc_your_key with your real API key from Settings > API Key & MCP. Without the headers block, only the 8 free tools work.
Test the connection
After adding, you can test the connection directly in the chat:
# Check balance and available credits:
# Ask Claude: "How many credits do I have left? Use the get_account_info tool."
# Free URL analysis without a key:
# Ask Claude: "Analyze the URL structure of https://example.com/products/seo-tools"
Setup: pip install
Install the package locally and register it as a stdio transport. Suitable if you want to run or customize the server locally.
Installation and registration
# Install the package:
pip install visiblyai-mcp-server
# Register in Claude Code (PowerShell / Windows):
claude mcp add --transport stdio -e VISIBLYAI_API_KEY=lc_your_key visiblyai -- visiblyai-mcp-server
JSON configuration (stdio)
{
"mcpServers": {
"visiblyai": {
"type": "stdio",
"command": "visiblyai-mcp-server",
"env": {
"VISIBLYAI_API_KEY": "lc_your_key"
}
}
}
}
Setup: uvx
With uvx you can run the server directly without installing it first. The package is automatically fetched on each start.
Claude Code CLI with uvx
# Run directly without prior installation (PowerShell / Windows):
claude mcp add --transport stdio -e VISIBLYAI_API_KEY=lc_your_key visiblyai -- uvx visiblyai-mcp-server
JSON configuration (uvx)
{
"mcpServers": {
"visiblyai": {
"type": "stdio",
"command": "uvx",
"args": ["visiblyai-mcp-server"],
"env": {
"VISIBLYAI_API_KEY": "lc_your_key"
}
}
}
}
uv as a package manager. If not present, install it with pip install uv or visit docs.astral.sh/uv.
Authentication
The MCP server accepts a Bearer token in the Authorization header:
Authorization: Bearer lc_your_api_key_here
You manage API keys under Settings > API Key & MCP.
Key format
| Property | Value |
|---|---|
| Prefix | lc_ |
| Example | lc_a1b2c3d4e5f6789... |
| Create | Settings > API Key & MCP |
| Visibility | Shown only once upon creation |
Access levels
| Scenario | Available tools |
|---|---|
| Without API key | 8 free tools (classify_keywords_simple, seo_checklist, seo_guidance, get_google_guidelines, get_skill, analyze_url_structure, get_account_info, list_locations) |
| With API key, sufficient credits | All 33 tools |
| With API key, no credits | 8 free tools + 5 Google/project tools + error message for premium tools |
Rate Limits
Guideline values: these limits describe the intended usage; hard enforcement may happen at the infrastructure level and can change.
The MCP server limits the number of requests per time window to ensure fair usage.
| Limit | Value | Basis |
|---|---|---|
| Requests per minute | 60 | Per API key (in-memory) |
| Requests per minute (anonymous) | 10 | Per IP address |
When exceeded, the server returns the JSON-RPC error code -32000 (Rate limit exceeded). Wait briefly and send the request again.
Error Responses
The MCP server returns errors as JSON-RPC error objects:
{
"jsonrpc": "2.0",
"id": 1,
"error": {
"code": -32001,
"message": "Authentication required. Provide a valid API key."
}
}
| Code | Meaning | Cause |
|---|---|---|
-32700 |
Parse error | Invalid JSON request could not be parsed |
-32600 |
Invalid request | The JSON request does not conform to the JSON-RPC 2.0 format |
-32601 |
Method not found | The requested tool or method does not exist |
-32602 |
Invalid params | A required parameter is missing or has an invalid value |
-32603 |
Internal error | Internal server error while processing the request |
-32001 |
Authentication required | No or invalid API key provided. Tool requires authentication. |
-32002 |
Insufficient credits | Not enough credits for this action. Top up credits or upgrade your subscription. |
-32000 |
Rate limit exceeded | Too many requests per minute. Wait briefly and try again. |
Credit System
Premium tools consume credits from your account. The number of credits deducted depends on the scope of the query.
Credit deduction
| Pricing model | Description | Affected tools |
|---|---|---|
| Free | No credit deduction. No API key required. | classify_keywords_simple, seo_checklist, seo_guidance, get_google_guidelines, get_skill, analyze_url_structure, get_account_info, list_locations, list_projects, get_project, get_google_connections, query_search_console, query_analytics |
| Dynamic | Credit deduction based on the data volume of the response (number of keywords, domains, data points) | classify_keywords_advanced, get_traffic_snapshot, get_historical_traffic, get_keywords, get_competitors, get_backlinks, get_referring_domains, validate_keywords, seo_agent |
| 2 | Fixed rate: 2 credits per call | query_knowledge_base |
| 5 | Fixed rate: 5 credits per call | check_pagespeed, check_structured_data |
| 10 | Fixed rate: 10 credits per call | check_hreflang |
| 15 | Fixed rate: 15 credits per call | onpage_analysis, check_serp |
| 10-60 | Tiered pricing: 10 credits with Google Search Console as the data source, 60 credits with DataForSEO. The data_source parameter decides, not the page size. |
query_fanout |
| 15-60 | Tiered pricing: 15 credits for small websites, up to 60 credits for large crawls | crawl_website |
| 20 | Fixed rate: 20 credits per call | check_links, audit_sitemap |
| 60-200 | Multi-step workflow with report: about 60 credits (quick-win analysis), 150 credits (performance audit), up to 200 credits (indexing diagnosis) | seo_workflow |
Check your balance
Check your balance anytime with the free get_account_info tool:
# Ask Claude Code in the chat:
# "How many credits do I have left on my visiblyai account?"
# Claude automatically calls get_account_info and shows you:
# - Available credits
# - Subscription tier (Free / Standard / Pro / Agency)
# - Account information
Subscription tiers
| Tier | Credits / month | Price | Projects |
|---|---|---|---|
| Free | 0 | Free | 1 |
| Standard | 9,000 | €49/mo | 3 |
| Pro | 30,000 | €149/mo | 10 |
| Agency | 90,000 | €499/mo | 50 |