API and MCP
MCP tool reference
All 237 tools a customer key can be offered, by scope, with each one's access level. 128 read, 100 write, 9 destructive; 7 spend credits.
Updated · 14 min read
Tools are grouped by the scope a key needs to be offered them. R reads stored data (Pro and up). W changes state, runs a live lookup, or uses an allowance (Enterprise, with write). WD is destructive and cannot be undone; the assistant is told to confirm in words first. $ marks the 7 tools that spend Local SEO or audit credits: quote first, and send a fresh request_key with each call. list_domains is the entry point: its numeric ids are what almost every other tool takes.
A customer key can be offered 237 tools: 128 read, 100 write and 9 destructive. The server registers five more, operator-only reads under the admin scope, which a customer key cannot carry. tools/list returns only what your key's scopes and plan allow, so trust it over this page.
Names that start with get_ are not always free: get_domain_email_security runs live DNS lookups, and get_scan_ownership_verification creates a proof challenge when none exists, so both are W. get_local_seo_operation takes a request_key only to look up an earlier paid call; it spends nothing.
Domains, DNS, mail, alerts and account (domains)
60 tools.
| Tool | Access | What it does |
|---|---|---|
list_domains |
R | List monitored domains |
add_domain |
W | Add a domain to monitoring |
update_domain |
W | Update a monitored domain |
delete_domain |
WD | Stop monitoring a domain |
get_domain_history |
R | Get scan history for a domain |
run_site_check |
W | Run a site check |
list_site_checks |
R | List site checks for a domain |
get_site_check |
R | Get a site check |
get_domain_email_security |
W | Get email-security details |
discover_domain_subdomains |
W | Discover public subdomains |
get_dns_change_events |
R | Get DNS change events |
get_domain_events |
R | Get actionable domain events |
get_uptime_snapshots |
R | Get uptime snapshots |
get_downtime_events |
R | Get downtime events |
get_dmarc_summary |
R | Get DMARC report summary |
get_dmarc_diagnostics |
R | Diagnose DMARC deliverability |
get_dmarc_setup_status |
R | Get DMARC setup status |
mark_alerts_read |
W | Mark alerts as read |
plan_domain_onboarding |
R | Plan the onboarding of a domain |
onboard_domain |
W | Add and set up a domain in one call |
get_domain_setup_guide |
R | Get a domain's setup guide |
skip_domain_setup_step |
W | Mark a setup step as not for this domain |
add_domains_bulk |
W | Add several domains at once |
list_alerts |
R | List the account's alerts |
get_alert_activity |
R | Get the account's activity history |
get_account_settings |
R | Get account settings |
update_account_settings |
W | Update account settings |
list_domain_groups |
R | List domain groups |
create_domain_group |
W | Create a domain group |
delete_domain_group |
WD | Delete a domain group |
rename_domain_group |
W | Rename a domain group |
recheck_host_software |
W | Re-read one host's software now |
assign_domains_to_group |
W | Move domains into a group |
list_scan_clients |
R | List clients |
create_scan_client |
W | Create a client |
delete_scan_client |
WD | Delete a client |
get_domain_hijack_events |
R | Get change events for one domain |
get_domain_event |
R | Get one change event |
act_on_domain_event |
W | Answer a change event |
list_dmarc_reports |
R | List received DMARC aggregate reports |
get_dmarc_senders |
R | Who is sending as this domain |
get_dmarc_inbox |
R | Get the account's DMARC report address |
rotate_dmarc_inbox |
W | Rotate the DMARC report address |
get_managed_email_auth |
R | Get managed SPF/DMARC delegations |
enable_managed_email_auth |
W | Delegate DMARC or SPF to DomainGuard |
disable_managed_email_auth |
W | Stop managing DMARC or SPF |
check_managed_email_auth |
W | Confirm a managed delegation is live |
set_managed_dmarc_policy |
W | Advance or revert a managed DMARC policy |
list_support_conversations |
R | List support conversations |
get_support_conversation |
R | Read a support conversation |
reply_to_support_conversation |
W | Reply in a support conversation |
update_support_conversation |
W | Close, reopen or archive a support conversation |
get_verification_tasks |
R | What to verify, and how |
submit_verification_results |
R | Send your verdicts on DomainGuard's findings (records only) |
audit_domain |
R | Audit a domain: verdict, prioritised findings, evidence and fixes |
get_domain_certificates |
R | Every TLS certificate a domain serves |
get_subdomain_sightings |
R | When each subdomain was first seen |
get_domain_vuln_state |
R | A domain's vulnerability verdict and the software on its hosts |
get_verification_summary |
R | What agents have verified on this account |
get_domain_schedule |
R | Every automatic check for a domain and when it runs next |
Scans, checkups, dark web and scanner reports (scans)
19 tools.
| Tool | Access | What it does |
|---|---|---|
run_domain_scan |
W | Run a domain-health scan now |
get_checkup_history |
R | Get security checkup history |
run_domain_checkup |
W | Run a security checkup on a domain |
get_dark_web_status |
R | Get dark-web monitoring status |
run_dark_web_scan |
W | Refresh dark-web monitoring |
report_scanner_issue |
R | Report a scanner mistake (records only) |
submit_scanner_review |
R | Send the review of a domain (records only) |
get_dark_web_breach |
R | Get one breach in detail |
add_dark_web_email |
W | Monitor an email address for breaches |
remove_dark_web_email |
WD | Stop monitoring an email address |
list_on_demand_scans |
R | Saved on-demand scans (the app's Scan tab) |
run_on_demand_scan |
W | Scan any domain now, quick or full |
share_on_demand_scan |
W | Get a public link to a saved scan |
unshare_on_demand_scan |
W | Stop sharing a saved scan |
delete_on_demand_scan |
WD | Remove a saved scan from the history |
get_on_demand_scan |
R | One saved on-demand scan with its whole report |
get_unreadable_versions |
R | List software with no readable version |
declare_software_version |
W | Enter the version of software a scan cannot read |
remove_declared_software_version |
W | Withdraw a version the owner entered |
SEO and Local SEO (seo)
81 tools.
| Tool | Access | What it does |
|---|---|---|
get_seo_results |
R | Get the latest SEO results |
get_seo_history |
R | Get SEO score history |
run_seo_scan |
W | Run an SEO scan now |
start_site_audit |
W | Start a whole-site SEO audit |
get_site_audit_status |
R | Get whole-site audit status |
get_seo_intent_conflicts |
R | Get search-intent conflicts |
get_site_audit_results |
R | Get whole-site audit results |
get_indexnow_status |
R | IndexNow setup, key file and totals by engine |
list_indexnow_urls |
R | Every URL sent through IndexNow, with each engine's answer |
list_indexnow_submissions |
R | The IndexNow send log |
configure_indexnow |
W | Turn IndexNow on and choose engines, auto-submit and sitemap |
verify_indexnow_key |
W | Check the IndexNow key file on the site |
submit_urls_to_indexnow |
W | Send changed URLs to search engines |
sync_sitemap_to_indexnow |
W | Send what changed in the sitemap |
get_search_visibility_overview |
R | Every domain's IndexNow setup and crawler access, with what needs attention |
get_crawler_access |
R | Whether search and AI crawlers can read the site, per crawler |
check_crawler_access |
W | Check crawler access now and record it |
list_crawler_access_history |
R | Earlier crawler access checks |
get_local_seo_profile |
R | Get the local SEO business profile |
save_local_seo_profile |
W | Save the local SEO business profile |
get_local_keyword_targets |
R | Get tracked local keywords |
add_local_keyword_target |
W | Track a local keyword |
get_local_rank_history |
R | Get local rank history |
get_rank_tracker |
R | Get the scheduled rank tracker |
set_rank_tracker |
W | Schedule rank checks |
check_local_ranks |
W $ | Check local rankings now |
get_geogrid_scans |
R | Get map scan history |
run_geogrid_scan |
W $ | Run a map scan |
get_local_seo_catalog |
R | List every Local SEO action |
run_local_seo_action |
W $ | Run any catalogued Local SEO action |
get_local_seo_operation |
R | Get a Local SEO action status |
get_local_seo_credits |
R | Get local SEO credit balance |
delete_local_keyword_target |
WD | Stop tracking a local keyword |
get_seo_policy |
R | What SEO scanning the plan allows |
list_manual_url_scans |
R | List single-URL SEO scans |
fetch_sitemap |
W | Fetch a monitored site's sitemap |
start_deep_seo_job |
W | Queue a deep SEO crawl of chosen pages |
list_deep_seo_jobs |
R | List deep SEO crawl jobs |
get_deep_seo_job |
R | Get one deep SEO crawl job |
cancel_deep_seo_job |
W | Cancel a deep SEO crawl job |
get_deep_seo_scans |
R | List deep crawls of a domain |
get_deep_seo_scan_pages |
R | Get page results from a deep crawl |
check_page_seo |
W | Check one URL: findings and fixes, not HTML |
assess_website |
W | Assess a website in one pass |
score_page_accessibility |
W | Score one URL for accessibility |
score_page_performance |
W | Score one URL for performance |
email_seo_report |
W | Email the SEO report for a domain |
get_report_branding |
R | Get report branding |
save_report_branding |
W | Set report branding |
get_local_seo_quickstart |
R | Read the Local SEO quick start for a domain |
run_local_seo_quickstart |
W $ | Set up local SEO and take the first measurement |
discover_local_seo_details |
W | Read the homepage for business details |
verify_local_seo_location |
W | Confirm a city is covered |
get_local_seo_access |
R | Whether the plan includes Local SEO |
quote_local_ranks |
R | Quote a rank check |
quote_geogrid_scan |
R | Quote a map scan |
get_geogrid_entitlement |
R | How many map scans the plan includes |
quote_local_seo_endpoint |
R | Quote one Local SEO endpoint |
search_locations |
R | Search covered cities |
list_covered_locations |
R | List covered cities |
get_local_keyword_ideas |
R | Get saved keyword ideas for a domain |
get_backlink_snapshots |
R | Get saved backlink snapshots |
get_local_seo_audit_history |
R | Get past Local SEO audits |
list_local_seo_reports |
R | List saved Local SEO reports |
quote_local_seo_report |
R | Quote a Local SEO report |
get_local_seo_brief |
R | What to do next to rank better locally |
autofill_local_seo |
W | Do the free part of the local setup from the website |
get_local_autopilot |
R | The local setup as it stands, with each value's source |
preview_local_autopilot |
W | Propose business details and phrases from the website |
run_local_autopilot |
W $ | Save the business and run the first full local scan |
quote_local_scan |
R | Quote a full local scan |
run_local_scan |
W $ | Run a full local scan now |
list_local_scans |
R | List a domain's local scans |
get_local_scan |
R | Get one full local scan report |
email_local_scan |
W | Send a local scan report again |
get_local_competitors |
R | Get the local competitor set |
add_local_competitor |
W | Follow a competitor in every local report |
remove_local_competitor |
W | Stop following a competitor |
update_local_competitor |
W | Pin or hide a competitor |
update_local_scan_settings |
W | Set the local scan schedule and report email |
set_local_listing |
W | Pin the business's Google listing |
Accessibility (accessibility)
7 tools.
| Tool | Access | What it does |
|---|---|---|
quote_accessibility_audit |
R | Quote an accessibility audit |
list_accessibility_audits |
R | List accessibility audits |
start_accessibility_audit |
W $ | Start an accessibility audit |
get_accessibility_audit |
R | Get an accessibility audit |
record_accessibility_manual_review |
W | Record a manual WCAG review result |
complete_accessibility_audit |
W | Close an accessibility audit |
export_accessibility_audit |
R | Export an accessibility audit |
Vulnerabilities, exposure, lookalikes and IP targets (vulnscan)
50 tools.
| Tool | Access | What it does |
|---|---|---|
get_vuln_scan_latest |
R | Get the latest vulnerability scan |
get_vuln_scan_results |
R | Get results for a specific vulnerability scan |
get_vuln_scan_history |
R | Get vulnerability scan history |
get_vulnerability_assets |
R | Get discovered vulnerability assets |
get_open_ports |
R | Get observed open ports |
list_lookalikes |
R | List lookalike domains |
get_lookalike_events |
R | Get lookalike change history |
run_lookalike_scan |
W | Scan for lookalike domains |
set_lookalike_verdict |
W | Record a verdict on a lookalike domain |
get_observed_components |
R | Get observed software components |
get_scan_ownership_verification |
W | Get scan ownership verification |
verify_scan_ownership |
W | Check scan ownership proof |
start_vuln_scan |
W | Start a vulnerability scan |
get_scan_clearance_status |
R | Which domains are cleared for active scanning |
verify_scan_ownership_bulk |
W | Re-check ownership proof for several domains |
request_ownership_email_link |
W | Send an ownership link to an address at the domain |
request_scan_authorization |
W | Ask the operator to authorise scanning |
get_scan_authorization |
R | Get the authorisation status for a domain |
list_scan_authorizations |
R | List authorisation requests |
set_lookalike_watch |
W | Turn lookalike monitoring on or off |
get_lookalike_evidence |
R | Get the evidence pack for one impostor |
act_on_lookalike_event |
W | Acknowledge or resolve a lookalike change |
get_lookalike_alert_settings |
R | Get lookalike alerts |
update_lookalike_alert_settings |
W | Turn lookalike alerts on or off |
list_vuln_dismissals |
R | List dismissed findings |
dismiss_vuln_finding |
W | Dismiss a finding, component or alert |
restore_vuln_dismissal |
W | Undo a dismissal |
list_software_vendors |
R | List the vendors the portfolio runs on |
get_software_vendor |
R | Get one vendor in full |
get_vulnerability_feed |
R | Get the latest KEV and NVD entries |
get_software_advisory_history |
R | Get CVE and KEV history for one product |
get_software_overview |
R | Get the software DomainGuard monitors |
list_tracked_software |
R | List tracked software |
search_software_catalog |
R | Search the software catalog |
get_software_catalog |
R | Get the whole software catalog |
get_software_catalog_categories |
R | Get software catalog categories |
track_software |
W | Track a software product for vulnerabilities |
update_tracked_software |
W | Change a tracked product's alerting |
untrack_software |
WD | Stop tracking a software product |
watch_all_detected_software |
W | Watch every product the scans found |
list_software_alerts |
R | List software vulnerability alerts |
get_software_alert_summary |
R | Summarise software alerts |
update_software_alert |
W | Mark a software alert read, dismissed or remediated |
list_ip_targets |
R | List IP and network targets |
add_ip_target |
W | Add an IP or network target |
update_ip_target |
W | Change an IP target |
delete_ip_target |
WD | Remove an IP target |
list_ip_target_scans |
R | List scans of one IP target |
scan_ip_target |
W | Port-scan an IP target now |
get_exploited_software |
R | Actively exploited vulnerabilities (CISA KEV) in software seen running |
Compliance (compliance)
11 tools.
| Tool | Access | What it does |
|---|---|---|
get_compliance_records |
R | Get compliance records |
update_compliance_item |
W | Update a compliance item |
initialize_compliance_records |
W | Seed compliance controls |
bulk_update_compliance |
W | Update several compliance controls |
list_wisps |
R | List the account's security plans (WISPs) |
start_wisp |
W | Start a written information security plan by interview |
get_wisp_interview |
R | Where a security plan's interview stands |
answer_wisp_questions |
W | Save answers to a security plan's interview |
build_wisp |
W | Build the security plan document |
get_wisp_download_link |
R | A fresh download link for a built security plan |
delete_wisp |
WD | Delete a security plan |
Provider status (status)
9 tools.
| Tool | Access | What it does |
|---|---|---|
get_status_services |
R | Get third-party service status |
get_status_incidents |
R | Get current third-party incidents |
get_status_history |
R | Get provider status history |
list_status_subscriptions |
R | List provider subscriptions |
get_status_subscription_suggestions |
R | Suggest providers to subscribe to |
update_status_subscriptions |
W | Set provider subscriptions |
subscribe_all_status_services |
W | Subscribe to every suggested provider |
unsubscribe_all_status_services |
W | Unsubscribe from every provider |
suggest_status_service |
W | Suggest a provider to track |
Operator reads (admin)
list_error_events, get_self_check_status, list_scan_failures, list_scanner_reports, get_verification_stats. Only from a key minted in the administrator's own session; a customer key cannot carry the scope, and these five are not counted above.
Three habits the server asks of an assistant
- Read stored results before running a scan; scans take minutes and count against the plan.
- Quote before any paid step and wait for a yes.
- Re-test what DomainGuard claims with
get_verification_tasks(read-only checks against your own domains) and send every verdict back withsubmit_verification_results. Tools marked "records only" change none of your data, so a read-only key can call them.
Keep reading
Related articles
- API and MCP: 401, 402, 403, 429, or a missing toolWhat each response means when a key or an MCP client is refused, and the one fix that usually applies: mint a key with the right scope on the right plan.Troubleshooting ·Updated
- The REST APIBase URL, bearer authentication with an nhm_ key, the routes a key can reach and the scope each needs, which calls need write, and the 401, 402, 403 and 429 replies.API and MCP ·Updated
- Crawler access: can search engines and AI assistants read your site?Why ChatGPT, Claude and Perplexity take no URL submissions, which crawlers they use, and how DomainGuard checks robots.txt and your firewall for each one every day.Website and SEO ·Updated
