Fix in 1 click

AI providers, each CMS connector and its prerequisites, and the safety model - human approval, journal, undo.

How it works

Since 3.5, after a crawl, the Fix in 1 click tab groups issues by impact (pages × severity) and tags each one AI-fixable, Automatic or Manual. Every correction follows the same path, and the AI never touches your site by itself:

issue → proposal → before / after review → human approval → connector applies → re-crawl of the URL → history (undo)
Fix in 1 click: issues grouped by impact with AI / automatic / manual badges and cost estimate
  1. Fix one URL or Fix all for an issue type. Claude or ChatGPT writes SEO titles, meta descriptions, H1, image alt texts and JSON-LD (Article, Organization, FAQPage, Product depending on the page) in the page's language, from a minimal context: URL, language, title, H1, an excerpt of about 2 000 tokens, target lengths and the values of other pages to avoid duplicates. The estimated cost is shown first; batches run 3 requests at a time with back-off on 429.
  2. Automatic fixes without AI: a 301 redirect from an internal 404 to the closest existing URL (the parent folder is searched first), a missing or inconsistent canonical, an accidental noindex, links pointing to redirects replaced by the final URL.
  3. Non-automatable issues (performance, hosting, Core Web Vitals…) get a written action plan, never an Apply button.
  4. Review: before / after side by side, character counter against the target length, inline edit, Approve / Regenerate / Ignore, multi-select.
  5. Apply through a connector. Simulation mode is on by default: nothing is sent until you switch it off and accept the warning.
  6. Each fixed URL is re-crawled and marked verified when the new value is visible on the public page (a cache or CDN may delay it; recheck later from the history). The Fix history tab undoes one fix or a whole batch and exports the Applied fixes PDF.
Review panel: before / after, character counter, approve, regenerate, ignore

AI providers

Settings → AI: choose Claude (Anthropic) or ChatGPT (OpenAI), paste your API key (from console.anthropic.com or platform.openai.com), pick a model from the editable list (defaults in src/ai/models.json), and click Test the connection. The key is stored encrypted (AES-256-GCM) on your computer, never returned to the browser, logged or exported, and sent only to that provider; you pay the provider directly. Invalid answers get one retry, then a clear failure.

AI settings: provider, API key, model and connection test

Connectors

Connection dialog: WordPress, GitHub pull request or export

The connector is chosen per site; Arachnide detects the CMS automatically. Credentials are stored locally, encrypted, and never returned by the API, logged or exported. A connector writes only the field of the fix it was given, on the URL of the fix, and always returns the previous value so the change can be undone.

ConnectorWhat to do on the siteFields applied
WordPress (+ WooCommerce)In the Fix tab, click the connection button → WordPress → Download the WordPress plugin (.zip), then Plugins → Add New → Upload Plugin. Create an application password in Users → Profile → Application Passwords and enter the site address, username and that password. An Editor account is enough for content, Administrator for redirects. Works with Yoast SEO, Rank Math, SEOPress, All in One SEO and Redirection.Title, description, H1, canonical, noindex, image alt, 301 redirects (H1 and alt work even without the plugin)
GitHub pull request (Lovable, Bolt.new, React, Next.js, Astro, static HTML)Create a fine-grained token: Only select repositories (one repository), permissions Contents: Read and write and Pull requests: Read and write. Enter owner/repo and the token. Arachnide detects the framework, finds the exact location of titles, descriptions, H1, alt and links in the code (AI-assisted when ambiguous), shows the diff, then opens a pull request on arachnide/fix-YYYYMMDD-HHMM with a summary table. Undo closes the PR or opens a revert PR. For Lovable, merging it into the default branch updates the project.Title, description, H1, alt, links
ShopifyCustom app with scopes read/write_products, read/write_content, read/write_online_store_navigation, read/write_files; Admin GraphQL APITitle, description, H1, noindex, product image alt, redirects
WixAPI key with Manage SEO Settings (+ read Blog / Stores)Title, description, canonical, noindex, redirects
WebflowSite token with pages, CMS and sites scopes; bind the CMS SEO fields in the Designer; publish after the writeTitle, description, CMS item H1, redirects (Enterprise)
Joomla 4/5API token of a Super User, Web Services plugins enabledTitle, description, H1, noindex, image alt, redirects
Drupal 9–11JSON:API with write access and HTTP Basic Auth (+ Metatag, Redirect modules)All 7
PrestaShopAdvanced Parameters → Webservice → key with products / categories / cmsTitle, description, H1 (name), alt in descriptions
Files (static sites, Next.js, Hugo…)A folder with the HTML (Git checkout or build output); redirects in _redirects (Netlify), .htaccess (Apache), nginx or vercel.json; deploy as usual afterwardsAll 7
Cloudflare Worker (any site behind Cloudflare)Deploy the Arachnide SEO Worker, which rewrites the HTML at the edge; account id, KV namespace id and API tokenAll 7
Manual (Squarespace and other closed builders)Nothing: the exact click path and the value to paste, per CMS—
ExportCSV, JSON or a PDF with step-by-step instructions for any other CMS—

Shopify, Webflow and Wix are fully wired for the MCP server (Claude Desktop and Claude Code). In the Fix in 1 click interface of the current version they go through Export; the adapter that connects them to the interface is described in docs/CONNECTORS.md, which also explains how to add a CMS in five steps.

The settings of each connector as the MCP server expects them (secrets as env:VARIABLE):

ConnectorSettings (secrets as env:…)What to do on the site
wordpressuser, appPasswordUsers → Profile → Application Passwords; install the Arachnide Connector plugin for SEO fields and redirects
shopifyshop (xxx.myshopify.com), accessToken, apiVersionCreate a custom app with scopes read/write_products, read/write_content, read/write_online_store_navigation, read/write_files
wixsiteId, apiKeyAPI key with Manage SEO Settings (+ read Blog / Stores)
webflowsiteId, token, publish (none/items/site)Site token with pages, CMS and sites scopes; bind CMS SEO fields in the Designer
joomlatokenJoomla API token of a Super User (Web Services plugins enabled)
drupaluser, password, metatagFieldEnable JSON:API (with write) and HTTP Basic Auth
prestashopapiKey, languageIdAdvanced Parameters → Webservice → key with products / categories / cms
cloudflareaccountId, namespaceId, apiTokenDeploy the Worker
filesroot, redirectsFormat (netlify, apache, nginx, vercel)Folder with the HTML (Git checkout, build output); deploy as usual afterwards
manualcmsnothing

Coverage

PlatformShare of all websitesHow fixes are appliedFields applied automatically
WordPress (+ WooCommerce)40.1%REST API + Arachnide Connector plugin (Yoast, Rank Math, AIOSEO, SEOPress, Redirection, or none)all 7 (H1 + alt work even without the plugin)
Shopify5.4%Admin GraphQL APItitle, description, H1, noindex, product image alt, redirects
Wix4.2%Wix REST APIs (Item SEO Tags, URL Redirect Manager)title, description, canonical, noindex, redirects
Squarespace2.4%no write API → step-by-step instructions, or Cloudflare Worker—
Joomla 4/51.1%Web Services API (articles)title, description, H1, noindex, image alt, redirects
Webflow0.8%Data API v2title, description, CMS item H1, redirects (Enterprise)
Drupal 9-110.6%JSON:API (+ Metatag, Redirect modules)all 7
PrestaShop0.5%Webservice APItitle, description, H1 (name), alt in descriptions
No CMS (custom, static, Next.js, Hugo…)31.6%files (edit the HTML + _redirects / .htaccess / nginx / vercel.json) or Cloudflare Workerall 7
Any other site behind Cloudflare—Arachnide SEO Worker rewrites the HTML at the edgeall 7
Everything else—manual: exact click path + value to paste, per CMS—

Content written by page builders (Elementor, Divi…), theme templates or JavaScript may not be reachable through CMS APIs: those changes come back as manual steps, or go through the Cloudflare Worker. Arachnide changes on-page SEO fields and redirects; it does not rewrite body content, change templates or touch your hosting.

Safety model

  • Preview first. Nothing is written before you see the current value, the new value and the SEO warnings (pixel width, noindex…).
  • Human approval of every change; simulation mode by default; an explicit warning before the first live write.
  • Policy per site: allowed fields, maximum changes per batch, read-only mode.
  • Journal and undo: every applied change stores its previous value (~/.arachnide/journal/<site>.jsonl for the MCP server; the Fix history in the app); a whole batch can be rolled back.
  • Verify: the public page is read again after the write.
  • Only the site's own host is accepted; no change can target another domain.
  • Connectors were built from the official API documentation and tested against faithful mock servers, plus the Cloudflare Worker in the real Workers runtime. Test on a staging site or a few pages first, and report issues on GitHub.
Version 3.21.0 Reference tables and the changelog are generated from the Arachnide repository (commit f287355). Edit this page on GitHub