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

> ## Agent Instructions
> For SEO data and indexing, start with /seo-mcp/overview.md and /seo-mcp/connect.md, then read the focused server reference.
> The documentation search MCP at https://docs.crakseo.com/mcp searches documentation only. Product tools use https://crakseo.com/mcp/<server>.
> Check tool availability and API credit balance before paid calls. Request owner approval for paid indexing. Never invent prices, indexing guarantees or directory approval.

# Tool reference

> Every MCP tool on /api/mcp, grouped by family.

> [!NOTE]
>
> The agent, fleet, browser, workflow, Control Center, data, connection and mailbox families are available on legacy plans, and so are publishing, brand launch and social tools. New workspaces don't include agents or off-site posting; workspaces created before the CrakSEO launch keep them. Core, keyword, competitor, site SEO and indexing tools are registered for everyone.

Which tools you see depends on the key's scopes, whether it is bound to a project and agent, whether the project is a managed site, and which features the workspace has. Call `get_capabilities` to see the families registered for your key.

## Core (always)

`get_capabilities`, `list_projects`, `get_project`, `list_sites`, `list_site_pages`, `get_site_brand_context`, `list_keywords`

## Agents and fleet (`browser`, project-bound)

| Tool | Purpose |
| - | - |
| `list_agents` | The agent bound to this key |
| `get_agent_fleet` | Attached browsers, accounts, allowance and data destinations |
| `send_agent_message`, `read_agent_chat`, `list_agent_chats` | Chat with the bound agent |
| `stop_agent`, `resume_agent` | Stop everything the agent is doing (like Stop in its chat), and let it work again |
| `list_agent_accounts`, `remove_agent_account` | The account records in the agent's browsers; removing one deletes the record and its stored password, never the account on the website |
| `queue_signups`, `get_signup_queue`, `update_signup_queue` | The agent's sign-up queue: add sites, read progress and blocked items, pause or resume, and resolve, skip or mark done a blocked item |
| `browser_run_task` | Give the agent's browser one goal (for example "create an account on forum.example.com and verify it") and get a structured result back: outcome, reason, summary, username, profile URL and, with `outputSchema`, your own data. Browser Use's agent drives the agent's saved browser; passwords and emailed codes are filled without ever being shown. Pass `continueTaskId` to continue a previous task's browser conversation. Reuse `requestKey` to retry safely; without one, the same request within ten minutes returns the same task |
| `browser_task_status`, `browser_task_message`, `browser_task_cancel` | Read a task's result, steer a running task, or cancel one task (`stop_agent` stops everything) |
| `begin_agent_fleet_setup`, `begin_agent_fleet_reconciliation` | Owner links for provisioning and reconciliation |
| `get_agent_email`, `create_agent_email`, `assign_agent_email` | The agent's sign-up address |
| `send_agent_email` | Send a plain-text email (or reply in a thread) from the agent's address; at most 50 per project in 24 hours |
| `setup_email_domain`, `verify_email_domain` | Move the project inbox to a custom domain |

Per-browser keys (`blg_browser_`) also get `browser_run_task`, `browser_task_status`, `browser_task_message` and `browser_task_cancel` for the agent their browser is attached to, limited to that browser (`agentId` may be omitted). A project key bound to no agent gets them too: pass `profileId` (from `browser_profiles`) to `browser_run_task` and the task runs for the agent that browser is attached to.

## Browsers (`browser`)

| Tool | Purpose |
| - | - |
| `browser_profiles`, `browser_profile_create` | List and create owner-authorized profiles (project keys); `proxyCountryCode` picks the residential proxy country (default `us`) |
| `get_site_browser`, `get_browser_job` | Site browser profiles and job progress |

Browser work is goal-level: one `browser_run_task` call per goal, with a structured result. Browser Use's agent drives the page, solves CAPTCHAs and fills passwords and emailed codes itself; phone, ID and payment steps come back as blocked for the owner.

> [!WARNING]
>
> **Retired on October 23, 2026: the click-by-click browser tools.** `browser_start`, `browser_stop`, `browser_status`, `browser_act`, `browser_action_status`, `browser_handoff_status`, `request_browser_takeover`, `request_browser_control_return` and `begin_browser_captcha_setup` are no longer registered for any key, and their names will not be reused. To migrate:
>
> | You used | Use instead |
> | - | - |
> | `browser_start`, then `browser_act` steps, then `browser_stop` | One `browser_run_task` with the whole goal (pass `profileId` to pick a browser; `outputSchema` for data you want back) |
> | `browser_act` with `fill_password`, `fill_email_code`, `open_email_link`, `accept_terms` | Nothing: the task fills passwords and emailed codes from CrakSEO and accepts standard terms under the browser's sign-up consent |
> | A sign-up loop over many sites | `queue_signups` and `get_signup_queue` (agent keys) |
> | `browser_action_status`, `browser_status` | `browser_task_status` (pass `waitSeconds` to wait for the result) |
> | A follow-up `browser_act` in the same browser | `browser_task_message` to steer a running task, or `browser_run_task` with `continueTaskId` |
> | `browser_stop` | `browser_task_cancel` (one task) or `stop_agent` (everything) |
> | `request_browser_takeover`, `request_browser_control_return`, `browser_handoff_status`, `begin_browser_captcha_setup` | The owner takes control and hands back in the agent's room; CAPTCHAs are solved by the browser |

## Workflows and Control Center (`browser`, project-bound)

`list_workflows`, `get_workflow`, `manage_workflow` (owner link), `get_master_control_status`, `propose_master_control_plan`

## Data (`data:read`, `data:write`)

`list_data_tables`, `get_data_table`, `query_data_rows` (`data:read`); `create_data_table`, `update_data_table` (tables the agent created), `write_data_rows` (`data:write`). An agent can read and write the tables it creates; the owner grants it any other table.

## Connections (`connections:read`, `connections:execute`)

`list_project_connections`, `list_connection_tools`, `execute_connection_tool`, `list_remote_mcp_connections`, `list_remote_mcp_tools`, `begin_remote_mcp_setup`, `manage_remote_mcp_connection`, `execute_remote_mcp_tool`

## SEO (`seo`)

| Family | Tools |
| - | - |
| Keywords and campaigns (`seo` or `publish`) | `add_target_keywords` (up to 500 per call, with optional tags and our page), `update_keywords` (edit, rename, tag or set our page by ID), `list_keyword_tags`, `research_keywords`, `list_site_keywords` (filter by tag or has-page), `delete_keywords` (bulk, by ID or phrase), `list_publishing_accounts`, `upsert_campaign`, `list_campaigns`, `get_campaign`, `remove_campaign_keywords`, `schedule_campaign_post`, `get_due_campaign_posts`, `record_campaign_post_published` |
| Competitors and SERPs | `list_competitors`, `set_competitors` (up to 4 domains), `delete_competitors`, `map_competitor_pages` (up to 500 per call), `list_competitor_page_maps`, `delete_competitor_page_maps`, `label_domain`, `list_domain_labels`, `get_keyword_serp` (stored Google page 1 with labels, ranks and parasite opportunities), `list_parasite_platforms` (every parasite platform ranking for your keywords, with each keyword and ranking URL), `get_keyword_rankings` (own and competitor history). Scans cover page 1 only; past page 1 your rank comes from Search Console. These tools never start a paid scan. |
| Mailbox (a project key only reaches its own project's mail) | `list_site_mailboxes`, `get_site_mailbox`, `provision_site_mailbox`, `request_site_mailbox_custom_domain`, `create_site_mailbox_address`, `assign_site_mailbox_agent`, `sync_site_mailbox_custom_domain`, `list_mailbox_message_metadata`, `refresh_site_mailbox_messages`, `get_mailbox_message_content` |
| Brand launch | `list_brand_launch_campaigns`, `get_brand_launch_overview`, `list_tasks`, `claim_next_task`, `heartbeat_task`, `transition_task`, `resume_task`, `complete_task`, `list_profiles`, `list_assets`, `list_evidence`, `get_approved_profile_payload`, `append_safe_evidence`, `get_local_vault_status`, `playwright_setup_guidance` |
| Profile workspace | `get_browser_profile_workspace`, `upsert_profile_account`, `update_browser_profile_state`, `record_profile_publication`, `propose_keyword_target_change`, `request_link_indexing`, `request_serp_refresh`, `get_keyword_serp_status`, `list_target_keywords`; with `vault`: `store_profile_credential`, `retrieve_profile_credential` |
| Managed sites | `get_site_capabilities`, `list_site_records`, `get_site_record`, `list_site_record_history`, `upsert_site_record`, `list_site_work`, `get_site_work`, `get_site_work_overview`, `list_site_provider_usage`, `create_site_work`, `claim_site_work`, `heartbeat_site_work`, `transition_site_work`, `request_site_work_approval`, `requeue_site_work`, `list_site_canonical_resources`, `list_site_mailbox_evidence`, `get_site_seo_report`, `list_site_report_evidence`; with `vault`: `list_credential_references`, `request_credential_use`, `get_credential_use_status` |

## Publishing (`publish`)

| Family | Tools |
| - | - |
| Social | `get_social_provider_status`, `begin_social_provider_connection`, `refresh_social_connections`, `report_social_connection_issue`, `resolve_social_connection_issue`, `get_social_connection_analytics`, `delete_unsent_social_publications`, `create_social_publication_draft`, `submit_social_publication_for_review`, `schedule_social_publication`, `get_social_publication_target`, `get_social_campaign_status`, `retry_failed_social_publication_target` |
| X | `get_connected_x_account`, `schedule_tweet`, `list_scheduled_tweets` |
| Podcasts | `list_podcast_shows`, `get_podcast_show`, `list_podcast_episodes`, `create_podcast_show_draft`, `create_podcast_episode_draft`, `update_podcast_episode_draft`, `submit_podcast_episode_for_review` |

## Indexing (`indexing:read`, `indexing:submit`)

`get_indexing_account`, `quote_indexing_submission`, `submit_indexing_urls`, `get_indexing_job`, `list_indexing_jobs`. See [Indexing MCP](https://docs.crakseo.com/product/indexing-service/mcp.md) for the quote contract.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.