Marketing Miner MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Marketing Miner MCPget search volume for 'digital marketing' in the US"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Marketing Miner MCP Server
MCP server for the Marketing Miner Profilers API. Connects Claude, Cursor, Windsurf and other MCP clients to Marketing Miner keyword research and website analytics.
Available tools
Tool | Endpoint | Description |
|
| Search volume + CPC + YoY + seasonality for a single keyword |
|
| Batch processing of 1–1000 keywords |
|
| Keyword suggestions (questions / new / trending) with difficulty and SERP features. Supports |
|
| Estimated traffic, keyword count, breakdown by result_type |
|
| Historical traffic trend + competitor comparison |
Every tool returns markdown (default, human-readable) or json (response_format: "json"), plus structuredContent with all API fields. Each tool declares an outputSchema for client-side validation.
Installation
Get an API token from marketingminer.com/en/features/api, then pick one of the options below.
Option A — Claude Code CLI one-liner (recommended, cross-platform)
Works on macOS, Windows and Linux — Claude Code CLI handles the config file location for you.
claude mcp add marketing-miner \
-s user \
-e MARKETING_MINER_API_TOKEN=YOUR_TOKEN \
-- npx -y github:lukaskostka/marketing-miner-mcp-s user→ installs globally (available from any project)-e→ sets the API token as environment variableReplace
YOUR_TOKENwith your actual Marketing Miner API token
To remove later: claude mcp remove marketing-miner -s user.
Option B — npx straight from GitHub (no clone needed)
The repo ships the built dist/ folder, so npx can run it directly.
Claude Desktop / Cursor / Windsurf config:
{
"mcpServers": {
"marketing-miner": {
"command": "npx",
"args": ["-y", "github:lukaskostka/marketing-miner-mcp"],
"env": {
"MCP_TRANSPORT": "stdio",
"MARKETING_MINER_API_TOKEN": "your_token_here"
}
}
}
}Option C — clone the repo (for development / customization)
git clone https://github.com/lukaskostka/marketing-miner-mcp.git
cd marketing-miner-mcp
npm install
npm run buildThen point your MCP client at the built binary:
{
"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"
}
}
}
}Run locally with MARKETING_MINER_API_TOKEN=xxx npm start (stdio, default) or MCP_TRANSPORT=http MARKETING_MINER_API_TOKEN=xxx npm start (Streamable HTTP on port 8000).
Option D — Docker (self-hosted 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-mcpConnect from a remote client via Streamable HTTP URL (see Connecting from an MCP client below).
Configuration
Variable | Default | Description |
| — | Required. API token from marketingminer.com/en/features/api |
|
|
|
|
| HTTP bind host |
|
| HTTP port |
|
| HTTP path |
Alternative token names: MARKETING_MINER_API_KEY, MARKETING_MINER_TOKEN, MM_API_TOKEN, MM_API_KEY.
Remote HTTP client config
If you are running the server over Streamable HTTP (Option D above or any remote host), MCP clients connect via URL only:
{
"mcpServers": {
"marketing-miner": {
"url": "https://your-host.example.com/mcp"
}
}
}Usage examples
1. Search volume for a single keyword:
"What is the search volume and seasonality of
marketingin CZ?" →marketing_miner_get_search_volume({lang:"cs", keyword:"marketing"})
2. Batch processing:
"Compare search volume of SEO terms" →
marketing_miner_batch_search_volume({lang:"cs", keywords:["seo","ppc","google ads","content marketing"]})
3. Question research for FAQ:
"Find questions around
hypoteka" →marketing_miner_get_keyword_suggestions({lang:"cs", keyword:"hypoteka", suggestions_type:"questions", limit:50})
4. Paginating suggestions:
Fetch next page →
marketing_miner_get_keyword_suggestions({lang:"cs", keyword:"hypoteka", limit:50, offset:50})
5. Competitor analysis:
"How much traffic does seznam.cz get?" →
marketing_miner_get_website_stats({lang:"cs", type:"domain", target:"seznam.cz"})
6. Competitor trends:
"Compare traffic trends of seznam.cz vs. idnes.cz" →
marketing_miner_get_website_stats_range({lang:"cs", type:"domain", target:"seznam.cz", period:"monthly", competitors:["idnes.cz"]})
Supported markets
cs, sk, pl, hu, ro, gb, us
Architecture
Node 18+, TypeScript (strict), ESM
MCP SDK
^1.18(McpServer.registerTool, Zod input + output schemas, tool annotations)Streamable HTTP (stateless per-request transport) + stdio
Zod runtime validation with
.strict()(rejects unknown keys)structuredContent+outputSchemaon every toolResponse truncation for both markdown (25k chars) and oversized
structuredContentarraysOptional DNS-rebinding protection (
Originheader validation when bound to loopback)
License
MIT
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/lukaskostka99/marketing-miner-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server