# RanklyBee (remote · api.ranklybee.com)

SEO research, AI visibility, content, leads, and backlink workflows. Sign in with RanklyBee OAuth.

- Trust score: 31/100 (low)
- Change this week: 0
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- remote · `api.ranklybee.com`: 31/100 (this document), [markdown](https://verifymcp.io/servers/dazhiyu0235-ranklybee/api.md), [page](https://verifymcp.io/servers/dazhiyu0235-ranklybee/api)

## Channel facts

- Endpoint: `https://api.ranklybee.com/mcp`
- Transports: `streamable-http`
- Auth: `required`
- Version: `0.3.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Endpoint Security**: 78/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata.
  - HTTPS enforcement could not be verified: the plaintext port answered with HTTP 401, which proves neither a plaintext path nor enforcement.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
  - The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents.
- **Transport & Reachability**: 0/100
  - Transport blocked by authentication: the endpoint requires auth we don't have to verify streamable-http.
- **Schema Quality & AI Usability**: 0/100
  - Schema blocked by authentication: the endpoint requires auth we don't have to read it.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.
- **Tool Safety**: 0/100
  - Tool safety blocked by authentication: the endpoint requires auth we don't have to read its tools.
- **Capabilities**: 0/100
  - Capabilities blocked by authentication: the endpoint requires auth we don't have to read them.

**Unverified: 6 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### How do I install the RanklyBee MCP server?

RanklyBee is a hosted endpoint at https://api.ranklybee.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http dazhiyu0235-ranklybee 'https://api.ranklybee.com/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "dazhiyu0235-ranklybee": {
      "url": "https://api.ranklybee.com/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "dazhiyu0235-ranklybee": {
      "type": "http",
      "url": "https://api.ranklybee.com/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.dazhiyu0235-ranklybee]
url = "https://api.ranklybee.com/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "dazhiyu0235-ranklybee": {
      "type": "remote",
      "url": "https://api.ranklybee.com/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add dazhiyu0235-ranklybee --url 'https://api.ranklybee.com/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  dazhiyu0235-ranklybee:
    url: "https://api.ranklybee.com/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "dazhiyu0235-ranklybee": {
      "Transport": "http",
      "Url": "https://api.ranklybee.com/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add dazhiyu0235-ranklybee -t streamable-http -u 'https://api.ranklybee.com/mcp'
```

### Other

```json
{
  "mcpServers": {
    "dazhiyu0235-ranklybee": {
      "type": "http",
      "url": "https://api.ranklybee.com/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-27 (score 31, −25)

- [security regression] Endpoint reachability: reachable → behind authorisation
- [security regression] Tool safety: pass → unverified
- [security regression] Transport: pass → unverified
- [security regression] Stability: 0.20 → unverified
- [security improvement] Authorization: fail → pass
- [security] First check of Authorization: partial
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional] First check of Schema quality: unverified

### 2026-10-26 (score 56, +1)

No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-24 (score 55, +1)

No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-10-22 (score 54, +1)

- [cosmetic] “get_backlinks_overview” added an optional parameter “from”
- [cosmetic] “get_backlinks_overview” added an optional parameter “to”
- [cosmetic] “get_leads_overview” added an optional parameter “from”
- [cosmetic] “get_leads_overview” added an optional parameter “to”
- [cosmetic] “get_outreach_automation_overview” added an optional parameter “from”
- [cosmetic] “get_outreach_automation_overview” added an optional parameter “to”
- [cosmetic] “get_search_performance” added an optional parameter “from”
- [cosmetic] “get_search_performance” added an optional parameter “to”
- [cosmetic] “get_outreach_automation_overview” dropped the optional parameter “rangeDays”

### 2026-10-21 (score 53, 0)

- [functional improvement] Stability: unverified → 0.03

### 2026-10-20 (score 53)

First indexed and scored.

## MCP tools (194)

### `list_projects` (~28 tokens)

List Ranklybee Projects

List the signed-in user's Projects with their role and websites. Start here to get a projectId.

### `list_backlink_submission_projects` (~36 tokens)

List available Ranklybee Projects

List the signed-in user's Projects and their active Site details so the user can choose a target without knowing an internal Project ID.

### `get_backlink_submission_profile` (~40 tokens)

Get confirmed backlink submission profile

Read the current active Site's backlink submission profile and readiness state.

Input parameters:

- `projectId` (string, required)
- `siteId` (string)

### `list_backlink_submission_sources` (~61 tokens)

List eligible backlink sources

List visible, available backlink sources that have a supported submission destination.

Input parameters:

- `limit` (integer)
- `page` (integer)
- `projectId` (string, required)
- `search` (string)
- `sourceType` (string)

### `preflight_backlink_submission` (~59 tokens)

Preflight a backlink submission

Check paid access, profile confirmation, source policy, inventory, duplicate backlinks, and daily capacity before creating a submission job.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)
- `sourceId` (string, required)

### `create_backlink_submission` (~75 tokens)

Create a backlink submission job

After user review and approval, create one idempotent submission job in waiting_human state. This does not click the third-party site's final submit button.

Input parameters:

- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `sourceId` (string, required)

### `get_backlink_submission` (~39 tokens)

Get backlink submission status

Read the current state and recorded outcome of a backlink submission job.

Input parameters:

- `jobId` (string, required)
- `projectId` (string, required)

### `record_backlink_submission_outcome` (~81 tokens)

Record backlink submission outcome

Record the result after a user-approved browser interaction. Use needs_verification for CAPTCHA, MFA, email verification, rate limits, or ambiguous results.

Input parameters:

- `externalReference`
- `externalUrl`
- `jobId` (string, required)
- `message`
- `projectId` (string, required)
- `status` (string, required)

### `list_leads` (~92 tokens)

List Ranklybee leads

List scored leads for a Project, newest first. Filter by tier (hot, warm, explore), stage, platform, or text. Each lead has the evidence quote that shows the buying intent and a link to the original post.

Input parameters:

- `filters` (object)
- `limit` (integer)
- `page` (integer)
- `projectId` (string, required)
- `siteId` (string)

### `get_lead` (~42 tokens)

Get a Ranklybee lead

Read one lead with its score, evidence quote, reason, stage, and link.

Input parameters:

- `leadId` (string, required)
- `projectId` (string, required)

### `list_lead_keywords` (~32 tokens)

List Ranklybee lead keywords

List the monitoring keywords (search phrases and platforms) for a Project.

Input parameters:

- `projectId` (string, required)

### `move_lead_stage` (~64 tokens)

Move a Ranklybee lead to a stage

Move a lead to to_qualify, to_contact, in_conversation, or closed. This fires any stage-changed automations the user configured.

Input parameters:

- `leadId` (string, required)
- `projectId` (string, required)
- `stage` (string, required)

### `list_sites` (~33 tokens)

List a Project's websites

List the websites in a Project. Most tools need a siteId from this list.

Input parameters:

- `projectId` (string, required)

### `get_site_profile` (~49 tokens)

Get the site profile

Read what Ranklybee knows about a website: positioning, audience, products, competitors, and the latest analysis job.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `update_site_profile` (~59 tokens)

Update the site profile

Replace the editable site profile. Read it with get_site_profile first and send every field back, changing only what the user asked for.

Input parameters:

- `profile` (object, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `analyze_site` (~64 tokens)

Re-analyze the website

Crawl the website again and rebuild its profile. Runs in the background; poll get_site_profile for the result.

Input parameters:

- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `reviewFoundation` (boolean)
- `siteId` (string, required)

### `get_plan_usage` (~33 tokens)

Get plan usage

Read how much of each plan allowance the Project has used in the current period.

Input parameters:

- `projectId` (string, required)

### `get_content_plan` (~46 tokens)

Get the content plan

Read the latest content plan for a website with its scheduled article briefs. Returns null when no plan exists.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `generate_content_plan` (~55 tokens)

Generate a content plan

Generate a new content plan from the site profile and keyword research. Uses the plan's content allowance.

Input parameters:

- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `activate_content_plan` (~48 tokens)

Start a content plan

Start a reviewed content plan so its briefs are written on their scheduled dates.

Input parameters:

- `planId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `decide_content_plan` (~56 tokens)

Approve or reject a content plan

Approve or reject a whole content plan.

Input parameters:

- `decision` (string, required)
- `planId` (string, required)
- `projectId` (string, required)
- `reason` (string)
- `siteId` (string, required)

### `decide_content_brief` (~68 tokens)

Approve or reject an article brief

Approve or reject one article brief in a content plan.

Input parameters:

- `briefId` (string, required)
- `decision` (string, required)
- `planId` (string, required)
- `projectId` (string, required)
- `reason` (string)
- `siteId` (string, required)

### `reschedule_content_brief` (~68 tokens)

Reschedule an article brief

Move an article brief to another date (YYYY-MM-DD) on the content calendar.

Input parameters:

- `briefId` (string, required)
- `planId` (string, required)
- `projectId` (string, required)
- `scheduledDate` (string, required)
- `siteId` (string, required)

### `update_content_brief_instructions` (~70 tokens)

Set writer instructions for a brief

Set the notes the writer follows for one article brief. Send an empty string to clear them.

Input parameters:

- `briefId` (string, required)
- `instructions` (string, required)
- `planId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `update_content_brief_keyword` (~59 tokens)

Change a brief's target keyword

Change the target keyword of one article brief.

Input parameters:

- `briefId` (string, required)
- `phrase` (string, required)
- `planId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `search_article_keywords` (~65 tokens)

Research article keywords

Look up keyword ideas for a seed phrase with volume, difficulty, and whether each is already in the plan. The ideas are saved to the website's keyword list.

Input parameters:

- `projectId` (string, required)
- `query` (string, required)
- `siteId` (string, required)

### `list_article_keywords` (~35 tokens)

List saved article keywords

List the keywords saved for a website's articles.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `add_article_keywords` (~65 tokens)

Add keywords to the content plan

Add keywords to the content plan as article briefs, optionally on a given date. Returns the keywords that were skipped and why.

Input parameters:

- `phrases` (array, required)
- `projectId` (string, required)
- `scheduledDate` (string)
- `siteId` (string, required)

### `import_article_keywords` (~46 tokens)

Save article keywords

Save keywords to the website's keyword list without scheduling articles for them.

Input parameters:

- `phrases` (array, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `remove_article_keywords` (~42 tokens)

Remove saved article keywords

Remove keywords from the website's saved keyword list.

Input parameters:

- `phrases` (array, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `list_articles` (~79 tokens)

List articles

List a website's articles, newest first, with their state and publication. Each item is large, so pass a small limit such as 10 and page with offset.

Input parameters:

- `limit` (integer)
- `offset` (integer)
- `projectId` (string, required)
- `search` (string)
- `siteId` (string, required)

### `get_article` (~47 tokens)

Get an article

Read one article with its full content, quality checks, and publication state.

Input parameters:

- `assetId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `generate_article` (~66 tokens)

Write an article from a brief

Write the article for an approved brief. Uses the plan's article allowance and takes a few minutes; poll get_article.

Input parameters:

- `briefId` (string, required)
- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `update_article` (~59 tokens)

Edit an article

Replace an article's editable content. Read it with get_article first and send every content field back.

Input parameters:

- `assetId` (string, required)
- `content` (object, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `regenerate_article_fields` (~60 tokens)

Rewrite parts of an article

Rewrite the chosen fields of an article with AI.

Input parameters:

- `assetId` (string, required)
- `fields` (array, required)
- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `submit_article_for_review` (~43 tokens)

Submit an article for approval

Send a draft article to the approval step.

Input parameters:

- `assetId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `decide_article` (~58 tokens)

Approve or reject an article

Approve or reject an article that is waiting for approval.

Input parameters:

- `assetId` (string, required)
- `decision` (string, required)
- `projectId` (string, required)
- `reason` (string)
- `siteId` (string, required)

### `list_cms_connections` (~37 tokens)

List CMS connections

List the CMS connections an article can be published to.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `publish_article` (~75 tokens)

Publish an article

Publish an approved article to a connected CMS. The article goes live on the user's website, so confirm with the user first.

Input parameters:

- `assetId` (string, required)
- `connectionId` (string, required)
- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `verify_article_publication` (~69 tokens)

Record a published article URL

Record the live URL of an article the user published by hand, after checking the page.

Input parameters:

- `assetId` (string, required)
- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `url` (string, required)

### `delete_article` (~52 tokens)

Delete an article

Delete an article from Ranklybee. This does not remove a page already published on the website.

Input parameters:

- `assetId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `get_article_improvements` (~41 tokens)

Get article improvements

Read the refresh opportunities found for published articles and the state of each improvement.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `detect_article_improvements` (~47 tokens)

Look for article improvements

Scan published articles against search data for new refresh opportunities.

Input parameters:

- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `generate_article_improvement` (~55 tokens)

Draft an article improvement

Write the improved version of an article for one opportunity.

Input parameters:

- `idempotencyKey` (string, required)
- `improvementId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `update_article_improvement` (~55 tokens)

Edit an article improvement

Replace the drafted content of an improvement. Send every content field back.

Input parameters:

- `content` (object, required)
- `improvementId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `submit_article_improvement` (~43 tokens)

Submit an improvement for approval

Send a drafted improvement to the approval step.

Input parameters:

- `improvementId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `decide_article_improvement` (~60 tokens)

Approve or reject an improvement

Approve or reject an improvement that is waiting for approval.

Input parameters:

- `decision` (string, required)
- `improvementId` (string, required)
- `projectId` (string, required)
- `reason` (string)
- `siteId` (string, required)

### `apply_article_improvement` (~48 tokens)

Apply an approved improvement

Apply an approved improvement to its article. Confirm with the user first.

Input parameters:

- `improvementId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `compare_article_improvement` (~48 tokens)

Measure an applied improvement

Compare search performance before and after an applied improvement and record the result.

Input parameters:

- `improvementId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `dismiss_article_improvement` (~50 tokens)

Dismiss an improvement

Dismiss an improvement opportunity with a reason.

Input parameters:

- `improvementId` (string, required)
- `projectId` (string, required)
- `reason` (string, required)
- `siteId` (string, required)

### `get_content_automation` (~37 tokens)

Get content automation settings

Read the automatic writing and publishing schedule for a website.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `update_content_automation` (~107 tokens)

Update content automation settings

Replace the automatic writing and publishing schedule. Read it with get_content_automation first; auto_publish_approved publishes without a human review.

Input parameters:

- `defaultCmsConnectionId` (required)
- `enabled` (boolean, required)
- `generationLeadHours` (integer, required)
- `mode` (string, required)
- `projectId` (string, required)
- `publishTime` (string, required)
- `publishingDays` (array, required)
- `siteId` (string, required)
- `timezone` (string, required)

### `get_article_settings` (~45 tokens)

Get article writing settings

Read the writing preferences for a website: voice, structure, images, linking, and improvement rules.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `list_internal_link_targets` (~36 tokens)

List internal link targets

List the pages articles are allowed to link to.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `add_internal_link_target` (~50 tokens)

Add an internal link target

Add a page of the website that articles should link to.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)
- `title` (required)
- `url` (string, required)

### `remove_internal_link_target` (~41 tokens)

Remove an internal link target

Stop articles from linking to a page.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)
- `url` (string, required)

### `list_products` (~38 tokens)

List catalog products

List the products articles can feature.

Input parameters:

- `projectId` (string, required)
- `query` (string)
- `siteId` (string, required)

### `create_product` (~52 tokens)

Add a catalog product

Add a product to the catalog. Pass imageStorageKey as null.

Input parameters:

- `fields` (object, required)
- `imageStorageKey` (required)
- `projectId` (string, required)
- `siteId` (string, required)

### `update_product` (~57 tokens)

Edit a catalog product

Replace a product's fields. Send every field back.

Input parameters:

- `fields` (object, required)
- `imageStorageKey`
- `productId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `set_product_status` (~48 tokens)

Show or hide a catalog product

Set whether articles may feature a product.

Input parameters:

- `productId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `status` (string, required)

### `delete_product` (~39 tokens)

Delete a catalog product

Delete a product from the catalog.

Input parameters:

- `productId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `get_backlinks_overview` (~55 tokens)

Get the backlinks overview

Read totals for tracked backlinks, their health, and open replacement tasks.

Input parameters:

- `from` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `to` (string)

### `list_backlinks` (~144 tokens)

List tracked backlinks

List the backlinks Ranklybee tracks for a website, with status and latest check.

Input parameters:

- `categories` (array)
- `dofollow` (string)
- `maximumDomainRating` (integer)
- `maximumTraffic` (integer)
- `minimumDomainRating` (integer)
- `minimumTraffic` (integer)
- `page` (integer)
- `perPage` (integer)
- `pricingModes` (array)
- `projectId` (string, required)
- `search` (string)
- `siteId` (string, required)
- `sortBy` (string)
- `sortOrder` (string)
- `statuses` (array)

### `add_backlink` (~150 tokens)

Track a backlink

Start tracking a backlink: the page that links (sourceUrl) and the page it links to (targetUrl).

Input parameters:

- `category` (string)
- `contentAssetId` (string)
- `expectedAnchor` (string)
- `expectedRel` (array)
- `priceAmountMinor` (integer)
- `priceCurrency` (string)
- `pricingMode` (string)
- `pricingSource` (string)
- `projectId` (string, required)
- `prospectId`
- `siteId` (string, required)
- `source` (string, required)
- `sourceUrl` (string, required)
- `targetUrl` (string, required)
- `threadId` (string)

### `check_backlink` (~56 tokens)

Check a backlink now

Fetch the linking page and record whether the backlink is still live.

Input parameters:

- `backlinkId` (string, required)
- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `check_site_backlinks` (~48 tokens)

Check all backlinks now

Queue a live check for every tracked backlink of a website.

Input parameters:

- `idempotencyPrefix` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `update_backlink_task` (~73 tokens)

Update a backlink replacement task

Change the status or notes of a task opened for a lost backlink.

Input parameters:

- `assigneeUserId` (string)
- `projectId` (string, required)
- `resolutionNotes` (string)
- `siteId` (string, required)
- `status` (string, required)
- `taskId` (string, required)

### `close_backlink` (~48 tokens)

Stop tracking a backlink

Close a tracked backlink with a reason.

Input parameters:

- `backlinkId` (string, required)
- `projectId` (string, required)
- `reason` (string, required)
- `siteId` (string, required)

### `get_backlink_inventory_status` (~38 tokens)

Get backlink inventory status

Read whether the website's existing backlinks have been imported.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `start_backlink_inventory` (~37 tokens)

Import existing backlinks

Import the website's existing backlinks so duplicates are detected.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `list_featured_backlinks` (~126 tokens)

Browse the backlink source library

Search Ranklybee's library of directories and other backlink sources, with quality, pricing, and link type.

Input parameters:

- `accountRequirements` (array)
- `linkTypes` (array)
- `page` (integer)
- `perPage` (integer)
- `pricingModels` (array)
- `projectId` (string, required)
- `search` (string)
- `siteId` (string, required)
- `sortBy` (string)
- `sortOrder` (string)
- `sourceType` (string)
- `view` (string)

### `get_prospecting_summary` (~36 tokens)

Get the prospecting summary

Read prospect counts by status for a website.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `list_prospects` (~157 tokens)

List outreach prospects

List link prospects with scores, status, and contact. Filter by status, keyword, or Domain Rating.

Input parameters:

- `competitorDomain` (string)
- `contact` (string)
- `keyword` (string)
- `maxDomainRating` (integer)
- `minDomainRating` (integer)
- `page` (integer)
- `pageType` (string)
- `perPage` (integer)
- `projectId` (string, required)
- `search` (string)
- `siteId` (string, required)
- `sortBy` (string)
- `sortOrder` (string)
- `sourceJobId` (string)
- `sourceMode` (string)
- `statuses` (array)

### `get_prospect_discovery_settings` (~41 tokens)

Get prospect discovery settings

Read the Domain Rating range and page types used to find prospects.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `update_prospect_discovery_settings` (~66 tokens)

Update prospect discovery settings

Replace the settings used to find prospects. Send every field.

Input parameters:

- `maxDomainRating` (integer, required)
- `minDomainRating` (integer, required)
- `pageTypes` (array, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `list_outreach_keywords` (~36 tokens)

List outreach keywords

List the keywords used to search for link prospects.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `add_outreach_keywords` (~41 tokens)

Add outreach keywords

Add keywords to search for link prospects.

Input parameters:

- `phrases` (array, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `remove_outreach_keyword` (~40 tokens)

Remove an outreach keyword

Remove one prospecting keyword.

Input parameters:

- `keywordId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `list_linkable_assets` (~35 tokens)

List linkable assets

List the pages the user pitches in outreach.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `save_linkable_asset` (~77 tokens)

Save a linkable asset

Add or update a page worth pitching, with what makes it link-worthy.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)
- `summary` (string, required)
- `title` (string, required)
- `type` (string, required)
- `uniqueValue` (string, required)
- `url` (string, required)

### `add_prospect` (~43 tokens)

Add a prospect by URL

Add a page as a link prospect and score it.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)
- `url` (string, required)

### `start_prospect_discovery` (~88 tokens)

Find prospects by keyword

Search the web for link prospects. Runs in the background; poll get_prospect_discovery with the returned job. Uses the plan's prospecting allowance.

Input parameters:

- `confirmedKeywords` (array)
- `goal` (string)
- `projectId` (string, required)
- `refresh` (boolean)
- `selectedKeywords` (array)
- `siteId` (string, required)

### `start_competitor_backlink_discovery` (~70 tokens)

Find prospects from competitor backlinks

Find prospects among the sites that link to the given competitor domains. Runs in the background.

Input parameters:

- `competitorDomains` (array, required)
- `goal` (string)
- `projectId` (string, required)
- `refresh` (boolean)
- `siteId` (string, required)

### `get_prospect_discovery` (~46 tokens)

Get a prospect discovery job

Read the progress and result counts of a discovery job.

Input parameters:

- `jobId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `reject_prospect` (~58 tokens)

Reject a prospect or block its domain

Reject one prospect, or block its whole domain from future discovery (a reason is required to block).

Input parameters:

- `decision` (required)
- `projectId` (string, required)
- `prospectId` (string, required)
- `siteId` (string, required)

### `unblock_prospect_domain` (~45 tokens)

Unblock a prospect's domain

Allow a previously blocked domain to appear in discovery again.

Input parameters:

- `projectId` (string, required)
- `prospectId` (string, required)
- `siteId` (string, required)

### `list_contacts` (~89 tokens)

List outreach contacts

List the people found for outreach, with email verification status.

Input parameters:

- `page` (integer)
- `perPage` (integer)
- `projectId` (string, required)
- `search` (string)
- `siteId` (string, required)
- `sortBy` (string)
- `sortOrder` (string)
- `statuses` (array)
- `verificationStatuses` (array)

### `create_contact` (~106 tokens)

Add an outreach contact

Add a contact by hand.

Input parameters:

- `company` (string)
- `email` (string, required)
- `fullName` (string, required)
- `projectId` (string, required)
- `prospectId` (string, required)
- `role` (string, required)
- `roleCategory` (string, required)
- `siteId` (string, required)
- `source` (string)
- `sourceProvider` (string)
- `sourceReference` (string)
- `sourceUrl` (string)

### `verify_contact` (~98 tokens)

Verify a contact's email

Check whether a contact's email address is deliverable.

Input parameters:

- `contactId` (string, required)
- `costMicros` (integer, required)
- `idempotencyKey` (string, required)
- `notes` (string)
- `projectId` (string, required)
- `provider` (string, required)
- `providerReference` (string)
- `siteId` (string, required)
- `source` (string, required)
- `status` (string, required)

### `find_prospect_contact` (~62 tokens)

Find a contact for a prospect

Look up who to email at a prospect's site. Uses the plan's contact allowance.

Input parameters:

- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `prospectId` (string, required)
- `siteId` (string, required)

### `select_prospect_contact` (~62 tokens)

Choose a prospect's contact

Set which email address outreach to a prospect goes to.

Input parameters:

- `email` (string, required)
- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `prospectId` (string, required)
- `siteId` (string, required)

### `suppress_contact` (~66 tokens)

Stop emailing a contact

Add a contact to the do-not-email list with a reason.

Input parameters:

- `contactId` (string, required)
- `projectId` (string, required)
- `reason` (string, required)
- `scope` (string, required)
- `siteId` (string, required)
- `source` (string)

### `list_outreach_templates` (~34 tokens)

List outreach templates

List the email templates available for outreach.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `create_outreach_template` (~62 tokens)

Create an outreach template

Create an email template.

Input parameters:

- `bodyTemplate` (string, required)
- `fallbackValues` (object)
- `name` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `subjectTemplate` (string, required)

### `update_outreach_template` (~72 tokens)

Edit an outreach template

Replace an email template's content.

Input parameters:

- `bodyTemplate` (string, required)
- `fallbackValues` (object)
- `name` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `subjectTemplate` (string, required)
- `templateId` (string, required)

### `delete_outreach_template` (~39 tokens)

Delete an outreach template

Delete an email template.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)
- `templateId` (string, required)

### `get_outreach_draft_options` (~40 tokens)

Get outreach draft options

List the sender identities and templates a new draft can use.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `list_outreach_threads` (~71 tokens)

List outreach threads

List outreach threads in one bucket (ready, queued, sent, or replied) with their draft and latest message.

Input parameters:

- `bucket` (string)
- `projectId` (string, required)
- `search` (string)
- `siteId` (string, required)
- `starredOnly` (boolean)

### `create_outreach_draft` (~87 tokens)

Draft an outreach email

Write a first email to a prospect's contact from a template and sender. Nothing is sent.

Input parameters:

- `contactId` (string, required)
- `generationMode` (string)
- `projectId` (string, required)
- `prospectId` (string, required)
- `senderIdentityId` (string, required)
- `siteId` (string, required)
- `templateId` (string, required)

### `prepare_outreach_draft` (~67 tokens)

Draft an outreach email automatically

Write a first email to a prospect's contact, letting Ranklybee pick the sender and template. Nothing is sent.

Input parameters:

- `contactId` (string, required)
- `projectId` (string, required)
- `prospectId` (string, required)
- `siteId` (string, required)

### `update_outreach_draft` (~60 tokens)

Edit an outreach draft

Replace the subject and body of an unsent draft.

Input parameters:

- `body` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `subject` (string, required)
- `threadId` (string, required)

### `regenerate_outreach_draft` (~51 tokens)

Rewrite an outreach draft

Rewrite an unsent draft following an instruction.

Input parameters:

- `instruction` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `threadId` (string, required)

### `mark_outreach_won` (~72 tokens)

Mark an outreach thread as won

Record that the outreach earned a link and start tracking that backlink.

Input parameters:

- `expectedAnchor` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `sourceUrl` (string, required)
- `targetUrl` (string, required)
- `threadId` (string, required)

### `mark_outreach_lost` (~53 tokens)

Mark an outreach thread as lost

Close an outreach thread that did not earn a link.

Input parameters:

- `projectId` (string, required)
- `reason` (string)
- `siteId` (string, required)
- `threadId` (string, required)

### `reopen_outreach_thread` (~45 tokens)

Reopen an outreach thread

Reopen a thread that was marked won or lost.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)
- `threadId` (string, required)

### `get_outreach_sending_dashboard` (~43 tokens)

Get the outreach sending dashboard

Read scheduled and sent emails, sender limits, and replies waiting for review.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `update_outreach_send_policy` (~93 tokens)

Update a sender's sending limits

Set the sending window, weekdays, and daily limit for one sender identity.

Input parameters:

- `allowedWeekdays` (array, required)
- `dailyLimit` (integer, required)
- `projectId` (string, required)
- `senderIdentityId` (string, required)
- `siteId` (string, required)
- `status` (string, required)
- `windowEndMinute` (integer, required)
- `windowStartMinute` (integer, required)

### `schedule_outreach` (~106 tokens)

Send or schedule an outreach email

Schedule a drafted thread with up to two follow-ups. mode=live emails a real person from the user's mailbox; show the user the exact email and get approval first. mode=simulation sends nothing.

Input parameters:

- `followUps` (array)
- `idempotencyKey` (string, required)
- `mode` (string, required)
- `projectId` (string, required)
- `sendNow` (boolean)
- `siteId` (string, required)
- `threadId` (string, required)

### `schedule_outreach_batch` (~82 tokens)

Send or schedule several outreach emails

Schedule several drafted threads at once. mode=live emails real people; get the user's approval of every email first.

Input parameters:

- `followUps` (array)
- `idempotencyKey` (string, required)
- `mode` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `threadIds` (array, required)

### `send_outreach_follow_up` (~83 tokens)

Send a follow-up or reply

Send a message in an existing outreach thread from the user's mailbox. Get the user's approval of the exact text first.

Input parameters:

- `body` (string, required)
- `ccEmails` (array)
- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `threadId` (string, required)

### `review_outreach_reply` (~75 tokens)

Send or dismiss a suggested reply

Act on a reply Ranklybee drafted for an inbound email. action=send emails a real person; get the user's approval first.

Input parameters:

- `action` (string, required)
- `body` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `suggestionId` (string, required)

### `stop_outreach_sequence` (~50 tokens)

Stop an outreach sequence

Cancel the remaining emails of a scheduled sequence.

Input parameters:

- `projectId` (string, required)
- `reason` (string, required)
- `sequenceId` (string, required)
- `siteId` (string, required)

### `get_outreach_automation_overview` (~63 tokens)

Get the outreach automation overview

Read what the outreach agent did over the last 7, 30, or 90 days.

Input parameters:

- `from` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `to` (string)

### `get_outreach_automation_policy` (~39 tokens)

Get the outreach automation policy

Read whether the outreach agent is running and its limits.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `list_outreach_automation_runs` (~36 tokens)

List outreach automation runs

List recent runs of the outreach agent.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `list_outreach_automation_exceptions` (~50 tokens)

List outreach automation exceptions

List the cases the outreach agent stopped on and left for a human.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)
- `statuses` (array)

### `set_outreach_automation_status` (~54 tokens)

Pause or resume outreach automation

Pause or resume the outreach agent. While active it finds prospects and sends emails on its own.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)
- `status` (string, required)

### `update_outreach_automation_exception` (~66 tokens)

Resolve an outreach automation exception

Change the status or notes of an exception.

Input parameters:

- `assigneeUserId`
- `exceptionId` (string, required)
- `projectId` (string, required)
- `resolutionNotes`
- `siteId` (string, required)
- `status` (string, required)

### `get_leads_overview` (~59 tokens)

Get the leads overview

Read lead counts by tier and stage, the monitor state, keywords, and customer profiles.

Input parameters:

- `from` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `to` (string)

### `get_brand_mentions_overview` (~37 tokens)

Get the brand mentions overview

Read how often and where the brand is mentioned.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `list_mentions` (~193 tokens)

List mentions

List collected posts that matched a keyword, including brand mentions that are not leads.

Input parameters:

- `commentsMax` (integer)
- `commentsMin` (integer)
- `dateFrom` (string)
- `dateTo` (string)
- `favorites` (boolean)
- `keywordId` (string)
- `needsResponse` (boolean)
- `orders` (array)
- `page` (integer)
- `pageSize` (integer)
- `platform` (string)
- `projectId` (string, required)
- `purpose` (string)
- `scoreMax` (integer)
- `scoreMin` (integer)
- `search` (string)
- `sentiment` (string)
- `siteId` (string, required)
- `sort` (string)
- `sources` (array)
- `upvotesMax` (integer)
- `upvotesMin` (integer)

### `run_lead_scan` (~45 tokens)

Scan for leads now

Search the monitored platforms now and score what is found. Uses the plan's lead scan allowance.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `set_lead_feedback` (~56 tokens)

Rate a lead

Tell Ranklybee whether a lead was a good match so scoring improves.

Input parameters:

- `feedback` (string, required)
- `mentionId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `set_lead_favorite` (~52 tokens)

Star a lead

Add or remove a lead from the user's favorites.

Input parameters:

- `favorite` (boolean, required)
- `mentionId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `dismiss_lead` (~41 tokens)

Dismiss a lead

Hide a lead that is not relevant.

Input parameters:

- `mentionId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `restore_lead` (~39 tokens)

Restore a dismissed lead

Bring back a dismissed lead.

Input parameters:

- `mentionId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `generate_lead_reply` (~81 tokens)

Draft a reply to a lead

Draft a reply to a lead's post in the chosen tone. Nothing is posted; the user posts it themselves.

Input parameters:

- `idempotencyKey` (string, required)
- `mentionId` (string, required)
- `projectId` (string, required)
- `regenerate` (boolean)
- `siteId` (string, required)
- `tone` (string)

### `update_lead_reply` (~63 tokens)

Edit or resolve a lead reply

Edit a drafted reply, or record that the user posted or dismissed it.

Input parameters:

- `action` (string, required)
- `body` (string)
- `mentionId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `create_lead_keyword` (~46 tokens)

Add a lead keyword

Add a keyword to monitor, with its search phrases and platforms.

Input parameters:

- `keyword` (object, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `update_lead_keyword` (~50 tokens)

Edit a lead keyword

Replace a monitoring keyword's phrases and platforms.

Input parameters:

- `keyword` (object, required)
- `keywordId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `set_lead_keyword_status` (~50 tokens)

Pause or resume a lead keyword

Pause or resume monitoring for one keyword.

Input parameters:

- `keywordId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `status` (string, required)

### `delete_lead_keyword` (~39 tokens)

Delete a lead keyword

Delete a monitoring keyword.

Input parameters:

- `keywordId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `create_lead_icp` (~45 tokens)

Add an ideal customer profile

Add a customer profile that leads are scored against.

Input parameters:

- `icp` (object, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `update_lead_icp` (~49 tokens)

Edit an ideal customer profile

Replace a customer profile.

Input parameters:

- `icp` (object, required)
- `icpId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `delete_lead_icp` (~41 tokens)

Delete an ideal customer profile

Delete a customer profile.

Input parameters:

- `icpId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `update_lead_sources` (~41 tokens)

Choose the lead platforms

Set which platforms are searched for leads.

Input parameters:

- `platforms` (array, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `update_lead_monitor` (~53 tokens)

Update the lead monitor

Set how often leads are scanned and whether the monitor is active.

Input parameters:

- `frequency` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `status` (string, required)

### `list_lead_alert_rules` (~38 tokens)

List lead alert rules

List the rules that notify the user about new leads.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `create_lead_alert_rule` (~47 tokens)

Create a lead alert rule

Create a rule that notifies a channel when matching leads arrive.

Input parameters:

- `projectId` (string, required)
- `rule` (object, required)
- `siteId` (string, required)

### `set_lead_alert_rule_status` (~50 tokens)

Pause or resume a lead alert rule

Pause or resume one alert rule.

Input parameters:

- `projectId` (string, required)
- `ruleId` (string, required)
- `siteId` (string, required)
- `status` (string, required)

### `delete_lead_alert_rule` (~40 tokens)

Delete a lead alert rule

Delete an alert rule.

Input parameters:

- `projectId` (string, required)
- `ruleId` (string, required)
- `siteId` (string, required)

### `get_ai_visibility_overview` (~75 tokens)

Get the AI visibility overview

Read how often AI assistants mention the brand: visibility, share of voice, position, and trend.

Input parameters:

- `categories` (array)
- `engines` (array)
- `from` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `to` (string)

### `list_ai_visibility_prompts` (~71 tokens)

List AI visibility prompts

List the tracked prompts with visibility, position, and the brands each answer names.

Input parameters:

- `engine` (string)
- `engines` (array)
- `from` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `to` (string)

### `list_ai_visibility_prompt_runs` (~74 tokens)

List runs of an AI visibility prompt

List the recorded answers for one prompt across AI engines.

Input parameters:

- `engine` (string)
- `engines` (array)
- `from` (string)
- `monitorId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `to` (string)

### `get_ai_visibility_competitors` (~97 tokens)

Compare AI visibility with competitors

Read the ranking of brands in AI answers, share of voice, and head-to-head prompts.

Input parameters:

- `category` (string)
- `compare` (array)
- `engine` (string)
- `engines` (array)
- `from` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `sovScope` (string)
- `to` (string)

### `get_ai_visibility_competitor` (~99 tokens)

Get one competitor's AI visibility

Read one brand's visibility against the user's, with the prompts and sources behind it. brandKey comes from get_ai_visibility_competitors.

Input parameters:

- `brandKey` (string, required)
- `category` (string)
- `engine` (string)
- `engines` (array)
- `from` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `to` (string)

### `get_ai_visibility_citations` (~95 tokens)

Get AI citation sources

Read which domains and pages AI answers cite, and the domains that never mention the brand.

Input parameters:

- `categories` (array)
- `category` (string)
- `engine` (string)
- `engines` (array)
- `from` (string)
- `monitorId` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `to` (string)

### `get_ai_visibility_domain_pages` (~95 tokens)

List cited pages of a domain

List the pages of one domain that AI answers cite.

Input parameters:

- `categories` (array)
- `category` (string)
- `domain` (string, required)
- `engine` (string)
- `engines` (array)
- `from` (string)
- `monitorId` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `to` (string)

### `get_ai_sentiment_overview` (~70 tokens)

Get AI sentiment

Read how positively AI answers describe the brand and the themes driving it.

Input parameters:

- `engine` (string)
- `engines` (array)
- `from` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `to` (string)

### `get_ai_sentiment_driver` (~94 tokens)

Get an AI sentiment driver

Read one sentiment theme with quotes and suggested tasks; the summary and tasks are written on first read. themeKey comes from get_ai_sentiment_overview.

Input parameters:

- `engine` (string)
- `engines` (array)
- `from` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `themeKey` (string, required)
- `to` (string)

### `get_ai_sentiment_benchmark` (~76 tokens)

Benchmark AI sentiment against rivals

Compare how favorably AI answers describe the brand and its rivals.

Input parameters:

- `engine` (string)
- `engines` (array)
- `from` (string)
- `projectId` (string, required)
- `rival` (string)
- `siteId` (string, required)
- `to` (string)

### `get_ai_response` (~43 tokens)

Get an AI answer

Read the full text of one recorded AI answer.

Input parameters:

- `projectId` (string, required)
- `runId` (string, required)
- `siteId` (string, required)

### `suggest_ai_visibility_prompts` (~52 tokens)

Suggest AI visibility prompts

Ask AI for prompts worth tracking for the website. Nothing is tracked until you create them.

Input parameters:

- `description` (string)
- `projectId` (string, required)
- `siteId` (string, required)

### `create_ai_visibility_prompt` (~50 tokens)

Track an AI visibility prompt

Add a prompt to track across AI engines. Counts against the plan's prompt limit.

Input parameters:

- `monitor` (object, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `bulk_create_ai_visibility_prompts` (~52 tokens)

Track several AI visibility prompts

Add up to 100 prompts at once. Counts against the plan's prompt limit.

Input parameters:

- `monitors` (array, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `update_ai_visibility_prompt` (~48 tokens)

Edit an AI visibility prompt

Replace a tracked prompt's settings.

Input parameters:

- `monitor` (object, required)
- `monitorId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `set_ai_visibility_prompt_status` (~50 tokens)

Pause or resume an AI visibility prompt

Pause or resume tracking for one prompt.

Input parameters:

- `monitorId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `status` (string, required)

### `run_ai_visibility_prompt` (~57 tokens)

Run an AI visibility prompt now

Ask the AI engines one tracked prompt now and record the answers.

Input parameters:

- `idempotencyKey` (string, required)
- `monitorId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `delete_ai_visibility_prompt` (~42 tokens)

Delete an AI visibility prompt

Delete a tracked prompt and its history.

Input parameters:

- `monitorId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `exclude_ai_visibility_brand` (~41 tokens)

Exclude a brand from AI visibility

Leave a brand out of competitor comparisons.

Input parameters:

- `name` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `restore_ai_visibility_brand` (~43 tokens)

Restore an excluded brand

Bring an excluded brand back into competitor comparisons.

Input parameters:

- `normalizedName` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `add_ai_visibility_competitor` (~57 tokens)

Add a competitor

Save a brand seen in AI answers as a competitor in the site profile.

Input parameters:

- `domain` (string, required)
- `name` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `create_ai_visibility_topic` (~40 tokens)

Create a prompt topic

Create a topic to group prompts.

Input parameters:

- `name` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `rename_ai_visibility_topic` (~46 tokens)

Rename a prompt topic

Rename a prompt topic.

Input parameters:

- `name` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `topicId` (string, required)

### `delete_ai_visibility_topic` (~43 tokens)

Delete a prompt topic

Delete a topic. Its prompts are kept.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)
- `topicId` (string, required)

### `move_ai_visibility_prompts` (~57 tokens)

Move prompts to a topic

Move prompts into a topic, or pass topicId null to ungroup them.

Input parameters:

- `monitorIds` (array, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `topicId` (required)

### `set_ai_sentiment_task` (~53 tokens)

Mark an AI sentiment task

Mark a suggested sentiment task as done or not done.

Input parameters:

- `done` (boolean, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `taskId` (string, required)

### `get_search_performance` (~60 tokens)

Get search performance

Read Google Search Console clicks, impressions, top queries and pages, and whether the property is connected.

Input parameters:

- `from` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `to` (string)

### `sync_search_console` (~44 tokens)

Sync Search Console now

Pull the latest data from Google Search Console.

Input parameters:

- `idempotencyKey` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `get_seo_health` (~39 tokens)

Get SEO health

Read the latest search health report and open alerts for a website.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `list_ctr_opportunities` (~37 tokens)

List CTR opportunities

List pages that rank but get fewer clicks than expected.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `review_page_snippet` (~51 tokens)

Review a page's search snippet

Fetch a page and review its title and meta description against the queries it ranks for.

Input parameters:

- `pageUrl` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `list_seo_changes` (~40 tokens)

List logged SEO changes

List the on-page changes logged for a website and their measured effect.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `log_seo_change` (~89 tokens)

Log an SEO change

Record a change made to a page so its effect on search performance is measured.

Input parameters:

- `after`
- `before`
- `changedAt` (string)
- `confirmStacked` (boolean)
- `kind` (string, required)
- `note`
- `pageUrl` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `list_seo_diagnoses` (~38 tokens)

List traffic drop diagnoses

List the traffic drop diagnoses run for a website.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `get_seo_diagnosis` (~45 tokens)

Get a traffic drop diagnosis

Read one traffic drop diagnosis with its findings.

Input parameters:

- `diagnosisId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `start_seo_diagnosis` (~68 tokens)

Diagnose a traffic drop

Analyze a year of search data for the cause of a traffic drop, optionally for a date range (YYYY-MM-DD).

Input parameters:

- `projectId` (string, required)
- `rangeEnd` (string)
- `rangeStart` (string)
- `siteId` (string, required)

### `get_distribution_status` (~36 tokens)

Get distribution status

Read whether social distribution is connected and which accounts post.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `list_distribution_pages` (~37 tokens)

List pages available for distribution

List the website pages that can be turned into social posts.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `get_distribution_page_atoms` (~46 tokens)

Get a page's talking points

Read the talking points extracted from a page for social posts.

Input parameters:

- `pageUrl` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `atomize_distribution_page` (~45 tokens)

Extract a page's talking points

Read a page and extract talking points for social posts.

Input parameters:

- `pageUrl` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `list_distribution_campaigns` (~35 tokens)

List distribution campaigns

List the social distribution campaigns of a website.

Input parameters:

- `projectId` (string, required)
- `siteId` (string, required)

### `get_distribution_campaign` (~42 tokens)

Get a distribution campaign

Read one campaign with its schedule and posts.

Input parameters:

- `campaignId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `create_distribution_campaign` (~107 tokens)

Create a distribution campaign

Create a draft campaign that turns a page into scheduled social posts.

Input parameters:

- `accountIds` (array, required)
- `autoPublishAccountIds` (array)
- `cadence` (object, required)
- `endsAt` (required)
- `maxPostsPerAccount` (required)
- `mode` (string, required)
- `name` (string, required)
- `pageUrl` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `startsAt` (string, required)

### `update_distribution_campaign` (~109 tokens)

Edit a distribution campaign

Replace a draft campaign's settings.

Input parameters:

- `accountIds` (array, required)
- `autoPublishAccountIds` (array)
- `cadence` (object, required)
- `campaignId` (string, required)
- `endsAt` (required)
- `maxPostsPerAccount` (required)
- `mode` (string, required)
- `name` (string, required)
- `pageUrl` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)
- `startsAt` (string, required)

### `activate_distribution_campaign` (~61 tokens)

Start a distribution campaign

Start a campaign so its approved posts are published on schedule. Confirm with the user first.

Input parameters:

- `campaignId` (string, required)
- `confirmStackedChange` (boolean)
- `projectId` (string, required)
- `siteId` (string, required)

### `pause_distribution_campaign` (~38 tokens)

Pause a distribution campaign

Pause a running campaign.

Input parameters:

- `campaignId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `resume_distribution_campaign` (~38 tokens)

Resume a distribution campaign

Resume a paused campaign.

Input parameters:

- `campaignId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `cancel_distribution_campaign` (~47 tokens)

Cancel a distribution campaign

Cancel a campaign and remove its unpublished posts from the connected social scheduler.

Input parameters:

- `campaignId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `list_distribution_posts` (~58 tokens)

List distribution posts

List social posts by campaign, status, or platform.

Input parameters:

- `campaignId` (string)
- `platform` (string)
- `projectId` (string, required)
- `siteId` (string, required)
- `statuses` (array)

### `approve_distribution_posts` (~51 tokens)

Approve distribution posts

Approve posts for publishing to the user's social accounts. Show the user each post first.

Input parameters:

- `postIds` (array, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `edit_distribution_post` (~51 tokens)

Edit and approve a distribution post

Replace a post's text and approve it for publishing.

Input parameters:

- `body` (string, required)
- `postId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `reject_distribution_posts` (~41 tokens)

Reject distribution posts

Reject posts so they are not published.

Input parameters:

- `postIds` (array, required)
- `projectId` (string, required)
- `siteId` (string, required)

### `regenerate_distribution_post` (~40 tokens)

Rewrite a distribution post

Write a post again with AI.

Input parameters:

- `postId` (string, required)
- `projectId` (string, required)
- `siteId` (string, required)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/dazhiyu0235-ranklybee/api#diagnostics

## Score history

- 2026-11-05: 31
- 2026-11-04: 31
- 2026-11-03: 31
- 2026-11-02: 31
- 2026-11-01: 31
- 2026-10-31: 31
- 2026-10-30: 31
- 2026-10-29: 31
- 2026-10-28: 31
- 2026-10-27: 31
- 2026-10-26: 56
- 2026-10-25: 55
- 2026-10-24: 55
- 2026-10-23: 54
- 2026-10-22: 54
- 2026-10-21: 53
- 2026-10-20: 53

## Common questions

### What is the RanklyBee MCP server?

RanklyBee is an MCP server listed in the public MCP registry as io.github.dazhiyu0235/ranklybee. SEO research, AI visibility, content, leads, and backlink workflows. Sign in with RanklyBee OAuth. This page covers its hosted endpoint (https://api.ranklybee.com/mcp).

### Is the RanklyBee MCP server safe to use?

RanklyBee scores 31 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the RanklyBee MCP server expose?

RanklyBee exposes 194 tools: list_projects, list_backlink_submission_projects, get_backlink_submission_profile, list_backlink_submission_sources, preflight_backlink_submission, and 189 more. Their descriptions and schemas cost roughly 11,250 tokens of context every time the server is loaded.

### Does the RanklyBee MCP server require authentication?

Yes. RanklyBee asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

### Is the RanklyBee MCP server still maintained?

RanklyBee is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://api.ranklybee.com/mcp
- Website: https://ranklybee.com/mcp
- Changelog RSS feed: https://verifymcp.io/servers/dazhiyu0235-ranklybee/api.xml
- Changelog JSON feed: https://verifymcp.io/servers/dazhiyu0235-ranklybee/api.json
- HTML version of this page: https://verifymcp.io/servers/dazhiyu0235-ranklybee/api
