semrush-cli

Command reference

All 81 research and account operations, with schema-derived options.

Every command also has an MCP tool with underscores in its name. Use --json for scripts.

account-status

Signed-in account and report limits.

semrush-cli account-status --help

keyword-overview

Volume, difficulty, CPC, intent and trends.

semrush-cli keyword-overview --help
FlagTypeDefaultRequired
--keywordstringyes
--databasestring"us"

keyword-ideas

Overview sample of related keywords or questions.

semrush-cli keyword-ideas --help
FlagTypeDefaultRequired
--keywordstringyes
--databasestring"us"
--questions-onlybooleanfalse
--limitinteger10

keyword-ideas-summary

Total related keyword count and volume.

semrush-cli keyword-ideas-summary --help
FlagTypeDefaultRequired
--keywordstringyes
--databasestring"us"
--questions-onlybooleanfalse

keyword-serp

Ranked URLs and SERP features.

semrush-cli keyword-serp --help
FlagTypeDefaultRequired
--keywordstringyes
--databasestring"us"
--limitinteger10

keyword-ads

Search ad copies for a keyword.

semrush-cli keyword-ads --help
FlagTypeDefaultRequired
--keywordstringyes
--databasestring"us"
--limitinteger10

keyword-clusters

Keyword topics and search intents.

semrush-cli keyword-clusters --help
FlagTypeDefaultRequired
--keywordstringyes
--databasestring"us"

keyword-magic

Paginated Keyword Magic research with filters and sorting.

semrush-cli keyword-magic --help
FlagTypeDefaultRequired
--keywordstringyes
--databasestring"us"
--questions-onlybooleanfalse
--modeinteger4
--currencystring"USD"
--sort-fieldstring"similarity_score"
--descendingbooleantrue
--filtersobject
--groupsarray
--pageinteger1
--page-sizeinteger100

keyword-magic-summary

Keyword Magic totals for matching filters.

semrush-cli keyword-magic-summary --help
FlagTypeDefaultRequired
--keywordstringyes
--databasestring"us"
--questions-onlybooleanfalse
--modeinteger4
--currencystring"USD"
--sort-fieldstring"similarity_score"
--descendingbooleantrue
--filtersobject
--groupsarray

keyword-magic-groups

Keyword Magic topic groups.

semrush-cli keyword-magic-groups --help
FlagTypeDefaultRequired
--keywordstringyes
--databasestring"us"
--questions-onlybooleanfalse
--modeinteger4
--currencystring"USD"
--sort-fieldstring"similarity_score"
--descendingbooleantrue
--filtersobject
--groupsarray
--pageinteger1
--page-sizeinteger100

domain-overview

Search metrics and backlink summary.

semrush-cli domain-overview --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"

domain-keywords

Paginated organic rankings with filters, sorting and totals.

semrush-cli domain-keywords --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"
--dateinteger / nullnull
--search-typestring"domain"
--date-typestring"daily"
--pageinteger1
--page-sizeinteger100
--sort-fieldstring"trafficPercent"
--descendingbooleantrue
--filtersobject

domain-pages

Paginated top organic pages with totals.

semrush-cli domain-pages --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"
--dateinteger / nullnull
--search-typestring"domain"
--date-typestring"daily"
--pageinteger1
--page-sizeinteger100
--sort-fieldstring"traffic"
--descendingbooleantrue
--filtersobject

domain-subdomains

Paginated organic subdomain traffic and keyword totals.

semrush-cli domain-subdomains --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"
--dateinteger / nullnull
--search-typestring"domain"
--date-typestring"daily"
--pageinteger1
--page-sizeinteger100
--sort-fieldstring"traffic"
--descendingbooleantrue
--filtersobject

domain-position-changes

Paginated ranking changes with totals.

semrush-cli domain-position-changes --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"
--dateinteger / nullnull
--search-typestring"domain"
--date-typestring"daily"
--pageinteger1
--page-sizeinteger100
--sort-fieldstring"changeOfTraffic"
--descendingbooleantrue
--filtersobject

domain-competitors

Paginated organic search competitors and totals.

semrush-cli domain-competitors --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"
--dateinteger / nullnull
--search-typestring"domain"
--date-typestring"daily"
--pageinteger1
--page-sizeinteger100
--sort-fieldstring"competitionLvl"
--descendingbooleantrue

Backlink summary, sample links and anchors.

semrush-cli domain-backlinks --help
FlagTypeDefaultRequired
--domainstringyes

domain-ai-visibility

AI visibility, mentions and citations.

semrush-cli domain-ai-visibility --help
FlagTypeDefaultRequired
--domainstringyes

domain-ai-countries

AI visibility and mentions by country.

semrush-cli domain-ai-countries --help
FlagTypeDefaultRequired
--domainstringyes

domain-ai-sources

Top AI citation sources with offset and limit.

semrush-cli domain-ai-sources --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"
--limitinteger20
--offsetinteger0

Daily or monthly organic and paid search trends.

semrush-cli domain-trends --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"
--date-typestring"monthly"
--global-databooleanfalse

domain-paid-keywords

Paid keyword overview sample; account permissions apply.

semrush-cli domain-paid-keywords --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"
--limitinteger5

domain-paid-competitors

Paid search competitors; account permissions apply.

semrush-cli domain-paid-competitors --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"
--limitinteger5

domain-topics

Organic search topics already available for a domain.

semrush-cli domain-topics --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"

domain-topics-status

Availability of domain organic topics.

semrush-cli domain-topics-status --help
FlagTypeDefaultRequired
--domainstringyes
--databasestring"us"

databases

Search databases and account access.

semrush-cli databases --help

snapshot-dates

Available historical domain snapshots.

semrush-cli snapshot-dates --help
FlagTypeDefaultRequired
--databasestring"us"
--global-databooleanfalse

report-permissions

Account history, export and research permissions.

semrush-cli report-permissions --help
FlagTypeDefaultRequired
--databasestring"us"

Paginated backlinks with provider caps and totals.

semrush-cli backlink-links --help
FlagTypeDefaultRequired
--domainstringyes
--target-typestring"root_domain"
--filtersstring""
--pageinteger0
--sort-fieldstring""
--descendingbooleantrue

Paginated referring domains.

semrush-cli backlink-referring-domains --help
FlagTypeDefaultRequired
--domainstringyes
--target-typestring"root_domain"
--filtersstring""
--pageinteger0
--sort-fieldstring""
--descendingbooleantrue

Historical backlink and referring-domain trends.

semrush-cli backlink-history --help
FlagTypeDefaultRequired
--domainstringyes
--target-typestring"root_domain"

Competitors sharing a backlink profile.

semrush-cli backlink-competitors --help
FlagTypeDefaultRequired
--domainstringyes
--target-typestring"root_domain"

Paginated indexed pages ranked by referring domains.

semrush-cli backlink-top-pages --help
FlagTypeDefaultRequired
--domainstringyes
--target-typestring"root_domain"
--filtersstring""
--pageinteger0
--sort-fieldstring""
--descendingbooleantrue

Paginated anchor texts and backlink counts.

semrush-cli backlink-anchors --help
FlagTypeDefaultRequired
--domainstringyes
--target-typestring"root_domain"
--filtersstring""
--pageinteger0
--sort-fieldstring""
--descendingbooleantrue

Paginated outbound domains and outgoing link counts.

semrush-cli backlink-outgoing-domains --help
FlagTypeDefaultRequired
--domainstringyes
--target-typestring"root_domain"
--filtersstring""
--pageinteger0
--sort-fieldstring""
--descendingbooleantrue

Referring-domain country distribution.

semrush-cli backlink-countries --help
FlagTypeDefaultRequired
--domainstringyes
--target-typestring"root_domain"

Authority score and supporting metrics.

semrush-cli backlink-authority --help
FlagTypeDefaultRequired
--domainstringyes
--target-typestring"root_domain"

Referring-domain category profile.

semrush-cli backlink-categories --help
FlagTypeDefaultRequired
--domainstringyes
--target-typestring"root_domain"

keyword-gap

Paginated organic keyword gap between two to five sites.

semrush-cli keyword-gap --help
FlagTypeDefaultRequired
--databasestring"us"
--domainsarrayyes
--filtersstring""
--gap-typeinteger2
--limitinteger100
--offsetinteger0

keyword-gap-totals

Counts for keyword overlap and opportunity types.

semrush-cli keyword-gap-totals --help
FlagTypeDefaultRequired
--databasestring"us"
--domainsarrayyes
--filtersstring""

keyword-gap-overlap

Organic keyword profile overlaps.

semrush-cli keyword-gap-overlap --help
FlagTypeDefaultRequired
--databasestring"us"
--domainsarrayyes
--filtersstring""

Paginated link-building prospects shared by competitors but missing from your site.

semrush-cli backlink-gap --help
FlagTypeDefaultRequired
--domainsarrayyes
--pageinteger0
--limitinteger100
--filtersstring"+|backlinksnum_0|Eq|0"
--sort-fieldstring"matchesnum"
--descendingbooleantrue
--sort-targetinteger0

Compare backlink history, country distribution and domain zones.

semrush-cli backlink-comparison --help
FlagTypeDefaultRequired
--domainsarrayyes

projects

Existing projects and folder access, with pagination.

semrush-cli projects --help
FlagTypeDefaultRequired
--limitinteger15
--offsetinteger0
--filtersobject

ai-capabilities

Account AI Visibility Toolkit access and limits.

semrush-cli ai-capabilities --help

audit-campaigns

Existing Site Audit campaigns; does not start a crawl.

semrush-cli audit-campaigns --help

folders

Accessible project folders.

semrush-cli folders --help

saved-keyword-lists

Existing saved keyword lists.

semrush-cli saved-keyword-lists --help

project-create

Create a project, optionally with a website. Does not start tools or share it.

semrush-cli project-create --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--namestringyes
--domainstring
--confirmbooleanfalse
--dry-runbooleanfalse

project-get

Read one project by its current web folder ID.

semrush-cli project-get --help
FlagTypeDefaultRequired
--folder-idstringyes

project-update

Rename a project or add its first domain. Existing domains cannot be changed.

semrush-cli project-update --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--folder-idstringyes
--namestring
--domainstring
--confirmbooleanfalse
--dry-runbooleanfalse

project-delete

Permanently delete a project and its attached tool data.

semrush-cli project-delete --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--folder-idstringyes
--confirmbooleanfalse
--dry-runbooleanfalse

project-leave

Leave a shared project.

semrush-cli project-leave --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--folder-idstringyes
--confirmbooleanfalse
--dry-runbooleanfalse

project-limits

Read project creation limits.

semrush-cli project-limits --help

project-tags

Read available project tags.

semrush-cli project-tags --help

project-set-tags

Replace project tags. An empty array removes all its tags.

semrush-cli project-set-tags --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--folder-idstringyes
--tagsarrayyes
--confirmbooleanfalse
--dry-runbooleanfalse

project-check-domain

Check website information before creating a project.

semrush-cli project-check-domain --help
FlagTypeDefaultRequired
--domainstringyes

project-pin

Pin or unpin a project on the dashboard.

semrush-cli project-pin --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--folder-idstringyes
--pinnedbooleanyes
--confirmbooleanfalse
--dry-runbooleanfalse

project-toolkits

Read SEO, AI, local, social, advertising and content toolkit status.

semrush-cli project-toolkits --help
FlagTypeDefaultRequired
--folder-idsarrayyes
--with-promobooleanfalse

project-tools

Read project dashboard metrics. Tool IDs match the web dashboard.

semrush-cli project-tools --help
FlagTypeDefaultRequired
--folder-idstringyes
--toolsarrayyes

project-enable-seo

Create the SEO project associated with an existing web project. Uses project allowance.

semrush-cli project-enable-seo --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--folder-idstringyes
--confirmbooleanfalse
--dry-runbooleanfalse

project-seo-auto-setup

Start automatic SEO setup, including Site Audit and Position Tracking. Uses account allowances.

semrush-cli project-seo-auto-setup --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--folder-idstringyes
--confirmbooleanfalse
--dry-runbooleanfalse

keyword-list-limits

Read Keyword Strategy Builder list and clustering allowances.

semrush-cli keyword-list-limits --help

keyword-lists

Read regular and structured keyword lists with pagination and ownership filters.

semrush-cli keyword-lists --help
FlagTypeDefaultRequired
--pageinteger1
--page-sizeinteger100
--sort-fieldstring"updated_at"
--descendingbooleantrue
--name-filterstring""
--ownershipinteger7

keyword-list-create

Create an empty regular keyword list. Does not cluster or generate a strategy.

semrush-cli keyword-list-create --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--namestringyes
--confirmbooleanfalse
--dry-runbooleanfalse

keyword-list-get

Read one keyword list and its permissions.

semrush-cli keyword-list-get --help
FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes

keyword-list-rename

Rename a keyword list.

semrush-cli keyword-list-rename --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes
--namestringyes
--confirmbooleanfalse
--dry-runbooleanfalse

keyword-list-delete

Permanently delete one of your keyword lists.

semrush-cli keyword-list-delete --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--basket-idintegeryes
--confirmbooleanfalse
--dry-runbooleanfalse

keyword-list-keywords

Read filtered, paginated keyword-list metrics.

semrush-cli keyword-list-keywords --help
FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes
--pageinteger1
--page-sizeinteger100
--sort-fieldstring"phrase"
--descendingbooleantrue
--filtersobject{}

keyword-list-summary

Read keyword totals, volume and difficulty for the selected filters.

semrush-cli keyword-list-summary --help
FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes
--filtersobject{}

keyword-list-import

Import phrases into a regular keyword list. Account keyword limits apply.

semrush-cli keyword-list-import --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes
--keywordsarrayyes
--databasestring"us"
--tagsarray[]
--confirmbooleanfalse
--dry-runbooleanfalse

keyword-list-delete-keywords

Delete selected phrases from a keyword list. Returns an undo ID.

semrush-cli keyword-list-delete-keywords --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes
--keywordsarrayyes
--databasestring"us"
--confirmbooleanfalse
--dry-runbooleanfalse

keyword-list-undo-delete

Restore a keyword deletion using its returned UndoID.

semrush-cli keyword-list-undo-delete --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--undo-idstringyes
--confirmbooleanfalse
--dry-runbooleanfalse

keyword-list-update-metrics

Request fresh metrics for selected phrases. Consumes the update allowance.

semrush-cli keyword-list-update-metrics --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes
--keywordsarrayyes
--databasestring"us"
--confirmbooleanfalse
--dry-runbooleanfalse

keyword-list-tags

Read keyword tags and their usage in a list.

semrush-cli keyword-list-tags --help
FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes

keyword-list-add-tags

Add tags to selected phrases.

semrush-cli keyword-list-add-tags --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes
--keywordsarrayyes
--databasestring"us"
--tagsarray[]yes
--confirmbooleanfalse
--dry-runbooleanfalse

keyword-list-remove-tags

Remove tags from selected phrases.

semrush-cli keyword-list-remove-tags --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes
--keywordsarrayyes
--databasestring"us"
--tagsarray[]yes
--confirmbooleanfalse
--dry-runbooleanfalse

keyword-list-cluster

Start clustering a keyword list. Consumes the clustering allowance.

semrush-cli keyword-list-cluster --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes
--confirmbooleanfalse
--dry-runbooleanfalse

keyword-list-cluster-forecast

Read the clustering forecast for a keyword list.

semrush-cli keyword-list-cluster-forecast --help
FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes

keyword-list-cluster-status

Read the current clustering status for a keyword list.

semrush-cli keyword-list-cluster-status --help
FlagTypeDefaultRequired
--basket-idintegeryes
--owner-idintegeryes

keyword-strategy-create

Generate a structured keyword strategy from a domain or seed phrases. Consumes the clustering allowance.

semrush-cli keyword-strategy-create --help

Requires --confirm. Use --dry-run to inspect the request without sending it.

FlagTypeDefaultRequired
--namestringyes
--domainstring
--databasestring"us"
--seed-keywordsarray[]
--competitorsarray[]
--confirmbooleanfalse
--dry-runbooleanfalse

On this page