metehan777

Semrush MCP Server

Community metehan777
Updated

Semrush MCP server

Semrush MCP Server

An MCP (Model Context Protocol) server that provides access to Semrush API functionality for AI assistants.

Features

  • Domain Overview: Get comprehensive domain analytics including organic traffic, keywords, and authority score
  • Keyword Research: Analyze keyword metrics including search volume, difficulty, and CPC
  • Organic Search Analysis: Retrieve organic search keywords and rankings for any domain
  • Paid Search Analysis: Get Google Ads keywords and PPC data for domains
  • Backlinks Overview: Get backlink metrics and analysis for domains or specific URLs
  • Competitor Research: Identify and analyze organic competitors
  • Related Keywords: Discover related keywords and search suggestions

Prerequisites

Installation

  1. Clone this repository or create a new directory:
mkdir semrush-mcp
cd semrush-mcp
  1. Create the following directory structure:
semrush-mcp/
├── src/
│   └── index.ts
├── package.json
├── tsconfig.json
├── .env.example
├── .gitignore
└── README.md
  1. Save the provided files in their respective locations

Then manually:

npm install
npm run build

Configuration

Set your Semrush API key as an environment variable:

export SEMRUSH_API_KEY="your-api-key-here"

Or create a .env file:

SEMRUSH_API_KEY=your-api-key-here

Usage with Claude Desktop

Add the server to your Claude Desktop configuration file (claude_desktop_config.json):

{
  "mcpServers": {
    "semrush": {
      "command": "node",
      "args": ["/path/to/semrush-mcp-server/dist/index.js"],
      "env": {
        "SEMRUSH_API_KEY": "your-api-key-here"
      }
    }
  }
}

Available Tools

1. domain_overview

Get comprehensive domain analytics.

Parameters:

  • domain (required): Domain to analyze (e.g., "example.com")
  • database (optional): Database code (default: "us")

2. keyword_overview

Get keyword metrics and data.

Parameters:

  • phrase (required): Keyword phrase to analyze
  • database (optional): Database code (default: "us")

3. domain_organic_search

Get organic search keywords for a domain.

Parameters:

  • domain (required): Domain to analyze
  • database (optional): Database code (default: "us")
  • limit (optional): Number of results (default: 10)
  • offset (optional): Offset for pagination (default: 0)

4. backlinks_overview

Get backlinks overview for a domain or URL.

Parameters:

  • target (required): Domain or URL to analyze
  • target_type (optional): "domain" or "url" (default: "domain")

5. competitor_research

Find organic competitors for a domain.

Parameters:

  • domain (required): Domain to analyze
  • database (optional): Database code (default: "us")
  • limit (optional): Number of competitors (default: 10)

6. domain_adwords

Get paid search (Google Ads) keywords for a domain.

Parameters:

  • domain (required): Domain to analyze
  • database (optional): Database code (default: "us")
  • limit (optional): Number of results (default: 10)

7. related_keywords

Get related keywords and suggestions for a seed keyword.

Parameters:

  • phrase (required): Seed keyword phrase
  • database (optional): Database code (default: "us")
  • limit (optional): Number of results (default: 10)

Database Codes

Common database codes for different regions:

  • us - United States
  • uk - United Kingdom
  • ca - Canada
  • au - Australia
  • de - Germany
  • fr - France
  • es - Spain
  • it - Italy
  • br - Brazil
  • in - India

Development

To run the server in development mode:

npm run dev

Example Usage in Claude

Once configured, you can use natural language to access Semrush data:

  • "Analyze the domain example.com using Semrush"
  • "What's the search volume for 'digital marketing' keyword?"
  • "Show me the top organic keywords for techcrunch.com"
  • "Find competitors for shopify.com"
  • "Get backlink data for https://metehan.ai/blog/semrush-mcp/"
  • "What related keywords can you find for 'content marketing'?"
  • "Show me the Google Ads keywords that amazon.com is bidding on"

Troubleshooting

  1. API Key Issues: Ensure your SEMRUSH_API_KEY environment variable is set correctly
  2. Rate Limits: Semrush API has rate limits. Check your plan's limits
  3. Database Codes: Make sure you're using valid database codes for your target regions

License

MIT

MCP Server · Populars

MCP Server · New

    t8y2

    dbx

    20 MB lightweight cross-platform database client for 70+ databases, including MySQL, PostgreSQL, SQLite, Redis, MongoDB, DuckDB, SQL Server, and Dameng. Built-in AI, MCP Server, CLI, desktop and Docker. | 轻量级跨平台数据库管理工具,支持 MySQL、PostgreSQL、SQLite、Redis、MongoDB、达梦等 70+ 数据库,提供桌面端、Docker、CLI、内置 AI 助手和 MCP Server。

    Community t8y2
    alxgntv

    Substack API MCP

    MCP server for Substack posts (FastMCP + substack-api-client)

    Community alxgntv
    max-ramas

    🧠 RMS Memory MCP

    Persistent, local, cross-IDE memory for AI agents — markdown source of truth, LanceDB-powered semantic search, zero cloud dependency

    Community max-ramas
    Sam-AEC

    AEC Model Bridge

    Independent Revit MCP ( Model Context Protocol integration for Revit software ).

    Community Sam-AEC
    TheAlgorithms

    The Algorithms - Dart

    All Algorithms implemented in Dart

    Community TheAlgorithms