> ## Documentation Index
> Fetch the complete documentation index at: https://docs.superlines.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Available Tools

> Complete reference of all MCP tools available in the Superlines MCP server.

The Superlines MCP server exposes **27 tools** organized into categories. Most tools are read-only. The [Account Management](#account-management) tools can create brands and manage prompts — these require **write permissions** on your API key.

<Tip>
  When asking about a **specific brand**, always include the brand name in your query. The AI assistant will pass it to the `brands` parameter automatically. If you omit brands, data for **all** brands in your organization is returned.
</Tip>

## Brand Management

### `list_brands`

Lists all brands available in your account. **Always call this first** to get exact brand names for other tools.

* **Parameters:** None
* **Returns:** List of brands with IDs, names, websites, country, language, industry, and competitors

### `get_brand_details`

Get detailed information about a specific brand including competitors, industry, and market settings.

| Parameter  | Type   | Required | Description                  |
| ---------- | ------ | -------- | ---------------------------- |
| `domainId` | string | Yes      | Domain ID from `list_brands` |

***

## Core Metrics

### `analyze_metrics`

Get comprehensive analytics data including Brand Visibility, Citation Rate, Mentions, Share of Voice, and Citations.

| Parameter               | Type      | Required    | Description                                                                                                                |
| ----------------------- | --------- | ----------- | -------------------------------------------------------------------------------------------------------------------------- |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`. Omit to return all brands combined.                                                        |
| `metrics`               | string\[] | No          | `brand_visibility`, `citation_rate`, `mentions`, `share_of_voice`, `citations`, `share_of_citations`, `responses`, `tests` |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD). Defaults to last 30 days.                                                                         |
| `granularity`           | string    | No          | `total` (default), `daily`, `weekly`, `monthly`                                                                            |
| `groupBy`               | string\[] | No          | `llm_service`, `llm_model`, `country`, `language`, `topic`                                                                 |
| `filters`               | object    | No          | `llmService`, `llmModel`, `country`, `language`, `topic`, etc.                                                             |

### `get_citation_data`

Analyze citations at domain or URL level. Shows which domains and URLs are cited in AI responses.

| Parameter               | Type      | Required    | Description                                                        |
| ----------------------- | --------- | ----------- | ------------------------------------------------------------------ |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`                                     |
| `aggregateBy`           | string    | No          | `domain` (default) or `url`                                        |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD)                                            |
| `granularity`           | string    | No          | `total`, `daily`, `weekly`, `monthly`                              |
| `groupBy`               | string\[] | No          | `llm_service`, `llm_model`, `country`, etc.                        |
| `filters`               | object    | No          | `llmService`, `llmModel`, `promptId`, `domain`, `country`, `topic` |
| `limit`                 | number    | No          | Max results (default: 100)                                         |

### `analyze_brand_mentions`

Analyze brand mentions and competitor presence. Shows mention counts, sentiment scores, and share of voice.

| Parameter               | Type      | Required    | Description                                                |
| ----------------------- | --------- | ----------- | ---------------------------------------------------------- |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`                             |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD)                                    |
| `granularity`           | string    | No          | `total`, `daily`, `weekly`, `monthly`                      |
| `groupBy`               | string\[] | No          | `brand`, `llm_service`, `country`, `topic`                 |
| `filters`               | object    | No          | `llmService`, `llmModel`, `promptId`, `brand`, `sentiment` |
| `minMentions`           | number    | No          | Minimum mentions to include (default: 1)                   |
| `limit`                 | number    | No          | Max brands to return (default: 50)                         |

### `get_query_data`

Analyze search queries and their metadata. Shows query text, prompt count, intent, user journey stage, and brand mentions.

| Parameter   | Type      | Required    | Description                                                                    |
| ----------- | --------- | ----------- | ------------------------------------------------------------------------------ |
| `brands`    | string\[] | Recommended | Brand names from `list_brands`                                                 |
| `promptId`  | string    | No          | Filter by a specific prompt ID                                                 |
| `groupBy`   | string\[] | No          | `query`, `intent`, `userJourneyStage`, `category`                              |
| `filters`   | object    | No          | `intent`, `userJourneyStage`, `category`, `llmService`, `country`, `naicsCode` |
| `sortBy`    | string    | No          | `prompts` (default) or `query`                                                 |
| `minVolume` | number    | No          | Minimum search volume (default: 0)                                             |
| `limit`     | number    | No          | Max queries (default: 100)                                                     |

### `get_weekly_performance`

Get weekly performance trends over the last N weeks with week-over-week changes.

| Parameter   | Type      | Required    | Description                                     |
| ----------- | --------- | ----------- | ----------------------------------------------- |
| `brands`    | string\[] | Recommended | Brand names from `list_brands`                  |
| `weeksBack` | number    | No          | Number of weeks (default: 4, max: 52)           |
| `metrics`   | string\[] | No          | Metrics to track (defaults to all core metrics) |

***

## Webpage Analysis

### `webpage_audit`

Comprehensive LLM-friendliness audit — technical SEO, content quality, metadata, schemas, writing quality, citations, and tone.

| Parameter             | Type    | Required | Description                                       |
| --------------------- | ------- | -------- | ------------------------------------------------- |
| `url`                 | string  | Yes      | Full URL (must include `https://`)                |
| `includeCodeSnippets` | boolean | No       | Generate actionable code snippets (default: true) |

### `webpage_analyze_technical`

Focused technical analysis — metadata, structured data (JSON-LD, microdata), heading structure, accessibility, and technical SEO.

| Parameter             | Type    | Required | Description                                      |
| --------------------- | ------- | -------- | ------------------------------------------------ |
| `url`                 | string  | Yes      | Full URL (must include `https://`)               |
| `includeCodeSnippets` | boolean | No       | Generate technical code snippets (default: true) |

### `webpage_analyze_content`

Focused content analysis — heading format, content organization, data citations, tone, writing quality, and marketing messages.

| Parameter | Type   | Required | Description                        |
| --------- | ------ | -------- | ---------------------------------- |
| `url`     | string | Yes      | Full URL (must include `https://`) |

### `schema_optimizer`

Optimize Schema.org structured data. Returns quality score, proposed schemas, and implementation code.

| Parameter             | Type    | Required | Description                                  |
| --------------------- | ------- | -------- | -------------------------------------------- |
| `url`                 | string  | Yes      | Full URL (must include `https://`)           |
| `includeCodeSnippets` | boolean | No       | Generate implementation code (default: true) |

***

## Competitive Analysis

### `get_fanout_query_insights`

Analyze fan-out queries — the web searches LLMs perform when answering user questions. Shows which queries are most common and where your domain ranks.

| Parameter               | Type      | Required    | Description                                 |
| ----------------------- | --------- | ----------- | ------------------------------------------- |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`              |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD)                     |
| `limit`                 | number    | No          | Max fan-out queries to analyze (default: 5) |

### `get_competitive_gap`

Find prompts where competitors lead or where you're winning. Includes visibility comparison and optional AI recommendations.

| Parameter               | Type      | Required    | Description                                                              |
| ----------------------- | --------- | ----------- | ------------------------------------------------------------------------ |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`                                           |
| `promptId`              | string    | No          | Scope to a single prompt (expanded to its active cluster)                |
| `promptIds`             | string\[] | No          | Scope to multiple prompt IDs (expanded to clusters)                      |
| `aggregateBy`           | string    | No          | `cluster` (aggregate together, default) or `prompt` (per-prompt results) |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD). Defaults to last 30 days.                       |
| `includeAIAnalysis`     | boolean   | No          | Include AI analysis of competitor's top-ranking URL (default: false)     |

### `get_top_cited_url_per_prompt`

Get the #1 cited URL for each tracked prompt.

| Parameter               | Type      | Required    | Description                          |
| ----------------------- | --------- | ----------- | ------------------------------------ |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`       |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD)              |
| `limit`                 | number    | No          | Max prompts to analyze (default: 20) |

### `get_best_performing_prompt`

Find your best performing prompts based on visibility or citation rate.

| Parameter               | Type      | Required    | Description                                    |
| ----------------------- | --------- | ----------- | ---------------------------------------------- |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`                 |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD)                        |
| `metric`                | string    | No          | `visibility` (default), `citations`, or `both` |

### `get_period_comparison`

Compare current period metrics vs. previous period with trend analysis.

| Parameter    | Type      | Required    | Description                                                              |
| ------------ | --------- | ----------- | ------------------------------------------------------------------------ |
| `brands`     | string\[] | Recommended | Brand names from `list_brands`                                           |
| `periodDays` | number    | No          | Days per period (default: 30). Compares last N days vs. previous N days. |
| `metrics`    | string\[] | No          | Specific metrics to compare                                              |

***

## Advanced Analytics

### `get_competitor_insights`

Top cited domains and most mentioned brands for your tracked prompts.

| Parameter               | Type      | Required    | Description                             |
| ----------------------- | --------- | ----------- | --------------------------------------- |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`          |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD)                 |
| `topN`                  | number    | No          | Number of top competitors (default: 10) |

### `analyze_sentiment`

Sentiment of AI responses mentioning your brand. Shows positive/neutral/negative breakdown.

| Parameter               | Type      | Required    | Description                          |
| ----------------------- | --------- | ----------- | ------------------------------------ |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`       |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD)              |
| `groupBy`               | string    | No          | `llm_service`, `topic`, or `country` |

### `find_content_opportunities`

Topics with high query volume but low brand visibility — your biggest growth opportunities.

| Parameter               | Type      | Required    | Description                                             |
| ----------------------- | --------- | ----------- | ------------------------------------------------------- |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`                          |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD)                                 |
| `minMentions`           | number    | No          | Minimum response count to consider a topic (default: 3) |

### `get_analytics_summary`

High-level analytics summary with overall metrics and top topics.

| Parameter               | Type      | Required    | Description                                              |
| ----------------------- | --------- | ----------- | -------------------------------------------------------- |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`                           |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD)                                  |
| `groupBy`               | string    | No          | `llm_service`, `country`, `language`, `topic`, or `date` |

***

## Strategic Tools

### `generate_strategic_action_plan`

Generate a priority-ranked action plan with improvement potential scores.

| Parameter               | Type      | Required    | Description                                                             |
| ----------------------- | --------- | ----------- | ----------------------------------------------------------------------- |
| `brands`                | string\[] | Recommended | Brand names from `list_brands`                                          |
| `focusArea`             | string    | No          | `all` (default), `visibility`, `citations`, `sentiment`, `content_gaps` |
| `maxRecommendations`    | number    | No          | Max items (default: 5, max: 10)                                         |
| `competitorUrls`        | string\[] | No          | Specific competitor URLs to analyze                                     |
| `startDate` / `endDate` | string    | No          | Date range (YYYY-MM-DD). Defaults to last 30 days.                      |

***

## Account Management

<Warning>
  These tools modify your account. They require **write permissions** on your API key. See [API Key Permissions](/mcp/setup#api-key-permissions) for setup instructions. Deletion is not supported — use `pause_prompts` instead.
</Warning>

### `create_brand`

Create a new brand/domain in your organization. Triggers brand analysis (website scanning, competitor detection, industry classification) and prompt generation in the background. Returns immediately — use `get_brand_setup_status` to poll for completion.

**Permission required:** `write:brands`

| Parameter     | Type   | Required | Description                                                                          |
| ------------- | ------ | -------- | ------------------------------------------------------------------------------------ |
| `brandName`   | string | Yes      | Brand or company name                                                                |
| `website`     | string | Yes      | Website URL (e.g. `https://superlines.io`)                                           |
| `country`     | string | No       | Target country (e.g. `United States`)                                                |
| `language`    | string | No       | Target language (e.g. `English`)                                                     |
| `competitors` | array  | No       | List of competitors (`name` required, `website` optional). Auto-detected if omitted. |
| `industry`    | string | No       | Industry vertical (auto-detected if omitted)                                         |

<Note>
  Brand creation is **idempotent** — if a brand with the same domain already exists, the existing brand is returned instead of creating a duplicate.
</Note>

### `get_brand_setup_status`

Check the progress of brand setup after `create_brand`. Returns analysis status, prompt generation status, and whether the brand is ready for analytics.

| Parameter  | Type   | Required | Description                              |
| ---------- | ------ | -------- | ---------------------------------------- |
| `domainId` | string | Yes      | The domain ID returned by `create_brand` |

### `add_prompts`

Add tracking prompts to a brand. Prompts are the search queries that Superlines monitors across AI platforms (ChatGPT, Gemini, Perplexity, etc). Each prompt is created as active and included in the next crawl cycle. Maximum 50 prompts per call.

**Permission required:** `write:prompts`

| Parameter          | Type   | Required | Description                                        |
| ------------------ | ------ | -------- | -------------------------------------------------- |
| `domainId`         | string | Yes      | Domain ID from `list_brands`                       |
| `prompts`          | array  | Yes      | Array of prompt objects (1-50)                     |
| `prompts[].text`   | string | Yes      | The prompt text (max 500 chars)                    |
| `prompts[].label`  | string | No       | Label/category (e.g. `product`, `brand`)           |
| `prompts[].intent` | string | No       | Search intent (e.g. `informational`, `commercial`) |

<Note>
  Duplicate prompts are automatically detected and skipped. Your organization's prompt quota is enforced.
</Note>

### `pause_prompts`

Pause active prompts so they stop being crawled. Paused prompts are not deleted and can be reactivated with `unpause_prompts`. Filter by specific IDs or by label.

**Permission required:** `write:prompts`

| Parameter   | Type      | Required | Description                              |
| ----------- | --------- | -------- | ---------------------------------------- |
| `domainId`  | string    | Yes      | Domain ID from `list_brands`             |
| `promptIds` | string\[] | No       | Specific prompt IDs to pause             |
| `label`     | string    | No       | Pause all active prompts with this label |

### `unpause_prompts`

Reactivate paused prompts so they resume being crawled. Checks your prompt quota before reactivating.

**Permission required:** `write:prompts`

| Parameter   | Type      | Required | Description                                |
| ----------- | --------- | -------- | ------------------------------------------ |
| `domainId`  | string    | Yes      | Domain ID from `list_brands`               |
| `promptIds` | string\[] | No       | Specific prompt IDs to unpause             |
| `label`     | string    | No       | Unpause all paused prompts with this label |

### `update_prompt_labels`

Add, remove, or set labels on prompts. Labels help organize prompts into categories for filtering in analytics.

**Permission required:** `write:prompts`

| Parameter   | Type      | Required | Description                                               |
| ----------- | --------- | -------- | --------------------------------------------------------- |
| `domainId`  | string    | Yes      | Domain ID from `list_brands`                              |
| `promptIds` | string\[] | Yes      | Prompt IDs to update (max 100)                            |
| `label`     | string    | Yes      | The label to add, remove, or set                          |
| `action`    | string    | No       | `set` (default — replaces all labels), `add`, or `remove` |
