Marketing Miner MCP
Marketing Miner MCP 서버
Marketing Miner Profilers API를 위한 MCP 서버입니다. Claude, Cursor, Windsurf 및 기타 MCP 클라이언트를 Marketing Miner 키워드 조사 및 웹사이트 분석 도구에 연결합니다.
사용 가능한 도구
도구 | 엔드포인트 | 설명 |
|
| 단일 키워드에 대한 검색량 + CPC + 전년 대비(YoY) + 계절성 |
|
| 1~1000개 키워드 일괄 처리 |
|
| 난이도 및 SERP 기능을 포함한 키워드 제안(질문 / 신규 / 트렌드). 응답 내 |
|
| 예상 트래픽, 키워드 수, result_type별 분류 |
|
| 과거 트래픽 추세 + 경쟁사 비교 |
모든 도구는 markdown(기본값, 사람이 읽을 수 있는 형식) 또는 json(response_format: "json")을 반환하며, 모든 API 필드가 포함된 structuredContent를 함께 제공합니다. 각 도구는 클라이언트 측 검증을 위한 outputSchema를 선언합니다.
Related MCP server: SurfRank MCP Server
설치
marketingminer.com/en/features/api에서 API 토큰을 받은 후, 아래 옵션 중 하나를 선택하세요.
옵션 A — Claude Code CLI 한 줄 명령어 (권장, 크로스 플랫폼)
macOS, Windows, Linux에서 작동하며 Claude Code CLI가 구성 파일 위치를 자동으로 처리합니다.
claude mcp add marketing-miner \
-s user \
-e MARKETING_MINER_API_TOKEN=YOUR_TOKEN \
-- npx -y github:lukaskostka/marketing-miner-mcp-s user→ 전역 설치 (모든 프로젝트에서 사용 가능)-e→ API 토큰을 환경 변수로 설정YOUR_TOKEN을 실제 Marketing Miner API 토큰으로 교체하세요.
나중에 제거하려면: claude mcp remove marketing-miner -s user.
옵션 B — GitHub에서 직접 npx 실행 (복제 불필요)
저장소에 빌드된 dist/ 폴더가 포함되어 있으므로 npx로 직접 실행할 수 있습니다.
Claude Desktop / Cursor / Windsurf 구성:
{
"mcpServers": {
"marketing-miner": {
"command": "npx",
"args": ["-y", "github:lukaskostka/marketing-miner-mcp"],
"env": {
"MCP_TRANSPORT": "stdio",
"MARKETING_MINER_API_TOKEN": "your_token_here"
}
}
}
}옵션 C — 저장소 복제 (개발 / 사용자 정의용)
git clone https://github.com/lukaskostka/marketing-miner-mcp.git
cd marketing-miner-mcp
npm install
npm run build그런 다음 MCP 클라이언트를 빌드된 바이너리로 지정하세요:
{
"mcpServers": {
"marketing-miner": {
"command": "node",
"args": ["/absolute/path/to/marketing-miner-mcp/dist/index.js"],
"env": {
"MCP_TRANSPORT": "stdio",
"MARKETING_MINER_API_TOKEN": "your_token_here"
}
}
}
}로컬에서 실행하려면 MARKETING_MINER_API_TOKEN=xxx npm start(stdio, 기본값) 또는 MCP_TRANSPORT=http MARKETING_MINER_API_TOKEN=xxx npm start(포트 8000에서 Streamable HTTP)를 사용하세요.
옵션 D — Docker (자체 호스팅 HTTP)
git clone https://github.com/lukaskostka/marketing-miner-mcp.git
cd marketing-miner-mcp
docker build -t marketing-miner-mcp .
docker run -p 8000:8000 -e MARKETING_MINER_API_TOKEN=your_token_here marketing-miner-mcpStreamable HTTP URL을 통해 원격 클라이언트에서 연결하세요(아래 MCP 클라이언트에서 연결하기 참조).
구성
변수 | 기본값 | 설명 |
| — | 필수. marketingminer.com/en/features/api에서 발급받은 API 토큰 |
|
|
|
|
| HTTP 바인딩 호스트 |
|
| HTTP 포트 |
|
| HTTP 경로 |
대체 토큰 이름: MARKETING_MINER_API_KEY, MARKETING_MINER_TOKEN, MM_API_TOKEN, MM_API_KEY.
원격 HTTP 클라이언트 구성
Streamable HTTP(위의 옵션 D 또는 기타 원격 호스트)를 통해 서버를 실행하는 경우, MCP 클라이언트는 URL을 통해서만 연결됩니다:
{
"mcpServers": {
"marketing-miner": {
"url": "https://your-host.example.com/mcp"
}
}
}사용 예시
1. 단일 키워드 검색량:
"CZ에서
marketing의 검색량과 계절성은 어때?" →marketing_miner_get_search_volume({lang:"cs", keyword:"marketing"})
2. 일괄 처리:
"SEO 용어들의 검색량 비교" →
marketing_miner_batch_search_volume({lang:"cs", keywords:["seo","ppc","google ads","content marketing"]})
3. FAQ를 위한 질문 조사:
"
hypoteka와 관련된 질문 찾기" →marketing_miner_get_keyword_suggestions({lang:"cs", keyword:"hypoteka", suggestions_type:"questions", limit:50})
4. 제안 페이지네이션:
다음 페이지 가져오기 →
marketing_miner_get_keyword_suggestions({lang:"cs", keyword:"hypoteka", limit:50, offset:50})
5. 경쟁사 분석:
"seznam.cz의 트래픽은 어느 정도인가요?" →
marketing_miner_get_website_stats({lang:"cs", type:"domain", target:"seznam.cz"})
6. 경쟁사 트렌드:
"seznam.cz와 idnes.cz의 트래픽 추세 비교" →
marketing_miner_get_website_stats_range({lang:"cs", type:"domain", target:"seznam.cz", period:"monthly", competitors:["idnes.cz"]})
지원 시장
cs, sk, pl, hu, ro, gb, us
아키텍처
Node 18+, TypeScript (strict), ESM
MCP SDK
^1.18(McpServer.registerTool, Zod 입력 + 출력 스키마, 도구 주석)Streamable HTTP (요청별 상태 비저장 전송) + stdio
.strict()를 사용한 Zod 런타임 검증 (알 수 없는 키 거부)모든 도구에
structuredContent+outputSchema적용마크다운(25k 문자) 및 대용량
structuredContent배열에 대한 응답 잘림 처리선택적 DNS 리바인딩 보호 (루프백에 바인딩된 경우
Origin헤더 검증)
라이선스
MIT
Available Tools
5 toolsmarketing_miner_batch_search_volumeBatch Keyword Search VolumeARead-onlyIdempotentInspect
Fetch volume, CPC, YoY change and 12-month seasonality for up to 1000 keywords in one POST request.
Args:
lang: Market code (cs/sk/pl/hu/ro/gb/us).
keywords: 1-1000 keywords (each 2-80 chars).
response_format: 'markdown' (default) or 'json'.
Returns an array of records, one per keyword. Prefer this over calling marketing_miner_get_search_volume in a loop - it is one API credit per keyword and much faster.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | Yes | Language/market code. 'gb' = United Kingdom, 'us' = United States. | |
| keywords | Yes | 1-1000 keywords. Each 2-80 chars. | |
| response_format | No | Output format. 'markdown' for human reading, 'json' for structured processing. | markdown |
Output Schema
| Name | Required | Description |
|---|---|---|
| lang | Yes | |
| count | Yes | |
| keywords | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark readOnly and idempotent. The description adds that it is a POST request (non-modifying query), returns an array of records, and mentions API credit cost and speed, which are useful beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three brief paragraphs with clear sections: purpose, args, and return/guidance. No unnecessary words; efficient and well-organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given simple inputs, existence of output schema, and annotations covering safety, the description fully addresses purpose, parameters, output, and usage guidance. No obvious gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for all parameters. The description restates most constraints but adds context like response format options and market code examples, adding marginal value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches volume, CPC, YoY change, and seasonality for up to 1000 keywords via POST. It distinguishes from the sibling 'marketing_miner_get_search_volume' by explicitly recommending batch over looping.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises to use this tool over calling the singular version in a loop, citing cost and speed. Provides key usage constraints (up to 1000 keywords, 2-80 chars, market codes) and formats.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
marketing_miner_get_keyword_suggestionsGet Keyword SuggestionsARead-onlyIdempotentInspect
Retrieve related keyword suggestions with optional full metrics (difficulty, SERP features, volume, CPC, seasonality).
Args:
lang: Market code (cs/sk/pl/hu/ro/gb/us).
keyword: Seed keyword (2-80 chars).
suggestions_type (optional): 'questions' | 'new' | 'trending'. Omit for a general mix.
with_keyword_data (default true): include search_volume, cpc, difficulty, serp_features, yoy_change, peak_month, monthly_sv.
limit (default 50, max 1000): client-side window size.
offset (default 0): client-side offset into API results for pagination.
response_format: 'markdown' or 'json'.
Returns: keywords[limit], plus total_available, has_more, next_offset for pagination.
Use for topical research, content-cluster ideation, FAQ mining (suggestions_type='questions'), trend discovery (suggestions_type='trending').
| Name | Required | Description | Default |
|---|---|---|---|
| lang | Yes | Language/market code. 'gb' = United Kingdom, 'us' = United States. | |
| keyword | Yes | Keyword to analyze (2-80 chars). | |
| suggestions_type | No | Filter suggestions: 'questions' (question-style), 'new' (newly appearing), 'trending' (gaining traffic). | |
| with_keyword_data | No | Include difficulty, SERP features and volume metrics for each suggestion. | |
| limit | No | Maximum suggestions to return (client-side window over API payload). | |
| offset | No | Client-side offset into the full API response. Use with limit to paginate. | |
| response_format | No | Output format. 'markdown' for human reading, 'json' for structured processing. | markdown |
Output Schema
| Name | Required | Description |
|---|---|---|
| lang | Yes | |
| seed_keyword | Yes | |
| suggestions_type | Yes | |
| total_available | Yes | |
| returned | Yes | |
| offset | Yes | |
| has_more | Yes | |
| next_offset | Yes | |
| export_credits_cost | Yes | |
| keywords | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds significant behavioral context beyond the annotations: it explains pagination (limit/offset), the effect of with_keyword_data, return fields (total_available, has_more, next_offset), and the 'Omit for a general mix' for suggestions_type. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concisely structured with a main sentence followed by bullet points for arguments and return. Every sentence adds value; no extraneous words. The purpose is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (7 params, 2 required), high schema coverage, and presence of annotations and output description, the description is complete. It covers input semantics, output structure, and pagination, leaving no major gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but the description adds crucial semantics beyond the schema: it clarifies 'client-side window size' for limit, 'client-side offset into API results' for offset, the default behavior of with_keyword_data, and what 'Omit' means for suggestions_type. This provides valuable insight for proper invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's verb ('Retrieve'), resource ('related keyword suggestions'), and optional metrics. It explicitly lists specific use cases (topical research, FAQ mining, trend discovery) that distinguish it from sibling tools focused on search volume and website stats.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit use cases for the tool (e.g., 'Use for topical research, content-cluster ideation, FAQ mining'). While it does not explicitly state when not to use or name alternatives, the context signals (sibling tools) and the clear use cases give adequate guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
marketing_miner_get_search_volumeGet Keyword Search VolumeARead-onlyIdempotentInspect
Fetch monthly search volume, CPC, year-over-year change, peak month and full 12-month seasonality for a single keyword.
Args:
lang: Market code (cs/sk/pl/hu/ro/gb/us).
keyword: Keyword to analyze (2-80 chars).
response_format: 'markdown' (default) or 'json'.
Returns a single record with: keyword, search_volume, cpc{value, currency_code}, yoy_change, peak_month, monthly_sv (12 months).
Use when you need volume/CPC/seasonality for ONE keyword. For multiple keywords, use marketing_miner_batch_search_volume.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | Yes | Language/market code. 'gb' = United Kingdom, 'us' = United States. | |
| keyword | Yes | Keyword to analyze (2-80 chars). | |
| response_format | No | Output format. 'markdown' for human reading, 'json' for structured processing. | markdown |
Output Schema
| Name | Required | Description |
|---|---|---|
| keyword | Yes | |
| search_volume | Yes | |
| cpc | Yes | |
| yoy_change | Yes | |
| peak_month | Yes | |
| monthly_sv | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already provide readOnlyHint, idempotentHint, openWorldHint. The description adds details on return fields and output format, which is useful but does not contradict annotations. It could mention rate limits or auth, but not required given read-only nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: three sentences covering purpose, arguments, return structure, and usage guidance. No fluff, front-loaded with the main action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 3 parameters with schema coverage 100% and an output schema exists. The description covers all necessary information: what it does, parameters, return fields, and when to use it versus siblings. It is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with well-described parameters. The description adds value by explaining the purpose of response_format (human reading vs structured processing) and listing market codes explicitly. It also clarifies keyword length constraints, though schema already has them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it fetches monthly search volume, CPC, year-over-year change, peak month, and seasonality for a single keyword. It uses a specific verb ('Fetch') and resource ('search volume' for a keyword), and distinguishes from the sibling batch tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says 'Use when you need volume/CPC/seasonality for ONE keyword. For multiple keywords, use marketing_miner_batch_search_volume.' This provides clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
marketing_miner_get_website_statsGet Website StatsARead-onlyIdempotentInspect
Aggregate organic/paid traffic, keyword counts and result-type breakdown for a domain, subdomain, prefix, or exact URL.
Args:
lang: Market code (cs/sk/pl/hu/ro/gb/us).
type: 'domain' | 'subdomain' | 'prefix' | 'exact'.
target: Target value (3-253 chars). Examples: 'seznam.cz', 'blog.seznam.cz', 'https://seznam.cz/email/'.
scheme (optional, for type='exact' or 'prefix'): 'https' | 'http'.
response_format: 'markdown' or 'json'.
Returns: stats[] per result_type (organic, paid, ai_overviews, local_pack, images, videos, ...), plus totals (estimated_traffic_sum, number_of_keywords_sum).
Use for competitor sizing, SEO audits, and SERP-feature distribution analysis.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | Yes | Language/market code. 'gb' = United Kingdom, 'us' = United States. | |
| type | Yes | Target granularity: 'domain' (example.com), 'subdomain' (blog.example.com), 'prefix' (URL prefix), 'exact' (exact URL). | |
| target | Yes | Target value (domain, subdomain, or URL, 3-253 chars). | |
| scheme | No | URL scheme. Only relevant for type='exact' or 'prefix'. | |
| response_format | No | Output format. 'markdown' for human reading, 'json' for structured processing. | markdown |
Output Schema
| Name | Required | Description |
|---|---|---|
| stats | Yes | |
| estimated_traffic_sum | Yes | |
| estimated_traffic_change_sum | Yes | |
| number_of_keywords_sum | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds context on the output structure: 'stats[] per result_type (organic, paid, ai_overviews, ...) plus totals.' This goes beyond the annotations, providing useful behavioral insight. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (four sentences) with front-loaded summary. It uses a clean 'Args' block for parameter details. Every sentence earns its place, no redundancy. Structured format aids quick parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the output schema exists, the description adequately explains the return values (stats per result type plus totals). All parameters are explained with examples. The tool's complexity is moderate, and the description covers all necessary information for an agent to use effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 5 parameters with descriptions (100% coverage). The description adds value by providing concrete examples for 'target' (e.g., 'seznam.cz') and clarifies the usage of 'scheme' parameter. This enhances understanding beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it aggregates organic/paid traffic, keyword counts, and result-type breakdown for various URL granularities. It explicitly names the resource ('website stats') and the verb ('aggregate'). Sibling tools like batch search volume and keyword suggestions are distinct, so no confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit use cases: 'competitor sizing, SEO audits, and SERP-feature distribution analysis.' This gives clear context on when to use the tool. However, it does not explicitly state when not to use it or mention alternatives, but the use cases are sufficient for differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
marketing_miner_get_website_stats_rangeGet Website Stats Time RangeARead-onlyIdempotentInspect
Historical traffic time series (daily/weekly/monthly) for a target, with optional competitor comparison.
Args:
lang: Market code.
type: 'domain' | 'subdomain' | 'prefix' | 'exact'.
target: 3-253 chars.
scheme (optional): 'https' | 'http'.
period (optional): 'daily' | 'weekly' | 'monthly'.
competitors (optional, max 10): list of competitor domains/URLs.
response_format: 'markdown' or 'json'.
Returns: stats_range[] (date, result_type, estimated_traffic) + optional competitors[] with their own stats_range. Use for trend analysis, year-over-year charts, and competitor benchmarking.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | Yes | Language/market code. 'gb' = United Kingdom, 'us' = United States. | |
| type | Yes | Target granularity: domain / subdomain / prefix / exact. | |
| target | Yes | Target value (3-253 chars). | |
| scheme | No | ||
| period | No | Aggregation period for the time series. | |
| competitors | No | Up to 10 competitor domains/URLs. Each competitor uses the same 'type' as the primary target (e.g. if type='domain', pass bare domains). | |
| response_format | No | Output format. 'markdown' for human reading, 'json' for structured processing. | markdown |
Output Schema
| Name | Required | Description |
|---|---|---|
| stats_range | Yes | |
| competitors | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint, and openWorldHint. The description adds behavioral details beyond these, such as the output structure (stats_range[] with date, result_type, estimated_traffic, and optional competitors), the maximum of 10 competitors, and the response format options. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with clear sections for Args and Returns. It is front-loaded with the core purpose and every sentence is necessary. No fluff or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (7 parameters, optional output schema), the description is complete. It explains the purpose, each parameter's role (with additional context for competitors), the return structure, and typical use cases. The presence of an output schema reduces the need to detail return values, but the description still provides a useful summary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is high (86%), but the description adds meaningful context: it clarifies that competitors use the same 'type' as the primary target, and it explains the output structure. The schema already documents most parameters well, so the description provides incremental value without redundancy.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides 'Historical traffic time series (daily/weekly/monthly) for a target, with optional competitor comparison.' It uses a specific verb ('get') and resource ('time range'), differentiating it from sibling tools like 'get_website_stats' (likely single-point) and others.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states 'Use for trend analysis, year-over-year charts, and competitor benchmarking.' While it doesn't explicitly state when not to use this tool, the context implies it's for time-range data, distinguishing it from single-point alternatives. No explicit alternative tools are named, but the sibling list is available.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
v3.2.0- First observed
marketing_miner_batch_search_volume - First observed
marketing_miner_get_keyword_suggestions - First observed
marketing_miner_get_search_volume - First observed
marketing_miner_get_website_stats - First observed
marketing_miner_get_website_stats_range
TDQS
Scored across 5 tools
Each tool targets a distinct operation: single vs. batch search volume, keyword suggestions, website stats snapshot vs. historical range. No functional overlap exists.
All tools follow a consistent 'marketing_miner_<action>_<resource>' pattern (e.g., marketing_miner_batch_search_volume, marketing_miner_get_keyword_suggestions). No mixed conventions.
5 tools is well-scoped for a focused SEO data retrieval server, covering keyword research and website analysis without unnecessary bloat.
Covers core workflows: keyword volume (single and batch), suggestions with metrics, website stats (snapshot and historical). Minor gap: no standalone keyword difficulty tool, but difficulty is included in suggestions with_keyword_data.
Maintenance
Related MCP Connectors
Real SEO data for AI assistants: page audits, Keyword Planner volumes, Search Console history.
SEO & marketing toolkit for AI agents: GA4, Search Console, AdSense, GTM, PageSpeed, Trends.
- VibeSEOOAuthdev.vibeseo
SEO research, audits, backlinks, GSC, and content workflow tools for AI agents.
AI-powered SEO and marketing: keyword research, SERP analysis, and content optimization tools.
Related MCP Servers
- AlicenseCqualityDmaintenanceConnects AI assistants to SE Ranking's SEO and project management APIs to enable natural language queries for keyword research, backlink analysis, and technical audits. It supports comprehensive tasks including competitive analysis, domain traffic tracking, and AI search visibility monitoring.100Apache 2.0
- AlicenseAqualityDmaintenanceEnables AI assistants to access SurfRank's AI visibility analytics platform through 24 tools. It allows agents to run AI-visibility reports, research keywords, track competitors, and manage projects directly from chat interfaces.248MIT
- AlicenseNot gradedqualityCmaintenanceConnect Claude, ChatGPT, Cursor, VS Code, or a CLI client to VibeSEO. Then ask for keyword research, audits, backlinks, Search Console trends, and content workflow actions in natural language.2MIT
- AlicenseNot gradedqualityFmaintenanceConnects AI assistants to SEO APIs for backlinks analysis, keyword research, and traffic analysis.628MIT