Skip to main content
Glama

kd-scout

Zero-dependency MCP server for keyword research arithmetic: difficulty estimation, opportunity scoring, and structured content briefs. Runs anywhere Python 3.10+ runs - no packages, no API keys required for the deterministic mode.

Tools

Tool

Input

Output

keyword_difficulty

keywords[]

per-keyword difficulty 0-100

opportunity_score

difficulty, monthly_volume

blended 0-100 score

content_brief

topic

H2 outline, word-count target, FAQs, schema type

Related MCP server: mcp-gsc-advanced

Install

pip install kd-scout
kd-scout            # stdio MCP server

Or point any MCP client at the module directly:

{"command": "kd-scout"}

Production use

The scoring model is derived from the editorial pipeline behind Groundwork's money & tools research, where it screens hundreds of candidate keywords weekly.

License

MIT

Available Tools

3 tools
content_briefA

Generate a structured article brief: H2 outline, word-count target, FAQ suggestions, and schema type recommendation.

ParametersJSON Schema
NameRequiredDescriptionDefault
topicYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

There are no annotations to signal read-only or destructive behavior, so the description carries the burden. It does describe the operation as 'Generate' and specifies the intended output shape, which is helpful, but it does not disclose anything about side effects, cost, idempotency, or whether the call is purely local versus persistent. The lack of those details is not critical here but still leaves some ambiguity.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that front-loads the core action and uses a colon to list deliverables. Every phrase earns its place; there is no filler or tautological repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one string parameter and no output schema, the listed outputs (H2 outline, word-count target, FAQ suggestions, schema type recommendation) give a solid sense of the return shape. It is not exhaustive—'schema type recommendation' is a bit vague and input specifics are minimal—but it is largely adequate for invoking the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema description coverage is 0% and the description never mentions the 'topic' parameter or its constraints. The parameter name 'topic' is self-explanatory at a basic level, but the description adds no semantic guidance about acceptable formats, expected specificity, or whether the brief should be generated around that exact phrase or an expanded theme.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: 'Generate a structured article brief' and enumerates concrete deliverable components (H2 outline, word-count target, FAQ suggestions, schema type recommendation). This clearly differentiates it from sibling tools like keyword_difficulty and opportunity_score, which are about scoring topics rather than producing content briefs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives no explicit guidance about when to choose this tool over its alternatives, and it does not mention any exclusions or prerequisite conditions. The user has to infer that article brief generation is its own scenario, but the text does not actively route an agent toward it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

keyword_difficultyB

Estimate keyword difficulty (0-100) from SERP signal inputs: number of words, presence of brand terms, and commercial intent markers.

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordsYes

TDQS

B3.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explains the scoring range and the concrete signals used (number of words, brand terms, commercial intent markers). However, with no annotations provided, it does not fully carry the behavioral transparency burden: it omits output shape for multiple keywords and what low versus high scores imply.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence that is properly front-loaded with the core action, and every clause adds context. No filler, repetition, or unnecessary qualification.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple single-parameter tool: it gives a clear output range and the key signal inputs. It omits what a returned score represents in each direction and how batches of keywords are returned, leaving the agent with some ambiguity for a batch array input.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema describes only a `keywords` array with 0% field description coverage, so the description must clarify the relationship between the input and the signals. It names signals like brand terms and commercial intent markers but never says these are derived from the `keywords` parameter, potentially implying buyable signals the schema does not support.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear verb ('Estimate') and resource ('keyword difficulty') with an explicit 0-100 output range. The signal list helps clarify what kind of assessment it makes, though it does not explicitly name sibling tools to differentiate them within the description itself.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is given about when to use keyword_difficulty versus opportunity_score or content_brief. There are no conditions, exclusions, or alternative routing cues present in the description.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

opportunity_scoreA

Blend difficulty and monthly volume into a single 0-100 opportunity score (70% inverse difficulty, 30% log volume).

ParametersJSON Schema
NameRequiredDescriptionDefault
difficultyYes
monthly_volumeYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully carries the behavioral transparency burden. It discloses the scoring algorithm, the 0-100 output range, the weighting, and that difficulty is inversely used and volume is log-transformed. This is strong transparency, though input constraints like expected numeric ranges are not stated.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single efficient sentence delivers the purpose, formula, weights, and output range with no filler. The key information is front-loaded and easily parsed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a two-parameter numeric computation, the description is nearly complete, even specifying the output scale. The missing piece is explicit input constraints or edge-case guidance, but the formula is stated clearly enough for correct selection and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema gives only parameter names and number types, with 0% schema description coverage. The tool description compensates by explaining the meaning of both parameters in functional terms: difficulty enters inversely and monthly_volume is log-transformed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action: blending difficulty and monthly volume into a single 0-100 opportunity score. It also specifies the exact weighting formula, which differentiates it from siblings like keyword_difficulty and content_brief.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The tool's own description implies the use case: you want an opportunity score combining difficulty and volume. However, it does not explicitly contrast this with the sibling tools or say when to prefer it over keyword_difficulty.

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.

  1. 3 tool updatesv0.1.0
    • First observedcontent_brief
    • First observedkeyword_difficulty
    • First observedopportunity_score

TDQS

A3.8/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose in the keyword research workflow: difficulty estimation, opportunity scoring, and content brief generation. There is meaningful sequential dependency, but no functional overlap that would confuse an agent.

Naming Consistency5/5

All tool names follow the same lowercase snake_case pattern and describe their output: keyword_difficulty, opportunity_score, content_brief. The naming convention is predictable and easy to extend.

Tool Count5/5

Three tools is perfectly scoped for this server's narrow purpose. Each tool fills a distinct step in the pipeline without redundancy or unnecessary bloat.

Completeness4/5

The set covers the core lifecycle from raw signals through difficulty and opportunity scoring to a content brief, leaving no obvious workflow dead end. It lacks built-in SERP or volume retrieval, but those appear to be external inputs rather than gaps in the server's stated scope.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    A MCP server that turns your scattered SEO and analytics data into one clear verdict per URL. Plug it into Claude, Cursor, or any MCP-aware client and ask: "Which three posts should I update this week?" - and get an answer backed by hard numbers.
    8
    103 npm
    2
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    MCP server for advanced Google Search Console analysis — keyword cannibalization detection, page-level query deep dive, and rank change tracking.
    3
    -
  • A
    license
    B
    quality
    D
    maintenance
    MCP server & CLI for keyword research, domain analytics, backlinks, traffic analysis, and competitive intelligence using Semrush API data.
    77
    37 npm
    39
    MIT
  • F
    license
    C
    quality
    C
    maintenance
    Standalone MCP server for the Mangools API with 82 tools covering keyword research, SERP analysis, rank tracking, backlinks, competitor research, and AI search visibility. Enables natural language interaction with Mangools SEO capabilities.
    82
    -