Docs

Reference

Every tool your AI gets

AskYourStack is a remote MCP server at https://askyourstack.com/mcp (OAuth sign-in). These are all the tools it offers: 105, of which 64 only read. Your AI client sees only the tools your plan includes, and calls them by name. How to connect: Claude, ChatGPT, Cursor and Claude Code.

Reads

Only looks. Works on every server, also when changes are closed or the server is read-only.

Changes

Writes something (a note, a draft, a DNS record) and keeps the old value so it can be undone.

Can change or delete

Can overwrite or remove data, depending on the call. On a server nothing changes unless the user opened a change window, and destructive steps wait for their approval. How safety works.

Start, memory and playbooks

Needs: Nothing: these work on every account.

  • overviewOverview of servers and problems

    Start here. One call shows where everything stands: the plan, every server (online or not, root or limited access, safety mode, paused, its sites), the open problems and warnings AskYourStack's own monitoring found (disk, memory, failed services, SSL certificates, a site not...

    ReadsFree and up
  • list_serversList servers

    List the servers on this account: online or not, safety mode, paused or not.

    ReadsFree and up
  • get_playbookGet a playbook

    Step-by-step guide for a common job, written for you to follow. ); seo-dashboard (A site's search performance over the last 90 days as one visual page set in the Inter typeface. )

    ReadsFree and up
  • save_noteSave a note

    Remember something for future chats about a server (or the whole account): what is special about it, how it is set up, what must not be touched, a decision the user made.

    Can change or deleteFree and up
  • forget_noteDelete a note

    Delete a saved note that is wrong or no longer true (its id is in overview).

    Can change or deleteFree and up
  • log_workLog finished work

    Write down finished work, when a task that changed something is done: two or three plain lines (up to 800 characters) a non-technical owner understands. What you did, what changed, what is left for them.

    ChangesFree and up

Your server

Needs: The open-source agent installed on a Linux server. Changes need a change window the user opened.

  • server_factsServer facts

    Distro, kernel, CPU, memory, disk, package manager, running services, listening ports and any Magento or WordPress installs found. Call this first on a server.

    ReadsFree and up
  • runRun a command

    Run a shell command as root (bash -c). No terminal, no stdin. Returns exit code, stdout and stderr (long output keeps the first 16 KB and last 48 KB). Destructive commands need the user's approval.

    Can change or deleteFree and up
  • start_jobStart a background job

    Start a long command (installs, composer, compiles, imports, backups) in the background as root, in its own systemd unit, so it keeps running after this call returns and through agent updates.

    Can change or deleteStarter and up
  • job_outputRead a job's output

    Status (running, finished, ended), exit code and output of a background job. Without offset you get the last 48 KB; pass next_offset from the previous answer to get only what is new.

    ReadsFree and up
  • stop_jobStop a background job

    Stop a running background job and everything it started.

    Can change or deleteStarter and up
  • list_jobsList background jobs

    The 20 most recent background jobs on the server with their status.

    ReadsFree and up
  • health_reportServer health report

    Health of the server now: disk and inode use per filesystem, free memory, swap, load per CPU, failed services, SSL certificates and days left, pending security updates, whether a reboot is needed, backups (how old the newest is, the rhythm of the last runs, backup programs that...

    ReadsFree and up
  • logsRead logs

    Read a log by name for a time window, with repeated messages counted once: how many different errors there are, how often each happened, when first and last, a sample of each (with the top of its stack trace) and the latest lines.

    ReadsFree and up
  • read_fileRead a file

    Read a file (up to 1 MB). Binary files come back base64.

    ReadsFree and up
  • write_fileWrite a file

    Create or replace a file. Keeps owner and mode of an existing file and saves its previous version under /var/lib/askyourstack/backups. Parent folders are created.

    Can change or deleteStarter and up

Safety, approvals and undo

Needs: A connected server.

  • snapshotTake a snapshot

    Save folders (and optionally MySQL/MariaDB databases, dumped with mysqldump) on the server so they can be restored with rollback. Refuses when it would use more than half the free disk.

    ChangesStarter and up
  • list_snapshotsList snapshots

    Snapshots on the server, newest first, with what each holds.

    ReadsFree and up
  • rollbackRoll back to a snapshot

    Write a snapshot's files back (all of it, or only some paths). Saves the current state first, so a rollback can itself be undone. Files created after the snapshot are left alone; database dumps are not loaded (use run).

    Can change or deleteStarter and up
  • propose_planAsk approval for a plan

    When a job has several risky steps (deleting folders, dropping tables, changing SSH or closing access in the firewall, a reboot), list the exact calls you mean to make and ask for the user's approval once, instead of stopping at each one.

    ChangesFree and up
  • wait_for_approvalWait for the user to approve

    Wait for the user to decide, so they do not have to come back to the chat and tell you. Right after you give the user an approval link (approval_id), a plan link (plan_id), the link to open changes on a server (server) or a setup link while nothing is connected yet (setup)...

    ReadsFree and up

Sites on your server

Needs: A connected server with a site on it (Magento, WordPress, WooCommerce, PrestaShop, Shopware, Drupal, Joomla, OpenCart, Laravel, Ghost).

  • list_sitesList sites

    The sites on the server: Magento 2, OpenMage (Magento 1), WordPress and WooCommerce, PrestaShop, Shopware 6, Drupal, Joomla, OpenCart, Laravel and Ghost, wherever the hosting panel keeps them (found from the web server's own configuration too) and inside Docker containers when...

    ReadsFree and up
  • db_queryQuery a site's database

    Run one SQL statement on a site's database, connecting with the site's own credentials (you never need the password).

    Can change or deleteStarter and up
  • magentoRun bin/magento

    Run bin/magento as the site's owner in its root, like args ["cache:flush"] or ["indexer:reindex", "catalogsearch_fulltext"].

    Can change or deleteStarter and up
  • wpRun wp-cli

    Run wp-cli as the site's owner with --path set, like args ["plugin", "list"]. Listing and checksum commands run straight away; deleting plugins or users, db reset/import, search-replace without --dry-run and eval need approval.

    Can change or deleteStarter and up
  • site_consoleRun a site's console

    php for Joomla, ghost (ghost-cli) for Ghost (list_sites shows each site's console; Magento 2 has the magento tool and WordPress the wp tool). Pass the command and its options as args, like ["cache:clear"] or ["plugin:list", "--json"].

    Can change or deleteStarter and up
  • malware_scanScan a site for malware

    Quick malware check of a site (most thorough for Magento and WordPress; for the other kinds list_sites shows it checks the files, upload folders, cron and processes, not the database): backdoor patterns in PHP, PHP in upload folders, disguised and hidden PHP, recently changed...

    ChangesPro and up
  • seo_fields_listList SEO titles, descriptions and alt texts

    List the SEO titles, meta descriptions or image alt texts of a WordPress site (Yoast SEO, Rank Math, SEOPress or The SEO Framework) or a Magento 2 shop (products, categories, CMS pages and product images at the default store scope), with their current values.

    ReadsStarter and up
  • seo_fields_applyChange SEO titles, descriptions and alt texts

    Set SEO titles, meta descriptions or image alt texts on a WordPress site or a Magento 2 shop, up to 30 fields a call, by the ids seo_fields_list gave.

    Can change or deleteStarter and up
  • seo_fields_undoUndo a batch of SEO field changes

    Put back the values a seo_fields_apply batch replaced (kept 90 days). batch is the id from seo_fields_apply or seo_fields_history.

    Can change or deleteStarter and up
  • seo_fields_historySEO field change history

    The batches of SEO title, description and alt text changes made on a site in the last 90 days, with what each changed and whether it was undone. Changes nothing.

    ReadsStarter and up
  • redirects_findFind gone pages that need a redirect

    Find the paths of a site on the user's server that answer 404: from the crawler hits in its access logs (the last hours, default 168) and, when Search Console is connected, pages that had clicks in the last 90 days and are gone now.

    ReadsStarter and up
  • redirects_listList a site's redirects

    The custom redirects a site holds: Magento's url_rewrite table, or WordPress with the Redirection or Rank Math plugin. Changes nothing.

    ReadsStarter and up
  • redirects_applyWrite redirects

    Write redirects (from a path, to a path or full address, code 301 or 302) into the site's redirect store: Magento url_rewrite, or the WordPress Redirection or Rank Math plugin.

    Can change or deleteStarter and up
  • redirects_undoRemove a batch of redirects

    Remove the redirects one redirects_apply batch wrote. batch is the id from redirects_apply or redirects_history.

    Can change or deleteStarter and up
  • redirects_historyRedirect batches written

    The batches of redirects written on a site in the last 90 days, each with its redirects and whether it was undone. Changes nothing.

    ReadsStarter and up
  • db_dumpDump a site's database

    gz file on its server, with the site's own credentials (they never reach the chat). Runs in the background: returns job_id and the file path; follow it with job_output.

    ChangesStarter and up
  • convert_imagesMake WebP or AVIF copies of a site's images

    webp, with the encoder the server has (cwebp, avifenc, ImageMagick or vips; the answer names it, or says what to install).

    ChangesStarter and up
  • list_dumpsList the dumps kept on a server

    ). Each with its size and age. Use it to find what db_restore can load back.

    ChangesFree and up
  • db_restoreLoad a dump into a site's database

    gz dump into a site's database, with the site's own credentials: the undo for a bad change, or a restore from a backup. gz file on the server (a backup the user keeps). ), so the restore itself can be undone with the same tool.

    Can change or deleteStarter and up
  • transferCopy a folder between servers

    Copy a folder from one of the user's servers to another, directly between them, for migrations (rsync over SSH with a temporary key that only allows reading that folder; nothing goes through AskYourStack).

    Can change or deleteStarter and up
  • transfer_closeClose copy links

    Close the copy links between servers (removes the temporary keys). Call it when a migration is done. Without from/to, closes every open link.

    Can change or deleteStarter and up

Google Search Console

Needs: A Google account with access to the property, connected read-only on the SEO page.

  • gsc_propertiesSearch Console properties

    The Google Search Console properties the user picked for AskYourStack, with the access level, and which Google account is connected. Call this first for SEO work that uses Search Console.

    ReadsFree and up
  • gsc_performance_overviewSearch performance overview

    Clicks, impressions, CTR and position against the period before, with the biggest winning and losing queries and pages

    ReadsFree and up
  • gsc_opportunitiesSEO opportunities, ranked

    What to work on first, ranked by clicks at stake: striking-distance queries, page-one pages with a low CTR, decaying pages and competing pages

    ReadsFree and up
  • gsc_search_analyticsSearch Console search analytics

    Performance by query, page, country, device or date, with filters and two-period comparisons

    ReadsFree and up
  • gsc_inspect_urlInspect URLs in Search Console

    Google's own view of up to 20 URLs: indexed or not and why, last crawl, the canonical Google picked

    ReadsFree and up
  • gsc_sitemapsSearch Console sitemaps

    Submitted sitemaps with errors, warnings and when Google last read them

    ReadsFree and up
  • gsc_cannibalizationKeyword cannibalization

    Queries where two or more of your pages split the impressions and compete with each other

    ReadsPro and up · SEO plans
  • google_updatesGoogle ranking updates

    Google's core, spam and helpful content updates, to line up with traffic changes

    ReadsFree and up

Google Merchant Center

Needs: A Google account with access to the Merchant Center account, connected on the SEO page with Merchant Center ticked.

  • merchant_accountsMerchant Center accounts

    The Google Merchant Center accounts the user's connected Google account can see (sub-accounts of a multi-client account included), with their ids. Call this first for Shopping and free listing questions.

    ReadsStarter and up · SEO plans
  • merchant_issuesWhy products are not showing on Google Shopping

    Why products are not showing in Google Shopping ads and free listings: per destination and country the number of products active, pending, disapproved and expiring, the account's own issues (suspensions, missing settings, website claims), and the product issues grouped by kind...

    ReadsStarter and up · SEO plans
  • merchant_productsMerchant Center products and their issues

    Products in Merchant Center with their issues: offer id, title, link, and each issue with severity, the attribute concerned, where it applies and Google's explanation.

    ReadsStarter and up · SEO plans

Google Analytics 4

Needs: A Google account with access to the GA4 property, connected read-only.

  • ga4_propertiesAnalytics properties

    The Google Analytics 4 properties the user picked for AskYourStack, each with a health check: time zone, currency, data retention, key events (conversions) set up, and whether data is still coming in (sessions yesterday and in the last 7 days).

    ReadsPro and up · SEO plans
  • ga4_overviewAnalytics overview

    Sessions, users, engagement, conversions and revenue against the period before, by channel, with organic search's share

    ReadsPro and up · SEO plans
  • ga4_landing_pagesAnalytics landing pages

    Landing pages with engagement, conversions and revenue, for organic search or any channel

    ReadsPro and up · SEO plans
  • ga4_ai_trafficVisits from AI assistants

    Visits from ChatGPT, Perplexity, Gemini, Claude, Copilot and other AI assistants, and the pages they land on

    ReadsPro and up · SEO plans
  • ga4_reportAnalytics report

    Any GA4 report: pick dimensions, metrics, filters and a comparison period

    ReadsPro and up · SEO plans
  • ga4_realtimeAnalytics right now

    Who is on the site right now, to check a launch, a campaign or that tracking works

    ReadsPro and up · SEO plans

Bing Webmaster Tools and IndexNow

Needs: A Bing Webmaster Tools account connected on the SEO page (IndexNow needs only a key file on the site).

  • indexnow_submitTell Bing about changed pages (IndexNow)

    Tells Bing, Yandex and the other IndexNow search engines which pages are new, changed or gone, so they crawl them now

    ChangesStarter and up · SEO plans
  • bing_sitesBing Webmaster Tools sites

    The sites in the user's Bing Webmaster Tools account and which of them the AI may read (picked on the SEO page).

    ReadsStarter and up · SEO plans
  • bing_performanceBing search performance

    Bing's clicks and impressions by day, the last 28 days against the 28 before, top queries and pages

    ReadsStarter and up · SEO plans
  • bing_crawlHow Bing crawls a site

    What Bingbot crawled and indexed, its errors, and the crawl issues per address

    ReadsStarter and up · SEO plans
  • bing_keywordsKeyword research from Bing

    Bing's own search counts for a keyword, its monthly history and related keywords, free

    ReadsStarter and up · SEO plans
  • bing_submitSubmit pages or a sitemap to Bing

    Submit pages or a sitemap to Bing, with the quota left

    ChangesStarter and up · SEO plans
  • bing_sitemapsSitemaps at Bing

    The sitemaps Bing knows for a site, with status, when Bing last read them, and how many addresses they hold. To submit one, use bing_submit with sitemap.

    ReadsStarter and up · SEO plans

Keywords and live Google results

Needs: Nothing to connect: a monthly allowance comes with the plan.

  • keyword_volumeGoogle search volume for keywords

    Google's monthly search volume, 12-month history, CPC and competition for up to 200 keywords, in any country and language

    ReadsStarter and up · SEO plans
  • keyword_ideasKeyword ideas with volume and difficulty

    Keyword suggestions around a seed, with volume, keyword difficulty and search intent

    ReadsStarter and up · SEO plans
  • serp_checkThe live Google results for a keyword

    The live Google results for a keyword, desktop or mobile, with your site's positions and the page features (AI overview, snippets, people also ask)

    ReadsStarter and up · SEO plans
  • domain_keywordsWhat a domain ranks for

    What any domain ranks for, with position, volume, estimated visits and page, and the domains competing with it

    ReadsStarter and up · SEO plans

Pages, crawling and technical SEO

Needs: Nothing to connect for public pages; crawl_report and site_audit read from a connected server.

  • crawl_reportWhat crawlers fetched

    What Googlebot, Bingbot, AI crawlers and SEO bots really fetched, from your access logs: errors, crawl waste, fake Googlebots

    ReadsFree and up
  • validate_schemaValidate structured data

    Structured data checked against schema.org and Google's rich-result requirements

    ReadsStarter and up · SEO plans
  • core_web_vitalsCore Web Vitals

    Real-user LCP, INP and CLS from the Chrome UX Report, 6 months of history, and a Lighthouse test with the causes

    ReadsStarter and up · SEO plans
  • page_auditAudit pages

    Status, redirect chains, titles, descriptions, canonicals, hreflang, headings, robots and issues for up to 10 URLs

    ReadsPro and up · SEO plans
  • page_contentRead a page's content

    A page's main content as clean text, to review, compare with a competitor or rewrite

    ReadsPro and up · SEO plans
  • robots_checkCheck robots.txt

    robots.txt tested the way Google reads it, for Googlebot, Bingbot and AI crawlers

    ReadsFree and up
  • llms_txtBuild an llms.txt

    An llms.txt for your site, the file AI assistants read: name, summary and key pages from your sitemap with their own titles and descriptions

    ReadsStarter and up · SEO plans
  • sitemap_checkCheck sitemaps

    Sitemaps audited: limits, lastmod, and a sample of URLs that should answer 200 and be their own canonical

    ReadsPro and up · SEO plans
  • site_auditCrawl and audit a whole site

    A crawl of your whole site from your own server (up to 5,000 pages, no CDN in the way): broken links, redirect chains, repeated titles, thin and duplicate pages, sitemap problems, read by issue with site_audit_report

    ChangesPro and up
  • site_audit_reportRead a site audit

    Read a site audit that site_audit made. Without more arguments: the summary of the latest run (pages by status and by clicks from the start page, every issue with its count, why it matters and three examples, and what changed since the run before).

    ReadsPro and up
  • seo_historySEO history and alerts

    Daily Search Console, Analytics and Core Web Vitals figures kept for as long as you like, and alerts when clicks fall, a top page leaves the index or a vital turns poor

    ReadsStarter and up · SEO plans
  • disavow_fileWrite a disavow file for Google

    Writes the disavow file for Google from your Ahrefs, Semrush, SE Ranking or Bing link data, merged with the one Google already has, ready to upload

    ReadsStarter and up · SEO plans

Sites without a server

Needs: A WordPress site connected with an application password, or a WhizzyCommerce shop connected by sign-in.

  • connected_sitesSites connected without a server

    Sites the user connected without a server: a WordPress site through its REST API (any host, no SSH) or a WhizzyCommerce shop through the shop's own connector.

    ReadsFree and up
  • content_listList a connected site's content

    List content of a connected site, newest change first. WordPress: posts, pages, media, categories, tags and the site's own content types (products on a WooCommerce shop, for example).

    ReadsFree and up
  • content_getRead one item of a connected site

    Read one item of a connected site in full, as its editor would see it: title, content (the stored source), status, address and what else it has.

    ReadsFree and up
  • content_saveCreate or change content on a connected site

    Create or change content on a connected site. Without id it creates (as a draft unless status says otherwise); with id it changes only the fields you pass.

    Can change or deleteStarter and up
  • content_uploadUpload an image to a connected site

    Add an image to a connected site's media library (WordPress) or files (Shopify) from a public address (jpeg, png, gif, webp or avif, up to 15 MB), with its alt text and title.

    ChangesStarter and up
  • content_trashMove content to the site's trash

    Move a post, page or other item of a WordPress site to its trash (WordPress keeps it 30 days; content_undo brings it back), or remove a URL redirect of a Shopify store (content_undo makes it again).

    Can change or deleteStarter and up
  • content_undoUndo a content change

    Undo a change made through content_save, content_upload or content_trash on a connected site: an edit gets its old values back, a created item goes to the trash, a trashed one comes back.

    Can change or deleteStarter and up
  • whizzy_toolsWhat a WhizzyCommerce shop offers

    For a connected WhizzyCommerce shop (see connected_sites): what the shop lets an AI do right now, as its own list of capabilities with their arguments: orders and shipping, products, categories and imports, prices, sales, coupons and gift cards, customers, languages and...

    ReadsFree and up
  • whizzy_callRun a WhizzyCommerce shop capability

    Run one capability of a connected WhizzyCommerce shop, by the name whizzy_tools gave, with its arguments. Reads answer straight away.

    Can change or deleteFree and up

Cloudflare

Needs: A Cloudflare API token for the zone, pasted on the Sites page.

  • cf_zonesCloudflare zones

    The Cloudflare zones (domains) the user connected, with status, plan, name servers and what the AI may do there. Start here before any other cf_ tool. Cloudflare is connected on the Sites & Apps page with an API token; no server is needed.

    ReadsStarter and up
  • cf_dns_listList Cloudflare DNS records

    List the DNS records of a Cloudflare zone, filtered by type, name or search (part of a name or content), each with its id. Changes nothing.

    ReadsStarter and up
  • cf_dns_addAdd a Cloudflare DNS record

    Add a DNS record to a Cloudflare zone: a new subdomain, a mail record or a verification text. proxied defaults to false. It can be removed again with cf_undo.

    ChangesStarter and up
  • cf_dns_changeChange a Cloudflare DNS record

    Change one DNS record of a Cloudflare zone, by record_id from cf_dns_list (or name plus type when they match one record): its content, TTL, proxy, priority or name.

    Can change or deleteStarter and up
  • cf_dns_removeRemove a Cloudflare DNS record

    Remove one DNS record of a Cloudflare zone, by record_id from cf_dns_list (or name plus type when they match one record). Records that were there before AskYourStack need the connection's "change anything" mode. cf_undo creates it again.

    Can change or deleteStarter and up
  • cf_purge_cachePurge the Cloudflare cache

    Clear Cloudflare's cache of a zone: everything, or only the given addresses (up to 30). Use it after deploying changes a visitor still sees old, or a wrong page cached. Nothing to undo; the cache fills again from the origin.

    Can change or deleteStarter and up
  • cf_firewall_listList Cloudflare firewall rules

    List the custom firewall rules and rate limits of a Cloudflare zone, each with its id, action and expression. Changes nothing.

    ReadsStarter and up
  • cf_firewall_addAdd a Cloudflare firewall rule

    Add one firewall rule or rate limit to a Cloudflare zone. What it matches comes from ip or ips (addresses or CIDR), asn, country or countries, path (starts with), user_agent (contains), host and not_verified_bot, combined with and; or a raw expression in Cloudflare's rule language.

    Can change or deleteStarter and up
  • cf_firewall_removeRemove a Cloudflare firewall rule

    Remove one custom firewall rule or rate limit from a Cloudflare zone, by rule_id from cf_firewall_list. cf_undo adds it again.

    Can change or deleteStarter and up
  • cf_settingsCloudflare zone settings

    Read or change a Cloudflare zone's settings: security_level (essentially_off, low, medium, high, under_attack) or under_attack true/false as a shortcut, development_mode (skip the cache for 3 hours), browser_check, automatic_https_rewrites; and in "change anything" mode ssl...

    Can change or deleteStarter and up
  • cf_analyticsTraffic through Cloudflare

    Traffic through Cloudflare for a zone (proxied traffic only): requests, cached share, visitors, threats, bandwidth and status codes per day for up to 30 days, top countries, requests per hour for the last 24 hours, and a sample of the firewall events of the last 24 hours (what...

    ReadsStarter and up
  • cf_undoUndo a Cloudflare change

    Undo a Cloudflare change made through the cf_dns_, cf_firewall_ or cf_settings tools: a record or rule that was added is removed, a changed one gets its old values, a removed one is made again.

    Can change or deleteStarter and up

Also served: playbooks (step-by-step guides the AI follows for server setup, Magento, WordPress, hardening, backups, migrations, malware cleanup, SEO and more) as MCP prompts and through get_playbook. They ship with the server; nothing is fetched from elsewhere. The machine-readable list is at https://askyourstack.com/mcp/catalog; what changed lately is in the changelog.