MCP server for AI agents

Sitemoth ships a Model Context Protocol server. Point an AI agent at it and it can crawl a site, read the issues, query any tab, inspect a URL's inlinks, compare two crawls and export, with the same checks and limits as the app.

Setup

Claude Code, one line:

claude mcp add sitemoth -- npx -y sitemoth mcp

Claude Desktop or Cursor, in the MCP settings file:

{ "mcpServers": { "sitemoth": { "command": "npx", "args": ["-y", "sitemoth", "mcp"] } } }

The sitemoth command comes from the npm package: npm install -g sitemoth, or use npx -y sitemoth mcp as the command without installing. The desktop app and the MCP server read and write the same .sitemoth files, so an agent's crawl opens in the app and the other way round.

Tools

ToolWhat it does
start_crawlCrawl a URL in the background with limits, speed preset, rendering, include/exclude and content rules. Returns a crawl id.
crawl_status, stop_crawlProgress, throttling state, final summary; stop and analyse, or abort.
list_crawls, open_crawlFind and summarise saved crawl files.
issues, urls_with_issueThe issues overview with fixes, and the affected URLs for one check.
query_tabAny tab and filter, with search, sort, paging and column selection.
url_detail, page_htmlEverything about one URL, including inlinks, outlinks, headers and Search Console queries; the stored raw or rendered HTML.
compare_crawlsDiff two crawl files.
export, generate_sitemapCSV/XLSX per tab, bulk exports, everything-to-folder; XML sitemap.
run_integrationPageSpeed, spelling, Search Console, GA4 on an open crawl.
list_checks, list_tabs, list_bulk_exportsReference for the ids the other tools take.

Guardrails

Crawls default to 2,000 URLs, the Normal speed preset and no resource fetching, so an agent cannot hammer a server by accident. Set SITEMOTH_BLOCKED_HOSTS (comma separated) to hosts the server must refuse, and SITEMOTH_CRAWLS_DIR to change where files go. Results are paged; nothing dumps a whole crawl into the conversation.

Example prompts

  • "Crawl example.com with 500 URLs, then list the errors and tell me which three to fix first."
  • "Compare last month's crawl file with this one and summarise what changed."
  • "Which pages link to /old-pricing/? Give me the anchor texts."
  • "Run spelling on the 20 most linked pages and list the misspellings with suggestions."