> **Building with AI coding agents?** Install the authstack plugin with one command. This equips your agent with accurate Scalekit implementation patterns.
>
> **Recommended** (the `-y` flags skip prompts, so the command runs without an interactive terminal):
> ```bash
> npx -y @scalekit-inc/cli setup -y
> ```
>
> Global:
> ```bash
> npm install -g @scalekit-inc/cli
> scalekit setup -y
> ```
>
> Supports Claude Code, Cursor, GitHub Copilot, Codex + skills for other Agent Skills-compatible agents in `~/.agents/skills`.
> Skills: integrate-agentkit, implement-saaskit, add-mcp-oauth, implement-sso, implement-scim.
> [Full setup guide](https://docs.scalekit.com/dev-kit/build-with-ai/)

---

# Connect AI agents to the Ahrefs MCP server

The Ahrefs MCP connector routes your AI agent's tool calls to Ahrefs's own MCP server through Scalekit. Each user signs in to Ahrefs once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 134 tools.

**Authentication:** OAuth 2.1/DCR
**Categories:** Marketing, CRM & Sales
**Tools:** 134: 134 read, 0 write, 0 destructive
**Users sign in with:** OAuth
**OAuth app:** Scalekit's or your own
**Built by:** Vendor MCP
**Try it:** [Playground in the Scalekit dashboard](https://app.scalekit.com/ws/signup?sk_intent=playground&provider=AHREFSMCP)

## What you can do

- **Analyze backlinks**: retrieve backlink profiles, referring domains, anchors, and broken links for any URL or domain
- **Research keywords**: get keyword ideas, search volume, difficulty scores, SERP overviews, and ranking history
- **Explore site data**: fetch organic and paid traffic estimates, top pages, and outlinks for any domain
- **Track rankings**: monitor keyword positions across countries and devices over time
- **Audit sites**: run crawls to surface broken pages, redirect chains, and on-page SEO issues
- **Analyze web analytics**: retrieve traffic stats, top pages, UTM breakdowns, and traffic sources for Web Analytics projects

## Setup

1. ### Install the SDK

   **Node.js**

   ```bash
   npm install @scalekit-sdk/node dotenv
   ```

   **Python**

   ```bash
   pip install scalekit-sdk-python python-dotenv
   ```

2. ### Set your credentials

   Add your Scalekit credentials to your `.env` file. Find values in **[app.scalekit.com](https://app.scalekit.com)** > **Developers** > **API Credentials**.

   ```sh title=".env"
   SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
   SCALEKIT_CLIENT_ID=<your-client-id>
   SCALEKIT_CLIENT_SECRET=<your-client-secret>
   ```

3. ### Create the Ahrefs MCP connection

   In **AgentKit > Connections**, create an Ahrefs MCP connection. The name you give it is the `connection_name` your code passes. See [Configure connections](/agentkit/connections/).

   Scalekit credentials are available for Ahrefs MCP server, so you don't need to register an OAuth app.

4. ### Authorize a user and make your first call

   **Node.js** (`quickstart.mts`)

   ```typescript
   import { ScalekitClient } from '@scalekit-sdk/node'
   import 'dotenv/config'
   import { createInterface } from 'node:readline/promises'

   const scalekit = new ScalekitClient(
     process.env.SCALEKIT_ENVIRONMENT_URL,
     process.env.SCALEKIT_CLIENT_ID,
     process.env.SCALEKIT_CLIENT_SECRET,
   )
   const actions = scalekit.actions

   const connector = 'ahrefsmcp'
   const identifier = 'user_123'

   // Generate an authorization link for the user
   const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
   console.log('Authorize Ahrefs MCP:', link)
   const rl = createInterface({ input: process.stdin, output: process.stdout })
   await rl.question('Press Enter after authorizing...')
   rl.close()

   // Make your first call
   const result = await actions.executeTool({
     connector,
     identifier,
     toolName: 'ahrefsmcp_management_brand_radar_reports',
     toolInput: {},
   })
   console.log(result)
   ```

   ```bash
   npx tsx quickstart.mts
   ```

   **Python** (`quickstart.py`)

   ```python
   import os
   from scalekit import ScalekitClient
   from dotenv import load_dotenv
   load_dotenv()

   scalekit_client = ScalekitClient(
       env_url=os.getenv("SCALEKIT_ENVIRONMENT_URL"),
       client_id=os.getenv("SCALEKIT_CLIENT_ID"),
       client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),
   )
   actions = scalekit_client.actions

   connection_name = "ahrefsmcp"
   identifier = "user_123"

   # Generate an authorization link for the user
   link_response = actions.get_authorization_link(
       connection_name=connection_name,
       identifier=identifier,
   )
   print("Authorize Ahrefs MCP:", link_response.link)
   input("Press Enter after authorizing...")

   # Make your first call
   result = actions.execute_tool(
       tool_input={},
       tool_name="ahrefsmcp_management_brand_radar_reports",
       connection_name=connection_name,
       identifier=identifier,
   )
   print(result)
   ```

   ```bash
   python quickstart.py
   ```

   Each user signs in once. See [Authorize a user](/agentkit/tools/authorize/) for the full flow and statuses.

## Tools

Pass the exact name to `execute_tool`, with an input like each tool's example. To ask for a tool that's missing, use the [request form](https://scalekitsupport.portal.usepylon.com/forms/request-a-connector-tool).

**Node.js**

```typescript
const result = await actions.executeTool({
  toolName: 'ahrefsmcp_batch_analysis',
  toolInput: {
    select: [],
    targets: [],
  },
  connector: 'ahrefsmcp',
  identifier: 'user_123',
})
```

**Python**

```python
result = actions.execute_tool(
    tool_name="ahrefsmcp_batch_analysis",
    tool_input={
        "select": [],
        "targets": [],
    },
    connection_name="ahrefsmcp",
    identifier="user_123",
)
```

`result.data` is the app's response as JSON, and `result.execution_id` (`executionId` in Node.js) is the ID of the call.

### `ahrefsmcp_batch_analysis`

Batch Analysis · Read-only

Performs a batch analysis of multiple URLs, domains, or subdomains to retrieve selected SEO, backlink, organic, and paid traffic metrics.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`array`, required): Comma-separated list of fields to include in the response.
- `targets` (`array`, required): No description.
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `order_by` (`array`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.

Example input: `{"select":[],"targets":[]}`

### `ahrefsmcp_brand_radar_ai_responses`

Brand Radar Ai Responses · Read-only

Retrieve questions asked to AI assistants and the AI-generated responses that mention your brand or competitors, including cited sources and search volume estimates.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`string`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `brand` (`string`, optional): Your brand domain to track (e.g. `ahrefs.com`).
- `competitors` (`string`, optional): Comma-separated list of competitor domains.
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `market` (`string`, optional): Market or country code for brand radar data.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":"google_ai_overview","select":"<select>"}`

### `ahrefsmcp_brand_radar_ai_responses_entities`

Brand Radar Ai Responses Entities · Read-only

Retrieve questions asked to AI assistants and the AI-generated responses that mention your brand or competitors, with entity-based inputs for more precise brand matching.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`array`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `select` (`array`, required): Comma-separated list of fields to include in the response.
- `brand_filter` (`object`, optional): Filter object to restrict results to a specific brand or competitor entity, using the same structure as the `brands` and `competitors` fields.
- `brands` (`array`, optional): Array of brand domains to track.
- `competitors` (`array`, optional): Comma-separated list of competitor domains.
- `country` (`array`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `market` (`array`, optional): Market or country code for brand radar data.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tags_filter` (`object`, optional): No description.
- `volume_range` (`object`, optional): Filter results to items whose associated search volume falls within a numeric range. Provide optional `from` and/or `to` bounds.
- `where` (`object`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":[],"select":[]}`

### `ahrefsmcp_brand_radar_citations_history_entities`

Brand Radar Citations History Entities · Read-only

Provides the historical number of citations for your and competitors' brand URLs in an LLM you specify. Every entity provided in `brands` (and `competitors`, when applicable) must include at least one value in `url_groups`; entities consisting only of `names` are not supported here because citations are matched against URL groups. Prefer this tool over the non-entities variant, since you can more accurately describe brands/competitors with multiple names and/or websites.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`array`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `brands` (`array`, optional): Array of brand domains to track.
- `country` (`array`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `market` (`array`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tags_filter` (`object`, optional): No description.
- `where` (`object`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":[],"date_from":"<date_from>"}`

### `ahrefsmcp_brand_radar_citations_overview_entities`

Brand Radar Citations Overview Entities · Read-only

Provides the number of citations for your and competitors' brands in an LLM you specify, with filters for locations, query text, URL, and more. Every entity provided in `brands` (and `competitors`, when applicable) must include at least one value in `url_groups`; entities consisting only of `names` are not supported here because citations are matched against URL groups. Prefer this tool over the non-entities variant, since you can more accurately describe brands/competitors with multiple names and/or websites.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`array`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `select` (`array`, required): Comma-separated list of fields to include in the response.
- `brands` (`array`, optional): Array of brand domains to track.
- `competitors` (`array`, optional): Comma-separated list of competitor domains.
- `country` (`array`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `market` (`array`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tags_filter` (`object`, optional): No description.
- `where` (`object`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":[],"select":[]}`

### `ahrefsmcp_brand_radar_cited_domains`

Brand Radar Cited Domains · Read-only

Retrieve domains cited in AI-generated responses that mention your brand or competitors in a specified LLM, with response counts and estimated monthly search volume.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`string`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `brand` (`string`, optional): Your brand domain to track (e.g. `ahrefs.com`).
- `competitors` (`string`, optional): Comma-separated list of competitor domains.
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `market` (`string`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":"google_ai_overview","select":"<select>"}`

### `ahrefsmcp_brand_radar_cited_domains_entities`

Brand Radar Cited Domains Entities · Read-only

Retrieve domains cited in AI-generated responses mentioning your brand or competitors in a specified LLM, using entity-based inputs for more precise brand matching.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`array`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `select` (`array`, required): Comma-separated list of fields to include in the response.
- `brand_filter` (`object`, optional): Filter object to restrict results to a specific brand or competitor entity, using the same structure as the `brands` and `competitors` fields.
- `brands` (`array`, optional): Array of brand domains to track.
- `competitors` (`array`, optional): Comma-separated list of competitor domains.
- `country` (`array`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `market` (`array`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tags_filter` (`object`, optional): No description.
- `volume_range` (`object`, optional): Filter results to items whose associated search volume falls within a numeric range. Provide optional `from` and/or `to` bounds.
- `where` (`object`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":[],"select":[]}`

### `ahrefsmcp_brand_radar_cited_pages`

Brand Radar Cited Pages · Read-only

Retrieve pages cited in AI-generated responses that mention your brand or competitors in a specified LLM, with response counts and estimated monthly search volume.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`string`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `brand` (`string`, optional): Your brand domain to track (e.g. `ahrefs.com`).
- `competitors` (`string`, optional): Comma-separated list of competitor domains.
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `market` (`string`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tracked_urls` (`string`, optional): No description.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":"google_ai_overview","select":"<select>"}`

### `ahrefsmcp_brand_radar_cited_pages_entities`

Brand Radar Cited Pages Entities · Read-only

Retrieve pages cited in AI-generated responses mentioning your brand or competitors in a specified LLM, using entity-based inputs for more precise brand matching.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`array`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `select` (`array`, required): Comma-separated list of fields to include in the response.
- `brand_filter` (`object`, optional): Filter object to restrict results to a specific brand or competitor entity, using the same structure as the `brands` and `competitors` fields.
- `brands` (`array`, optional): Array of brand domains to track.
- `competitors` (`array`, optional): Comma-separated list of competitor domains.
- `country` (`array`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `market` (`array`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tags_filter` (`object`, optional): No description.
- `tracked_urls` (`array`, optional): No description.
- `volume_range` (`object`, optional): Filter results to items whose associated search volume falls within a numeric range. Provide optional `from` and/or `to` bounds.
- `where` (`object`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":[],"select":[]}`

### `ahrefsmcp_brand_radar_impressions_history`

Brand Radar Impressions History · Read-only

Provides the historical number of impressions for your and competitors's brands in an LLM you specify. Prefer using the equivalent 'brand-radar-impressions-history-entities' tool since the inputs are more descriptive.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `brand` (`string`, required): Your brand domain to track (e.g. `ahrefs.com`).
- `data_source` (`string`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `market` (`string`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"brand":"ahrefs.com","data_source":"google_ai_overview","date_from":"<date_from>"}`

### `ahrefsmcp_brand_radar_impressions_history_entities`

Brand Radar Impressions History Entities · Read-only

Retrieve the historical number of impressions for your and competitors’ brands in a specified LLM, using entity-based inputs for more precise brand matching.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`array`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `brands` (`array`, optional): Array of brand domains to track.
- `country` (`array`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `market` (`array`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tags_filter` (`object`, optional): No description.
- `where` (`object`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":[],"date_from":"<date_from>"}`

### `ahrefsmcp_brand_radar_impressions_overview`

Brand Radar Impressions Overview · Read-only

Retrieve the number of impressions for your and competitors’ brands in a specified LLM, with filters for location, query text, URL, and more.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`string`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `brand` (`string`, optional): Your brand domain to track (e.g. `ahrefs.com`).
- `competitors` (`string`, optional): Comma-separated list of competitor domains.
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `market` (`string`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":"google_ai_overview","select":"<select>"}`

### `ahrefsmcp_brand_radar_impressions_overview_entities`

Brand Radar Impressions Overview Entities · Read-only

Retrieve impression counts for your and competitors’ brands in a specified LLM, using entity-based inputs and filters for location, query text, and URL.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`array`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `select` (`array`, required): Comma-separated list of fields to include in the response.
- `brands` (`array`, optional): Array of brand domains to track.
- `competitors` (`array`, optional): Comma-separated list of competitor domains.
- `country` (`array`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `market` (`array`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tags_filter` (`object`, optional): No description.
- `where` (`object`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":[],"select":[]}`

### `ahrefsmcp_brand_radar_mentions_history`

Brand Radar Mentions History · Read-only

Provides the historical number of mentions for your and competitors's brands in an LLM you specify. Prefer using the equivalent 'brand-radar-mentions-history-entities' tool since the inputs are more descriptive.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `brand` (`string`, required): Your brand domain to track (e.g. `ahrefs.com`).
- `data_source` (`string`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `market` (`string`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"brand":"ahrefs.com","data_source":"google_ai_overview","date_from":"<date_from>"}`

### `ahrefsmcp_brand_radar_mentions_history_entities`

Brand Radar Mentions History Entities · Read-only

Retrieve the historical number of mentions for your and competitors’ brands in a specified LLM, using entity-based inputs for more precise brand matching.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`array`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `brands` (`array`, optional): Array of brand domains to track.
- `country` (`array`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `market` (`array`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tags_filter` (`object`, optional): No description.
- `where` (`object`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":[],"date_from":"<date_from>"}`

### `ahrefsmcp_brand_radar_mentions_overview`

Brand Radar Mentions Overview · Read-only

Retrieve mention counts for your and competitors’ brands in a specified LLM, with filters for location, query text, URL, and more.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`string`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `brand` (`string`, optional): Your brand domain to track (e.g. `ahrefs.com`).
- `competitors` (`string`, optional): Comma-separated list of competitor domains.
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `market` (`string`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":"google_ai_overview","select":"<select>"}`

### `ahrefsmcp_brand_radar_mentions_overview_entities`

Brand Radar Mentions Overview Entities · Read-only

Retrieve mention counts for your and competitors’ brands in a specified LLM, using entity-based inputs and filters for location, query text, and URL.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`array`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `select` (`array`, required): Comma-separated list of fields to include in the response.
- `brands` (`array`, optional): Array of brand domains to track.
- `competitors` (`array`, optional): Comma-separated list of competitor domains.
- `country` (`array`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `market` (`array`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tags_filter` (`object`, optional): No description.
- `where` (`object`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":[],"select":[]}`

### `ahrefsmcp_brand_radar_sov_history`

Brand Radar Sov History · Read-only

Provides the historical share of voice for your and competitors's brands in an LLM you specify. Prefer using the equivalent 'brand-radar-sov-history-entities' tool since the inputs are more descriptive.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`string`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `brand` (`string`, optional): Your brand domain to track (e.g. `ahrefs.com`).
- `competitors` (`string`, optional): Comma-separated list of competitor domains.
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `market` (`string`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":"google_ai_overview","date_from":"<date_from>"}`

### `ahrefsmcp_brand_radar_sov_history_entities`

Brand Radar Sov History Entities · Read-only

Retrieve the historical share of voice for your and competitors’ brands in a specified LLM, using entity-based inputs for more precise brand matching.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`array`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `brands` (`array`, optional): Array of brand domains to track.
- `competitors` (`array`, optional): Comma-separated list of competitor domains.
- `country` (`array`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `market` (`array`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tags_filter` (`object`, optional): No description.
- `where` (`object`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":[],"date_from":"<date_from>"}`

### `ahrefsmcp_brand_radar_sov_overview`

Brand Radar Sov Overview · Read-only

Provides the share of voice for your and competitors's brands in an LLM you specify, with filters for locations, query text, URL, and more. Prefer using the equivalent 'brand-radar-sov-overview-entities' tool since the inputs are more descriptive.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`string`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `brand` (`string`, optional): Your brand domain to track (e.g. `ahrefs.com`).
- `competitors` (`string`, optional): Comma-separated list of competitor domains.
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `market` (`string`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":"google_ai_overview"}`

### `ahrefsmcp_brand_radar_sov_overview_entities`

Brand Radar Sov Overview Entities · Read-only

Retrieve share of voice for your and competitors’ brands in a specified LLM, using entity-based inputs and filters for location, query text, and URL.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `data_source` (`array`, required): AI platform to pull data from (e.g. `google_ai_overview`).
- `brands` (`array`, optional): Array of brand domains to track.
- `competitors` (`array`, optional): Comma-separated list of competitor domains.
- `country` (`array`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `market` (`array`, optional): Market or country code for brand radar data.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `prompts` (`string`, optional): Search prompt or topic to track brand mentions for.
- `report_id` (`string`, optional): ID of the brand radar report to query.
- `search_volume_type` (`string`, optional): Type of search volume to use when calculating brand radar metrics, such as `organic` or `ai_overview` search volume.
- `tags_filter` (`object`, optional): No description.
- `where` (`object`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"data_source":[]}`

### `ahrefsmcp_doc`

Doc · Read-only

Retrieve full OpenAPI documentation for Ahrefs API v3 and the corresponding MCP tools. Use this tool to get the input schema for any other Ahrefs tool.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `tool` (`string`, required): No description. One of: `site-explorer-domain-rating-history`, `brand-radar-cited-domains-entities`, `site-explorer-organic-competitors`, `rank-tracker-overview`, `brand-radar-mentions-history`, `social-media-activity-history`, `site-explorer-crawled-pages`, `brand-radar-impressions-overview`, `web-analytics-source-channels-chart`, `serp-overview`, `web-analytics-entry-pages`, `site-explorer-refdomains-history`, `brand-radar-ai-responses-entities`, `social-media-posts`, `gsc-metrics-by-country`, `keywords-explorer-volume-history`, `subscription-info-limits-and-usage`, `brand-radar-sov-history`, `web-analytics-languages`, `rank-tracker-competitors-pages`, `brand-radar-cited-pages`, `gsc-performance-by-device`, `public-crawler-ips`, `web-analytics-countries`, `web-analytics-exit-pages`, `site-explorer-pages-by-internal-links`, `gsc-performance-by-position`, `gsc-page-history`, `site-explorer-outlinks-stats`, `social-media-authors`, `web-analytics-cities`, `brand-radar-mentions-overview`, `brand-radar-sov-history-entities`, `web-analytics-source-channels`, `site-audit-issues`, `site-explorer-broken-backlinks`, `rank-tracker-competitors-stats`, `web-analytics-utm-params-chart`, `web-analytics-referrers-chart`, `web-analytics-continents-chart`, `web-analytics-entry-pages-chart`, `web-analytics-stats`, `site-explorer-backlinks-stats`, `brand-radar-cited-pages-entities`, `social-media-post-metrics`, `web-analytics-operating-systems`, `web-analytics-top-pages`, `brand-radar-ai-responses`, `web-analytics-operating-systems-versions-chart`, `web-analytics-devices-chart`, `web-analytics-chart`, `keywords-explorer-overview`, `site-explorer-url-rating-history`, `management-keyword-list-keywords`, `web-analytics-sources-chart`, `brand-radar-impressions-history-entities`, `public-crawler-ip-ranges`, `site-explorer-metrics`, `site-explorer-referring-domains`, `management-brand-radar-reports`, `social-media-channel-metrics`, `gsc-keyword-history`, `site-explorer-metrics-by-country`, `site-explorer-all-backlinks`, `web-analytics-exit-pages-chart`, `gsc-keywords`, `web-analytics-sources`, `site-explorer-total-search-volume-history`, `site-explorer-linked-anchors-external`, `management-brand-radar-prompts`, `site-explorer-linked-anchors-internal`, `keywords-explorer-related-terms`, `site-explorer-organic-keywords`, `web-analytics-languages-chart`, `web-analytics-browsers`, `keywords-explorer-matching-terms`, `management-project-keywords`, `brand-radar-sov-overview`, `brand-radar-impressions-overview-entities`, `management-locations`, `gsc-ctr-by-position`, `gsc-anonymous-queries`, `gsc-performance-history`, `site-audit-page-content`, `brand-radar-impressions-history`, `site-explorer-top-pages`, `keywords-explorer-search-suggestions`, `social-media-channels`, `gsc-positions-history`, `gsc-pages-history`, `web-analytics-countries-chart`, `web-analytics-top-pages-chart`, `site-explorer-keywords-history`, `site-explorer-anchors`, `site-explorer-metrics-history`, `rank-tracker-competitors-overview`, `brand-radar-mentions-overview-entities`, `brand-radar-mentions-history-entities`, `site-explorer-pages-by-backlinks`, `web-analytics-utm-params`, `web-analytics-cities-chart`, `web-analytics-browsers-chart`, `site-explorer-domain-rating`, `site-audit-page-explorer`, `web-analytics-browser-versions`, `site-explorer-pages-history`, `keywords-explorer-volume-by-country`, `management-projects`, `site-explorer-pages-by-traffic`, `rank-tracker-serp-overview`, `management-project-competitors`, `brand-radar-sov-overview-entities`, `web-analytics-operating-systems-chart`, `web-analytics-operating-systems-versions`, `web-analytics-devices`, `site-explorer-paid-pages`, `web-analytics-browser-versions-chart`, `site-audit-projects`, `batch-analysis`, `brand-radar-cited-domains`, `web-analytics-referrers`, `gsc-pages`, `site-explorer-linked-domains`, `web-analytics-continents`, `doc`.

Example input: `{"tool":"site-explorer-domain-rating-history"}`

### `ahrefsmcp_gsc_anonymous_queries`

Gsc Anonymous Queries · Read-only

Returns organic keywords that rank for the project but are not reported by Google Search Console (anonymized queries), with position, traffic, volume, and CPC data.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `country` (`string`, required): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"country":"us","date_from":"<date_from>","project_id":1,"select":"<select>"}`

### `ahrefsmcp_gsc_ctr_by_position`

Gsc Ctr By Position · Read-only

Returns Google Search Console CTR (click-through rate) data by keyword position, showing each keyword's average position, CTR percentage, and click count.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `device` (`string`, optional): Device type filter: `desktop`, `mobile`, or `tablet`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `portfolio_id` (`integer`, optional): Numeric ID of the Ahrefs portfolio.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.

Example input: `{"date_from":"<date_from>"}`

### `ahrefsmcp_gsc_keyword_history`

Gsc Keyword History · Read-only

Returns Google Search Console performance history chart data (clicks, impressions, CTR, position) for specific keywords over time, grouped by daily, weekly, or monthly intervals.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `device` (`string`, optional): Device type filter: `desktop`, `mobile`, or `tablet`.
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `keywords` (`string`, optional): Comma-separated list of keywords to analyze.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `portfolio_id` (`integer`, optional): Numeric ID of the Ahrefs portfolio.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date_from":"<date_from>"}`

### `ahrefsmcp_gsc_keywords`

Gsc Keywords · Read-only

Returns Google Search Console keywords table data with metrics (clicks, impressions, CTR, position) and associated URLs for a project.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `device` (`string`, optional): Device type filter: `desktop`, `mobile`, or `tablet`.
- `keyword_list_id` (`integer`, optional): ID of the saved keyword list to use.
- `keyword_lists` (`string`, optional): No description.
- `limit` (`integer`, optional): Maximum number of results to return.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `portfolio_id` (`integer`, optional): Numeric ID of the Ahrefs portfolio.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.
- `search_type` (`string`, optional): GSC search type: `web`, `image`, `video`, or `news`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date_from":"<date_from>"}`

### `ahrefsmcp_gsc_metrics_by_country`

Gsc Metrics By Country · Read-only

Returns Google Search Console click metrics grouped by country for a project.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `device` (`string`, optional): Device type filter: `desktop`, `mobile`, or `tablet`.
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `portfolio_id` (`integer`, optional): Numeric ID of the Ahrefs portfolio.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.
- `search_type` (`string`, optional): GSC search type: `web`, `image`, `video`, or `news`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date_from":"<date_from>"}`

### `ahrefsmcp_gsc_page_history`

Gsc Page History · Read-only

Returns Google Search Console performance history chart data (clicks, impressions, CTR, position) for specific pages over time, grouped by daily, weekly, or monthly intervals.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `device` (`string`, optional): Device type filter: `desktop`, `mobile`, or `tablet`.
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `pages` (`string`, optional): No description.
- `portfolio_id` (`integer`, optional): Numeric ID of the Ahrefs portfolio.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.

Example input: `{"date_from":"<date_from>"}`

### `ahrefsmcp_gsc_pages`

Gsc Pages · Read-only

Returns Google Search Console pages table data with metrics (clicks, impressions, CTR, position) and associated keywords for a project.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `device` (`string`, optional): Device type filter: `desktop`, `mobile`, or `tablet`.
- `limit` (`integer`, optional): Maximum number of results to return.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `portfolio_id` (`integer`, optional): Numeric ID of the Ahrefs portfolio.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.
- `search_type` (`string`, optional): GSC search type: `web`, `image`, `video`, or `news`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date_from":"<date_from>"}`

### `ahrefsmcp_gsc_pages_history`

Gsc Pages History · Read-only

Returns Google Search Console pages chart data showing total indexed pages over time for a project.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `device` (`string`, optional): Device type filter: `desktop`, `mobile`, or `tablet`.
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `portfolio_id` (`integer`, optional): Numeric ID of the Ahrefs portfolio.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.
- `search_type` (`string`, optional): GSC search type: `web`, `image`, `video`, or `news`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date_from":"<date_from>"}`

### `ahrefsmcp_gsc_performance_by_device`

Gsc Performance By Device · Read-only

Returns Google Search Console performance metrics (clicks, impressions, CTR, position) broken down by device type (desktop, mobile, tablet) for a project.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `portfolio_id` (`integer`, optional): Numeric ID of the Ahrefs portfolio.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.
- `search_type` (`string`, optional): GSC search type: `web`, `image`, `video`, or `news`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date_from":"<date_from>"}`

### `ahrefsmcp_gsc_performance_by_position`

Gsc Performance By Position · Read-only

Returns Google Search Console performance metrics (clicks, impressions, keyword count) grouped by position ranges (1-3, 4-10, 11-20, 21-50, 51+) for a project.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `device` (`string`, optional): Device type filter: `desktop`, `mobile`, or `tablet`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `portfolio_id` (`integer`, optional): Numeric ID of the Ahrefs portfolio.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.
- `search_type` (`string`, optional): GSC search type: `web`, `image`, `video`, or `news`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date_from":"<date_from>"}`

### `ahrefsmcp_gsc_performance_history`

Gsc Performance History · Read-only

Returns Google Search Console performance chart data (clicks, impressions, CTR, position) for a project over time, grouped by daily, weekly, or monthly intervals.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `device` (`string`, optional): Device type filter: `desktop`, `mobile`, or `tablet`.
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `portfolio_id` (`integer`, optional): Numeric ID of the Ahrefs portfolio.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.
- `search_type` (`string`, optional): GSC search type: `web`, `image`, `video`, or `news`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date_from":"<date_from>"}`

### `ahrefsmcp_gsc_positions_history`

Gsc Positions History · Read-only

Returns Google Search Console keyword count data grouped by position ranges (1-3, 4-10, 11-20, 21-50, 51+) over time for a project.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `device` (`string`, optional): Device type filter: `desktop`, `mobile`, or `tablet`.
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `portfolio_id` (`integer`, optional): Numeric ID of the Ahrefs portfolio.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.
- `search_type` (`string`, optional): GSC search type: `web`, `image`, `video`, or `news`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date_from":"<date_from>"}`

### `ahrefsmcp_keywords_explorer_matching_terms`

Keywords Explorer Matching Terms · Read-only

Retrieve keyword ideas and SEO metrics by matching input terms or phrases in a specified country, with support for filtering, sorting, and metric selection.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `country` (`string`, required): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `keyword_list_id` (`integer`, optional): ID of the saved keyword list to use.
- `keywords` (`string`, optional): Comma-separated list of keywords to analyze.
- `limit` (`integer`, optional): Maximum number of results to return.
- `match_mode` (`string`, optional): No description.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `terms` (`string`, optional): No description.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"country":"us","select":"<select>"}`

### `ahrefsmcp_keywords_explorer_overview`

Keywords Explorer Overview · Read-only

Retrieve an overview of keyword metrics—including search volume, CPC, ranking difficulty, traffic potential, and intent—for specified keywords, domains, or URLs.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `country` (`string`, required): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `keyword_list_id` (`integer`, optional): ID of the saved keyword list to use.
- `keywords` (`string`, optional): Comma-separated list of keywords to analyze.
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `target` (`string`, optional): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `target_position` (`string`, optional): No description.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `volume_monthly_date_from` (`string`, optional): No description.
- `volume_monthly_date_to` (`string`, optional): No description.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"country":"us","select":"<select>"}`

### `ahrefsmcp_keywords_explorer_related_terms`

Keywords Explorer Related Terms · Read-only

Retrieve keyword metrics and related terms ("also rank for" and "also talk about") for a given keyword or keyword list, with filtering and sorting options.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `country` (`string`, required): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `keyword_list_id` (`integer`, optional): ID of the saved keyword list to use.
- `keywords` (`string`, optional): Comma-separated list of keywords to analyze.
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `terms` (`string`, optional): No description.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `view_for` (`string`, optional): No description.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"country":"us","select":"<select>"}`

### `ahrefsmcp_keywords_explorer_search_suggestions`

Keywords Explorer Search Suggestions · Read-only

Retrieve keyword search suggestions and metrics such as search volume, difficulty, and CPC for specified queries, with filtering and sorting options.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `country` (`string`, required): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `keyword_list_id` (`integer`, optional): ID of the saved keyword list to use.
- `keywords` (`string`, optional): Comma-separated list of keywords to analyze.
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"country":"us","select":"<select>"}`

### `ahrefsmcp_keywords_explorer_volume_by_country`

Keywords Explorer Volume By Country · Read-only

Retrieves search volume metrics for a specified keyword broken down by country. Requests will not consume API units if you use only "ahrefs" or "wordcount" in the `keywords` or `keyword` query parameter.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `keyword` (`string`, required): Keyword to analyze.
- `limit` (`integer`, optional): Maximum number of results to return.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"keyword":"<keyword>"}`

### `ahrefsmcp_keywords_explorer_volume_history`

Keywords Explorer Volume History · Read-only

Retrieves historical search volume data for a specified keyword within a given country and date range. Requests will not consume API units if you use only "ahrefs" or "wordcount" in the `keywords` or `keyword` query parameter.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `country` (`string`, required): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `keyword` (`string`, required): Keyword to analyze.
- `date_from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"country":"us","keyword":"<keyword>"}`

### `ahrefsmcp_management_brand_radar_prompts`

Management Brand Radar Prompts · Read-only

Retrieves custom prompts for a specific brand radar report. Requests to this endpoint are free and do not consume any API units.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `report_id` (`string`, required): ID of the brand radar report to query.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"report_id":"<report_id>"}`

### `ahrefsmcp_management_brand_radar_reports`

Management Brand Radar Reports · Read-only

Retrieves the list of custom brand radar reports. Requests to this endpoint are free and do not consume any API units.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{}`

### `ahrefsmcp_management_keyword_list_keywords`

Management Keyword List Keywords · Read-only

Retrieves keywords from a keyword list. Requests to this endpoint are free and do not consume any API units.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `keyword_list_id` (`integer`, required): ID of the saved keyword list to use.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"keyword_list_id":1}`

### `ahrefsmcp_management_locations`

Management Locations · Read-only

Retrieves a list of management locations filtered by country code and optionally by US state.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `country_code` (`string`, required): Two-letter ISO country code.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `us_state` (`string`, optional): No description.

Example input: `{"country_code":"<country_code>"}`

### `ahrefsmcp_management_project_competitors`

Management Project Competitors · Read-only

Retrieves the list of competitors associated with a specific Rank Tracker project in Ahrefs, using the project's unique identifier.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"project_id":1}`

### `ahrefsmcp_management_project_keywords`

Management Project Keywords · Read-only

Returns all tracked keywords for a specific Rank Tracker project, including associated tracking metadata.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"project_id":1}`

### `ahrefsmcp_management_projects`

Management Projects · Read-only

Retrieves information about existing projects, including ownership, access type, presence of Rank Tracker keywords, and project ID.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `access` (`string`, optional): No description.
- `has_keywords` (`boolean`, optional): No description.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `owned_by` (`string`, optional): No description.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.

Example input: `{}`

### `ahrefsmcp_public_crawler_ip_ranges`

Public Crawler Ip Ranges · Read-only

Returns the IP ranges used by the Ahrefs public web crawler, typically for allowlisting or firewall configuration.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{}`

### `ahrefsmcp_public_crawler_ips`

Public Crawler Ips · Read-only

Returns the list of individual IP addresses currently used by the Ahrefs public web crawler.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{}`

### `ahrefsmcp_public_domain_rating_free`

Public Domain Rating Free · Read-only

Retrieves the domain rating for a specified domain or URL as of today.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"target":"ahrefs.com"}`

### `ahrefsmcp_public_domain_rating_top_domains`

Public Domain Rating Top Domains · Read-only

Returns the top 1M domains ranked by Ahrefs Domain Rating, together with each domain's current Domain Rating.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `from` (`integer`, optional): Starting position (1-based rank) in the top domains list to return results from.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`integer`, optional): Ending position (rank) in the top domains list to return results to.

Example input: `{}`

### `ahrefsmcp_rank_tracker_competitors_domains`

Rank Tracker Competitors Domains · Read-only

Provides an overview of competitor domains and their share of voice for a specified project and date in Ahrefs Rank Tracker, allowing comparison between current and previous data.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `device` (`string`, required): Device type filter: `desktop`, `mobile`, or `tablet`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `date_compared` (`string`, optional): Comparison date for period-over-period analysis (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `target_and_tracked_competitors_only` (`boolean`, optional): If true, restricts results to the project's target domain and its tracked competitors only, excluding other discovered competitor domains.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date":"<date>","device":"<device>","project_id":1,"select":"<select>"}`

### `ahrefsmcp_rank_tracker_competitors_overview`

Rank Tracker Competitors Overview · Read-only

Provides an overview of competitor rankings and keyword metrics for a specified project and date in Ahrefs Rank Tracker, allowing comparison between current and previous data.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `device` (`string`, required): Device type filter: `desktop`, `mobile`, or `tablet`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `date_compared` (`string`, optional): Comparison date for period-over-period analysis (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date":"<date>","device":"<device>","project_id":1,"select":"<select>"}`

### `ahrefsmcp_rank_tracker_competitors_pages`

Rank Tracker Competitors Pages · Read-only

Provides an overview of competitor pages and keyword metrics for a specified project and date in Ahrefs Rank Tracker, allowing comparison between current and previous data.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `device` (`string`, required): Device type filter: `desktop`, `mobile`, or `tablet`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `date_compared` (`string`, optional): Comparison date for period-over-period analysis (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `target_and_tracked_competitors_only` (`boolean`, optional): No description.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date":"<date>","device":"<device>","project_id":1,"select":"<select>"}`

### `ahrefsmcp_rank_tracker_competitors_stats`

Rank Tracker Competitors Stats · Read-only

Provides an overview of competitor metrics for a specified project and date in Ahrefs Rank Tracker. Metrics include: share of voice, share of traffic value, average position, traffic, traffic value, and positions, and counts of SERP features.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `device` (`string`, required): Device type filter: `desktop`, `mobile`, or `tablet`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.

Example input: `{"date":"<date>","device":"<device>","project_id":1,"select":"<select>"}`

### `ahrefsmcp_rank_tracker_overview`

Rank Tracker Overview · Read-only

Provides an overview of tracked keyword rankings and related search metrics for a specified project and date, with support for historical comparison, filtering, column selection, and device type.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `device` (`string`, required): Device type filter: `desktop`, `mobile`, or `tablet`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `date_compared` (`string`, optional): Comparison date for period-over-period analysis (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date":"<date>","device":"<device>","project_id":1,"select":"<select>"}`

### `ahrefsmcp_rank_tracker_serp_overview`

Rank Tracker Serp Overview · Read-only

Returns SERP overview for a specified keyword in a Rank Tracker project, showing detailed information about each position including title, URL, type, backlink metrics, and traffic data.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `country` (`string`, required): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `device` (`string`, required): Device type filter: `desktop`, `mobile`, or `tablet`.
- `keyword` (`string`, required): Keyword to analyze.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `language_code` (`string`, optional): BCP-47 language code (e.g. `en`, `fr`).
- `location_id` (`integer`, optional): Numeric ID of the target location.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `top_positions` (`integer`, optional): No description.

Example input: `{"country":"us","device":"<device>","keyword":"<keyword>","project_id":1}`

### `ahrefsmcp_render_data_table`

Render Data Table · Read-only

Render an interactive data table widget with sorting, search, and pagination. Accepts column definitions and row data; column types are inferred automatically.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `columns` (`array`, required): No description.
- `rows` (`array`, required): No description.
- `title` (`string`, required): No description.
- `pageSize` (`integer`, optional): No description.
- `source` (`object`, optional): No description.

Example input: `{"columns":[],"rows":[],"title":"<title>"}`

### `ahrefsmcp_render_scorecard`

Render Scorecard · Read-only

Render a scorecard widget showing key metrics as a card grid. Accepts metric cards with labels, numeric values, optional units, change indicators, and groupings.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `cards` (`array`, required): No description.
- `title` (`string`, required): No description.
- `source` (`object`, optional): No description.

Example input: `{"cards":[],"title":"<title>"}`

### `ahrefsmcp_render_time_series_chart`

Render Time Series Chart · Read-only

Render an interactive time series line chart for one or more named data series. Supports dual Y-axis, hover tooltips, crosshair, and a toggleable legend.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `series` (`array`, required): No description.
- `title` (`string`, required): No description.
- `source` (`object`, optional): No description.

Example input: `{"series":[],"title":"<title>"}`

### `ahrefsmcp_serp_overview`

Serp Overview · Read-only

Retrieve an overview of the top search results for a specified keyword and country, including position, backlinks, traffic, domain rating, and related keywords.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `country` (`string`, required): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `keyword` (`string`, required): Keyword to analyze.
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `top_positions` (`integer`, optional): No description.
- `type` (`string`, optional): Filter SERP results to a specific result type (e.g. `organic`, `paid`, `featured_snippet`).

Example input: `{"country":"us","keyword":"<keyword>","select":"<select>"}`

### `ahrefsmcp_site_audit_issues`

Site Audit Issues · Read-only

Returns all issues from your Site Audit crawl. By default, it provides data from the latest available crawl, but you can also specify a crawl date and time to retrieve historical metrics.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `date_compared` (`string`, optional): Comparison date for period-over-period analysis (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"project_id":1}`

### `ahrefsmcp_site_audit_page_content`

Site Audit Page Content · Read-only

Returns the HTML and extracted text content of a page from your Site Audit crawl. By default, it provides the latest available snapshot, but you can also specify a crawl date and time to retrieve historical snapshots.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target_url` (`string`, required): Full URL to analyze (e.g. `https://ahrefs.com/blog/`).
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"project_id":1,"select":"<select>","target_url":"https://ahrefs.com/blog/"}`

### `ahrefsmcp_site_audit_page_explorer`

Site Audit Page Explorer · Read-only

Returns detailed information about pages discovered in a Site Audit project, including URLs, crawl metadata, and selected on-page metrics.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `date_compared` (`string`, optional): Comparison date for period-over-period analysis (YYYY-MM-DD).
- `filter_mode` (`string`, optional): No description.
- `issue_id` (`string`, optional): No description.
- `limit` (`integer`, optional): Maximum number of results to return.
- `offset` (`integer`, optional): Number of results to skip before returning results, for pagination alongside `limit`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `select` (`string`, optional): Comma-separated list of fields to include in the response.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_site_audit_projects`

Site Audit Projects · Read-only

Returns Site Audit project summaries (all projects or a specific project), including health scores, issue counts, and crawled page counts for the latest crawl or a specified historical point in time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `project_id` (`integer`, optional): Numeric ID of the Ahrefs project.
- `project_name` (`string`, optional): No description.
- `project_url` (`string`, optional): No description.

Example input: `{}`

### `ahrefsmcp_site_explorer_ai_responses_count`

Site Explorer Ai Responses Count · Read-only

Returns how often AI search platforms cite the target, with the number of citation links and distinct cited pages per platform as of a given date. When analyzing a domain name, use `mode=subdomains` — `mode=domain` can exclude www and other subdomains. Requests using `ahrefs.com`, `wordcount.com`, or any URL under those domains as the `target` do not consume API units.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date` (`string`, optional): Target date for the snapshot (YYYY-MM-DD).
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.

Example input: `{"select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_all_backlinks`

Site Explorer All Backlinks · Read-only

Retrieves detailed information about all backlinks pointing to a specified URL or domain, with extensive filtering, sorting, selection, and aggregation options.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `aggregation` (`string`, optional): No description.
- `history` (`string`, optional): No description.
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_anchors`

Site Explorer Anchors · Read-only

Retrieves anchor text and associated backlink metrics for a specified domain or URL, with filtering and selection options.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `history` (`string`, optional): No description.
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_backlinks_stats`

Site Explorer Backlinks Stats · Read-only

Provides backlink statistics for a specified URL or domain as of a given date, with options to control protocol and scope.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.

Example input: `{"date":"<date>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_broken_backlinks`

Site Explorer Broken Backlinks · Read-only

Retrieves a list of broken backlinks (i.e., links pointing to non-functioning pages) for a specified domain or URL, with customizable filtering, field selection, and aggregation options.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `aggregation` (`string`, optional): No description.
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_crawled_pages`

Site Explorer Crawled Pages · Read-only

Returns a list of pages crawled by Ahrefs for a specified domain or URL, including the page URLs.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_domain_rating`

Site Explorer Domain Rating · Read-only

Retrieve the domain rating and related metrics for a specified domain or URL as of a specific date.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"date":"<date>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_domain_rating_history`

Site Explorer Domain Rating History · Read-only

Retrieve historical domain rating data for a specified domain or URL over a defined date range and grouping interval.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"date_from":"<date_from>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_keywords_history`

Site Explorer Keywords History · Read-only

Retrieves historical data on the number of organic keywords a specified website or URL has ranked for, segmented by various search position ranges and grouped by a chosen time interval.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `select` (`string`, optional): Comma-separated list of fields to include in the response.

Example input: `{"date_from":"<date_from>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_linked_anchors_external`

Site Explorer Linked Anchors External · Read-only

Retrieves data about external anchor text (the clickable words in outbound links) used on a specified domain, subdomain, or URL, including metrics like dofollow link counts, distinct linked domains, and other attributes about the links.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_linked_anchors_internal`

Site Explorer Linked Anchors Internal · Read-only

Retrieves internal anchor text data for a given website or URL, detailing how anchor texts are used in links between pages on the same site.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_linked_domains`

Site Explorer Linked Domains · Read-only

Retrieves information about external domains that are linked from a specified target domain or URL, allowing for filtering, field selection, and various scopes of analysis.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_metrics`

Site Explorer Metrics · Read-only

Provides SEO performance metrics for a specified domain, URL, or site section as of a given date, with options to customize search scope, protocol, country, and search volume mode.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `traffic_mode` (`string`, optional): How to calculate estimated organic traffic: e.g. `monthly` or `average`.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.

Example input: `{"date":"<date>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_metrics_by_country`

Site Explorer Metrics By Country · Read-only

Provides organic and paid search performance metrics for a specified website, broken down by country, for a specific date.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `select` (`string`, optional): Comma-separated list of fields to include in the response.
- `traffic_mode` (`string`, optional): How to calculate estimated organic traffic: e.g. `monthly` or `average`.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.

Example input: `{"date":"<date>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_metrics_history`

Site Explorer Metrics History · Read-only

Retrieves historical data on key organic and paid search traffic and cost metrics for a specified domain, URL, or path over a selectable date range and grouping interval.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `select` (`string`, optional): Comma-separated list of fields to include in the response.
- `traffic_mode` (`string`, optional): How to calculate estimated organic traffic: e.g. `monthly` or `average`.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.

Example input: `{"date_from":"<date_from>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_organic_competitors`

Site Explorer Organic Competitors · Read-only

Retrieves a list of organic search competitors for a specified website or URL, providing comparative SEO metrics such as common keywords, traffic estimations, and domain strength for a chosen country and date.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `country` (`string`, required): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `date_compared` (`string`, optional): Comparison date for period-over-period analysis (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `traffic_mode` (`string`, optional): How to calculate estimated organic traffic: e.g. `monthly` or `average`.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"country":"us","date":"<date>","select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_organic_keywords`

Site Explorer Organic Keywords · Read-only

Retrieves detailed organic keyword data for a given domain, URL, or path, including rankings, search intent, SERP features, traffic and CPC metrics, with the ability to filter, sort, and compare metrics across dates and regions.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_compared` (`string`, optional): Comparison date for period-over-period analysis (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `traffic_mode` (`string`, optional): How to calculate estimated organic traffic: e.g. `monthly` or `average`.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date":"<date>","select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_outlinks_stats`

Site Explorer Outlinks Stats · Read-only

Retrieves statistical data about the outbound links (outlinks) from a specified URL, domain, or site section.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.

Example input: `{"target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_pages_by_backlinks`

Site Explorer Pages By Backlinks · Read-only

Returns a list of a site's or URL's best-performing pages, ranked by the number of referring external links, with flexible filtering and sorting options.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `history` (`string`, optional): No description.
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_pages_by_internal_links`

Site Explorer Pages By Internal Links · Read-only

Retrieves a site's or page's internal link metrics, allowing analysis of how pages within the given domain or URL are interconnected and which pages receive the most internal links.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_pages_by_traffic`

Site Explorer Pages By Traffic · Read-only

Returns the distribution of pages by estimated organic traffic buckets for a specified domain or URL, across all locations or for a specified country.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `traffic_mode` (`string`, optional): How to calculate estimated organic traffic: e.g. `monthly` or `average`.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.

Example input: `{"target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_pages_history`

Site Explorer Pages History · Read-only

Retrieves historical data about pages from a specified domain, URL, or section of a site, grouped by a chosen time interval.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `page_positions` (`string`, optional): No description.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.

Example input: `{"date_from":"<date_from>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_paid_pages`

Site Explorer Paid Pages · Read-only

Returns detailed metrics about pages on a specified site or URL that are ranking in paid search results, including traffic, keyword data, ad presence, and changes over time, with powerful filtering and comparison capabilities.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_compared` (`string`, optional): Comparison date for period-over-period analysis (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date":"<date>","select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_refdomains_history`

Site Explorer Refdomains History · Read-only

Provides historical data on referring domains linking to a specified target (domain or URL) over a defined date range, with customizable grouping and analysis scope.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.

Example input: `{"date_from":"<date_from>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_referring_domains`

Site Explorer Referring Domains · Read-only

Retrieves detailed information about referring domains that link to a specified target domain or URL, with flexible filtering, selection, and sorting of backlink-related metrics.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `history` (`string`, optional): No description.
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_top_pages`

Site Explorer Top Pages · Read-only

Returns a list of the top-performing pages for a specified website or URL, including detailed SEO metrics (such as organic rankings, traffic, top keyword, and changes over time), with support for comparison between two dates and flexible filtering.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date` (`string`, required): Target date for the snapshot (YYYY-MM-DD).
- `select` (`string`, required): Comma-separated list of fields to include in the response.
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_compared` (`string`, optional): Comparison date for period-over-period analysis (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `timeout` (`integer`, optional): Request timeout in seconds.
- `traffic_mode` (`string`, optional): How to calculate estimated organic traffic: e.g. `monthly` or `average`.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"date":"<date>","select":"<select>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_total_search_volume_history`

Site Explorer Total Search Volume History · Read-only

Returns historical totals of search volume for keywords that the specified domain or URL ranks for in the top 10 or top 100 results, across all countries or for a specified country.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `country` (`string`, optional): Two-letter ISO country code to filter data (e.g. `us`, `gb`, `de`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `mode` (`string`, optional): Scope of analysis: `exact`, `prefix`, `domain`, or `subdomains`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `protocol` (`string`, optional): URL protocol to include: `http`, `https`, or `both`.
- `top_positions` (`string`, optional): No description.
- `volume_mode` (`string`, optional): How to calculate search volume: `monthly` or `average`.

Example input: `{"date_from":"<date_from>","target":"ahrefs.com"}`

### `ahrefsmcp_site_explorer_url_rating_history`

Site Explorer Url Rating History · Read-only

Retrieve historical URL rating data for a specified domain or URL over a defined date range, grouped by a chosen time interval.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `target` (`string`, required): Domain, URL, or path to analyze (e.g. `ahrefs.com`).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `history_grouping` (`string`, optional): How to group historical data: `daily`, `weekly`, or `monthly`.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"date_from":"<date_from>","target":"ahrefs.com"}`

### `ahrefsmcp_social_media_activity_history`

Social Media Activity History · Read-only

Get the activity history log for posts (published, scheduled, failed, etc.).

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `post_id` (`integer`, required): No description.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"post_id":1}`

### `ahrefsmcp_social_media_authors`

Social Media Authors · Read-only

List users who have created posts in the account.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{}`

### `ahrefsmcp_social_media_channel_metrics`

Social Media Channel Metrics · Read-only

Get historical follower count data for connected channels.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `channel_id` (`string`, required): No description.
- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"channel_id":"<channel_id>","date_from":"<date_from>"}`

### `ahrefsmcp_social_media_channels`

Social Media Channels · Read-only

List social media channels with their connection status and metadata.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{}`

### `ahrefsmcp_social_media_post_metrics`

Social Media Post Metrics · Read-only

Get engagement metrics (views, likes, etc.) for a specific post.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `channel_id` (`string`, required): No description.
- `date_from` (`string`, required): Start date for the data range (YYYY-MM-DD).
- `external_post_id` (`string`, required): No description.
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{"channel_id":"<channel_id>","date_from":"<date_from>","external_post_id":"<external_post_id>"}`

### `ahrefsmcp_social_media_posts`

Social Media Posts · Read-only

List social media posts with filtering by channel, status, and author.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `status` (`string`, required): Status filter for the resource.
- `author_ids` (`string`, optional): No description.
- `channel_ids` (`string`, optional): No description.
- `date_from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `date_to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `offset` (`integer`, optional): Number of results to skip for pagination.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `order_direction` (`string`, optional): No description.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `search_query` (`string`, optional): No description.

Example input: `{"status":"<status>"}`

### `ahrefsmcp_subscription_info_limits_and_usage`

Subscription Info Limits And Usage · Read-only

Retrieves subscription information including limits and usage statistics for API units, workspace quotas, and API key details. This endpoint is free and does not consume any API units.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.

Example input: `{}`

### `ahrefsmcp_web_analytics_browser_versions`

Web Analytics Browser Versions · Read-only

Returns browser version statistics for a Web Analytics project, showing visitor counts, bounce rates, and session durations grouped by browser version.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_browser_versions_chart`

Web Analytics Browser Versions Chart · Read-only

Returns time-series chart data grouped by browser version for a Web Analytics project, showing visitor counts, bounce rates, and session durations over time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `browser_version_to_chart` (`string`, optional): No description.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_browsers`

Web Analytics Browsers · Read-only

Returns browser statistics for a Web Analytics project, showing visitor counts, bounce rates, and session durations grouped by browser.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_browsers_chart`

Web Analytics Browsers Chart · Read-only

Returns time-series chart data grouped by browser for a Web Analytics project, showing visitor counts, bounce rates, and session durations over time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `browser_to_chart` (`string`, optional): No description.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_chart`

Web Analytics Chart · Read-only

Returns time-series chart data for aggregate statistics of a Web Analytics project, with metrics like pageviews, visitors, visits, bounce rate, and session duration at the specified granularity.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_cities`

Web Analytics Cities · Read-only

Returns visitor data grouped by city for a Web Analytics project, showing visitor counts for each location.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_cities_chart`

Web Analytics Cities Chart · Read-only

Returns time-series chart data grouped by city for a Web Analytics project, showing visitor counts over time for each location.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `cities_to_chart` (`string`, optional): No description.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_continents`

Web Analytics Continents · Read-only

Returns visitor data grouped by continent for a Web Analytics project, showing visitor counts for each region.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_continents_chart`

Web Analytics Continents Chart · Read-only

Returns time-series chart data grouped by continent for a Web Analytics project, showing visitor counts over time for each region.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `continents_to_chart` (`string`, optional): No description.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_countries`

Web Analytics Countries · Read-only

Returns visitor data grouped by country for a Web Analytics project, showing visitor counts for each location.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_countries_chart`

Web Analytics Countries Chart · Read-only

Returns time-series chart data grouped by country for a Web Analytics project, showing visitor counts over time for each location.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `countries_to_chart` (`string`, optional): No description.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_devices`

Web Analytics Devices · Read-only

Returns device type statistics for a Web Analytics project, showing visitor counts, bounce rates, and session durations grouped by device type.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_devices_chart`

Web Analytics Devices Chart · Read-only

Returns time-series chart data grouped by device type for a Web Analytics project, showing visitor counts, bounce rates, and session durations over time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `devices_to_chart` (`string`, optional): No description.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_entry_pages`

Web Analytics Entry Pages · Read-only

Returns entry page statistics for a Web Analytics project, showing which pages visitors land on first, including visitor counts and entry rates.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_entry_pages_chart`

Web Analytics Entry Pages Chart · Read-only

Returns time-series chart data for entry pages of a Web Analytics project, showing visitor counts and entry rates over time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `entry_pages_to_chart` (`string`, optional): No description.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_exit_pages`

Web Analytics Exit Pages · Read-only

Returns exit page statistics for a Web Analytics project, showing which pages visitors leave from, including visitor counts and exit rates.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_exit_pages_chart`

Web Analytics Exit Pages Chart · Read-only

Returns time-series chart data for exit pages of a Web Analytics project, showing visitor counts and exit rates over time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `exit_pages_to_chart` (`string`, optional): No description.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_languages`

Web Analytics Languages · Read-only

Returns visitor data grouped by browser language for a Web Analytics project, showing visitor counts for each language.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_languages_chart`

Web Analytics Languages Chart · Read-only

Returns time-series chart data grouped by browser language for a Web Analytics project, showing visitor counts over time for each language.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `browser_language_to_chart` (`string`, optional): No description.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_operating_systems`

Web Analytics Operating Systems · Read-only

Returns operating system statistics for a Web Analytics project, showing visitor counts, bounce rates, and session durations grouped by OS.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_operating_systems_chart`

Web Analytics Operating Systems Chart · Read-only

Returns time-series chart data grouped by operating system for a Web Analytics project, showing visitor counts, bounce rates, and session durations over time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `os_to_chart` (`string`, optional): No description.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_operating_systems_versions`

Web Analytics Operating Systems Versions · Read-only

Returns OS version statistics for a Web Analytics project, showing visitor counts, bounce rates, and session durations grouped by OS version.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_operating_systems_versions_chart`

Web Analytics Operating Systems Versions Chart · Read-only

Returns time-series chart data grouped by OS version for a Web Analytics project, showing visitor counts, bounce rates, and session durations over time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `os_versions_to_chart` (`string`, optional): No description.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_referrers`

Web Analytics Referrers · Read-only

Returns referrer statistics for a Web Analytics project, showing visitor counts, bounce rates, and session durations grouped by referrer URL.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_referrers_chart`

Web Analytics Referrers Chart · Read-only

Returns time-series chart data grouped by referrer for a Web Analytics project, showing visitor counts, bounce rates, and session durations over time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `source_referers_to_chart` (`string`, optional): No description.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_source_channels`

Web Analytics Source Channels · Read-only

Returns traffic grouped by source channel (e.g., organic, paid, social, direct) for a Web Analytics project, including visitor counts, bounce rates, and session durations.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_source_channels_chart`

Web Analytics Source Channels Chart · Read-only

Returns time-series chart data grouped by source channel (e.g., organic, paid, social, direct) for a Web Analytics project, showing metrics over time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `source_channels_to_chart` (`string`, optional): No description.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_sources`

Web Analytics Sources · Read-only

Returns traffic source breakdown for a Web Analytics project, showing visitor counts, bounce rates, and session durations grouped by referral source.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_sources_chart`

Web Analytics Sources Chart · Read-only

Returns time-series chart data for traffic sources of a Web Analytics project, showing how visitor counts, bounce rates, and session durations change over time for each referral source.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `sources_to_chart` (`string`, optional): No description.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_stats`

Web Analytics Stats · Read-only

Returns aggregate statistics for a Web Analytics project, including total visitors, bounce rate, and average session duration without any dimension grouping.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_top_pages`

Web Analytics Top Pages · Read-only

Returns the most visited pages for a Web Analytics project, including pageview counts, visitor counts, bounce rates, and average page visit durations.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1}`

### `ahrefsmcp_web_analytics_top_pages_chart`

Web Analytics Top Pages Chart · Read-only

Returns time-series chart data for the most visited pages of a Web Analytics project, showing how pageviews, visitors, and other metrics change over time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `pages_to_chart` (`string`, optional): No description.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1}`

### `ahrefsmcp_web_analytics_utm_params`

Web Analytics Utm Params · Read-only

Returns statistics for a specified UTM paramater for a Web Analytics project, showing visitor counts, bounce rates, and session durations grouped by utm_source.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `utm_param` (`string`, required): UTM parameter name to group web analytics by (e.g. `utm_campaign`).
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `limit` (`integer`, optional): Maximum number of results to return.
- `order_by` (`string`, optional): Sort order as an array of `field:asc` or `field:desc` strings.
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"project_id":1,"utm_param":"utm_campaign"}`

### `ahrefsmcp_web_analytics_utm_params_chart`

Web Analytics Utm Params Chart · Read-only

Returns time-series chart data grouped by a specified UTM param for a Web Analytics project, showing visitor counts, bounce rates, and session durations over time.

Read only: yes. Destructive: no. Idempotent (safe to retry): no.

Inputs:

- `granularity` (`string`, required): Time granularity for aggregation: `daily`, `weekly`, or `monthly`.
- `project_id` (`integer`, required): Numeric ID of the Ahrefs project.
- `utm_param` (`string`, required): UTM parameter name to group web analytics by (e.g. `utm_campaign`).
- `from` (`string`, optional): Start date for the data range (YYYY-MM-DD).
- `output` (`string`, optional): Response format. Use `json` (default) or `csv`.
- `to` (`string`, optional): End date for the data range (YYYY-MM-DD).
- `utm_params_to_chart` (`string`, optional): No description.
- `where` (`string`, optional): Filter expression in Ahrefs API filter syntax.

Example input: `{"granularity":"<granularity>","project_id":1,"utm_param":"utm_campaign"}`

## Related

Other Marketing connectors ([all 59](/agentkit/connectors/?category=marketing)):

- [HubSpot](/agentkit/connectors/hubspot/): Scalekit connector, OAuth, 457 tools
- [Mailchimp](/agentkit/connectors/mailchimp/): Scalekit connector, OAuth, 73 tools
- [Twitter / X](/agentkit/connectors/twitteroauth/): Scalekit connector, OAuth, 92 tools


---

## More Scalekit documentation

| Resource | What it contains | When to use it |
|----------|-----------------|----------------|
| [/llms.txt](/llms.txt) | Structured index with routing hints per product area | Start here — find which documentation set covers your topic before loading full content |
| [/llms-full.txt](/llms-full.txt) | Complete documentation for all Scalekit products in one file | Use when you need exhaustive context across multiple products or when the topic spans several areas |
| [sitemap-0.xml](https://docs.scalekit.com/sitemap-0.xml) | Full URL list of every documentation page | Use to discover specific page URLs you can fetch for targeted, page-level answers |
