Koskamo

Sitewalk MCP

An MCP server that performs technical SEO audits by crawling websites like a search engine bot. It identifies issues such as response codes, redirects, meta tags, and structured data, providing ranked fixes and generating CSV/PDF reports for AI assistants.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Sitewalk MCP logo, by Aditya SharmaVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-06Operated by Aditya Sharma
You need:sign-in by a 6-digit email code
MCP endpoint (Streamable HTTP)
https://audit.adityaarsharma.com/mcp
Vendor documentation

What its tools do

3 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

Can change data (1)

3 of 3 have a description · 3 of 3 declare behavior hints · 0 of 3 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Passed Official MCP Registry namespace is tied to audit.adityaarsharma.com ·
  • Passed Endpoint is on the registry namespace domain ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Run technical SEO audits on websites
  • Identify broken links and redirect chains
  • Generate prioritized fix recommendations
  • Download full audit reports in CSV or PDF

Source and maintenance

Vendor evidenceRegistry 1.0.0

Protocol and capabilities

Server
Sitewalk 1.30.0
MCP protocol negotiated in check
2025-11-25
Tools
3 advertised
Resources
0 advertised
Resource templates
0 advertised
Prompts
0 advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": false
  },
  "prompts": {
    "listChanged": false
  },
  "resources": {
    "subscribe": false,
    "listChanged": false
  },
  "experimental": {}
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Sitewalk crawls a public website and reports technical SEO problems, ranked by how much each one is likely to matter. It works only through assistants like you. There is no website form to run an audit, so never send the user to a website to start one: run it here with the tools. The user may be new to SEO and to Sitewalk. Talk to them in plain English, and say in one short line what is happening at every step, so they are never left wondering. Method: 1. Take one site address from the user (a bare domain such as example.com is fine). Audit the site root unless they asked about a single page. Ask only if no address was given. Before you call the tool, tell them in one line that you are starting the audit. 2. Call start_site_audit once. If it says sign-in is required, tell the user in plain words what happens next: Sitewalk shows a connect window, emails them a 6-digit code, they type it in and allow access. No password, and it is needed only once. When they have connected, call start_site_audit again for the same site yourself; do not make them repeat the request. Never start a second audit of the same site while one is running. 3. As soon as the audit starts, tell the user: the site, the page limit, and the wait or time range exactly as the result's message words it (or only the place in line, when the message gives no time). A wait or time range is an estimate: say 'may' and 'about', and never promise a time. Never answer with only 'queued' or 'started'. 4. Keep the user informed until the audit ends. Call get_audit_status, wait next_check_after_s seconds (20 to 30 if it is empty), and call it again. After every check, write one short progress line from the result's message: the stage, pages crawled out of the limit, and roughly how much longer. Vary the wording; do not repeat the same line. Do not call get_audit_report before the status is completed. If stalled is true, say the site is responding slowly and that Sitewalk is still working. If the audit is queued, say it is waiting for another audit to finish, give the place in line from the message, and pass on the wait exactly the way the message words it: 'may start in about A to B minutes'; or 'may take longer than 30 minutes' with no figure; or, when the message gives only the place and says the wait cannot be estimated well, say that in plain words and give no time at all. Present any wait as an estimate and never as a guarantee: do not say 'will start in', 'in exactly' or give a clock time, do not add a guess, an average or a range of your own, and do not work out a number from the place in line or from est_start_in_s. If the wait runs past what you said, say so plainly and keep checking. When the message says Sitewalk will email the user, tell them once, in plain words, that they can stop waiting and the result will arrive by email; say nothing about email when the message does not. Never abandon a running audit and never go quiet: keep checking until the status is completed, failed or canceled. Pages are fetched one at a time, at least 1.5 seconds apart, and each page has its images and checks to get through as well, so in practice 50 pages usually take a few minutes and 500 pages 20 to 60 minutes, longer on a slow site. Use the time range in the status message when it has one, as an estimate ('about', 'usually', 'may'), rather than a figure of your own. Only if you cannot keep going, for example the user leaves the chat, tell them the audit is still running, give them report_url, and say that asking 'is my audit done?' will bring the results back. 5. When the status is completed, say so, then call get_audit_report. Open with the site health score out of 100 when the result has one, then give the top three issues: what is wrong, why it costs search traffic, pages affected with up to five example URLs, and the exact fix. Give the next five a short paragraph each and list the rest one line each. End with two short lines. First: fix the top three, then ask me to audit again and I will show how the health score moved. Second: the full report, with CSV and PDF downloads, is at full_report_url. Share pdf_url or csv_url in the chat only if the user asks for a file. If the status is failed or canceled, say so plainly with the reason, use next_step if one is given, and offer to audit another site. 6. If the user asks for more, work from the same report: a task list for a developer, fixes written for their CMS or framework, a better title or description per page. Answer from the existing report; do not re-run an audit to answer a question it already covers. Rules: report only what the crawl found and never invent an issue, count or URL. A site that blocks the crawler (robots.txt, 403, 429) is blocked, not clean. If the crawl hit its page limit, say so: a free account crawls up to 500 pages per audit once the user is signed in with their confirmed email (50 without it); no domain verification is needed. A free account includes 5 audits a month; if the limit is reached, say it resets automatically next month and suggest fixing a batch before re-running. Never state a price, a plan or an upgrade, and never give a payment link or suggest the user buy anything.

Tools

3 advertised

start_site_audit — Start site audit
Advertised by the server during the last successful anonymous check.
Open-world

Use this when the user asks for a technical SEO audit, a site crawl or an SEO health check of a website, or for broken links, redirect chains, duplicate or missing titles and meta descriptions, canonical, noindex or hreflang problems, sitemap errors, pages that are hard to find from the home page, or whether robots.txt or meta robots tags keep search engines out of pages. Takes a site address (a domain such as example.com or a full URL; the scheme is optional) and starts a crawl of that site, then returns an audit_id, the page limit and a time estimate to relay to the user. The crawl follows robots.txt, is rate limited, and takes a few minutes for a small site and longer for a large one. The number of pages crawled is capped; the report says when the cap was reached. If the address redirects (http to https, or to www), the final site is audited. Only use it for sites the user owns or is allowed to audit. Do not use it for backlinks, keyword rankings, Google Search Console or analytics data, or writing content: Sitewalk does not measure those. Optional render_scripts (true or false, default false): set it to true only when the user asks for the pages to be read after their scripts have run, as a browser shows them. The server decides whether that is possible for this site and says in the result how the pages were read; report that line as given. Leave it out otherwise. To read a finished audit, use get_audit_report instead.

start_site_audit input schema
{
  "type": "object",
  "title": "start_site_auditArguments",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string",
      "title": "Url"
    },
    "render_scripts": {
      "type": "boolean",
      "title": "Render Scripts",
      "default": false
    }
  }
}
start_site_audit output schema
{
  "type": "object",
  "title": "start_site_auditDictOutput",
  "additionalProperties": true
}
start_site_audit annotations
{
  "readOnlyHint": false,
  "openWorldHint": true,
  "destructiveHint": false
}
get_audit_status — Check audit status
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use this after start_site_audit to check whether the audit has finished. Takes the audit_id. Returns status (queued, running, completed, failed or canceled), pages crawled so far, the page limit, and any notes or error text. If the status is failed, the error field says why (for example the site blocked the crawler or robots.txt disallows it). Also returns phase, a plain-English message with the stage, pages crawled and time left, progress_pct, stalled and next_check_after_s. After each call, show the user the message, then call again after next_check_after_s seconds (20 to 30) until the status is completed, failed or canceled. When completed it also returns report_url, pdf_url and csv_url.

get_audit_status input schema
{
  "type": "object",
  "title": "get_audit_statusArguments",
  "required": [
    "audit_id"
  ],
  "properties": {
    "audit_id": {
      "type": "string",
      "title": "Audit Id"
    }
  }
}
get_audit_status output schema
{
  "type": "object",
  "title": "get_audit_statusDictOutput",
  "additionalProperties": true
}
get_audit_status annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}
get_audit_report — Get audit report
Advertised by the server during the last successful anonymous check.
Advertised read-only

Use this once get_audit_status shows completed. Takes the audit_id and an optional top_n (1 to 25, default 10). Returns the issues ranked by likely impact, each with the number of affected pages, example URLs and a plain-English fix, plus a list of what was checked, what was not checked, and a note when the page limit was reached, and the full_report_url, pdf_url and csv_url links. Report the issues as given; do not add findings that are not in the result.

get_audit_report input schema
{
  "type": "object",
  "title": "get_audit_reportArguments",
  "required": [
    "audit_id"
  ],
  "properties": {
    "top_n": {
      "type": "integer",
      "title": "Top N",
      "default": 10
    },
    "audit_id": {
      "type": "string",
      "title": "Audit Id"
    }
  }
}
get_audit_report output schema
{
  "type": "object",
  "title": "get_audit_reportDictOutput",
  "additionalProperties": true
}
get_audit_report annotations
{
  "readOnlyHint": true,
  "openWorldHint": false,
  "destructiveHint": false
}

Prompts

0 advertised

No prompt definitions available.

Resources

0 advertised

No resource definitions available.

90-day uptime

A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.

Too few checks for a percentage yet (3 of 3 answered).

  1. 2026-11-07: 2 of 2 checks answered
  2. 2026-11-09: 1 of 1 checks answered

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
1220 ms
95th percentile latency
1220 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 1220 ms · metadata changed · 3 tool(s), 0 resource(s), 0 resource template(s), 0 prompt(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http sitewalk-mcp https://audit.adityaarsharma.com/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add sitewalk-mcp --url https://audit.adityaarsharma.com/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable sitewalk-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "sitewalk-mcp": {
      "url": "https://audit.adityaarsharma.com/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "sitewalk-mcp": {
      "type": "streamableHttp",
      "url": "https://audit.adityaarsharma.com/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start sitewalk-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "sitewalk-mcp": {
      "type": "http",
      "url": "https://audit.adityaarsharma.com/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http sitewalk-mcp https://audit.adityaarsharma.com/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://audit.adityaarsharma.com/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "sitewalk-mcp": {
      "serverUrl": "https://audit.adityaarsharma.com/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Sitewalk MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run Sitewalk MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing