speedvault

SpeedVault MCP Measure and fix web performance + SEO from inside your AI coding agent.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeCan modify data

What it can do

  • Run Audit: Run a single-page Lighthouse performance audit on a URL and (by default) wait for it to complete, returning scores (performance/structure), Core Web Vitals (LCP/FCP/TBT/CLS/SI), page weight
  • Get Audit: Fetch a previously-started audit by id. Set wait=true to block until it completes.
  • List Audits: List the most recent audits run via the API for this account.

What data it sees

Do you need an account

No: the server works without sign-in

SpeedVault MCP

Measure and fix web performance + SEO from inside your AI coding agent. SpeedVault gives Claude Code, Cursor, Windsurf, and any MCP client a tight audit → fix → re-audit loop — so your agent can ship fast pages without you ever leaving the editor.

Why SpeedVault?

Most performance tools measure. SpeedVault measures, diagnoses, and hands your agent the exact code-level fix — then verifies the score went up. It's the only MCP server that closes the loop:

run_audit  →  read scores + Core Web Vitals  →  get_fix_suggestions
     ↑                                                    │
     └──────────  re-audit to confirm  ←  apply the fix ──┘

What it can do (18 tools)

Capability Tools
⚡ Performance audits run_audit, get_audit, list_audits, compare_runs
🔧 Code-level fixes get_fix_suggestions — prioritized fixes with copy-paste snippets
🔍 Site-wide SEO crawls crawl_site, get_crawl, get_seo_issues, get_seo_fixes, recheck_template
📡 Real-user monitoring get_rum, get_rum_embed — field Core Web Vitals (LCP/INP/CLS/FCP/TTFB)
🔔 Scheduled monitoring list_monitors, create_monitor
🌐 Domain management list_domains, add_domain, verify_domain
📊 Account account_status

Every result is condensed for agents — you get scores, the worst offenders, and actionable fixes, never a 500 KB raw Lighthouse dump that blows your context window.

Install

Remote (fastest — no install)

{
  "mcpServers": {
    "speedvault": {
      "url": "https://www.speedvault.io/api/mcp",
      "headers": { "X-API-Key": "sv_your_key" }
    }
  }
}

Local (npx / stdio)

claude mcp add speedvault --env SPEEDVAULT_API_KEY=sv_your_key -- npx -y @speedvault/mcp

Get a free API key at speedvault.io → Settings → API Keys.

Pricing

Free tier with 25 credits/mo — no card required. Audits cost 1 credit; AI fixes are credit-metered; reads (get_audit, get_rum, list_*, account_status) are free. Same key, same credits, whether you connect remote or via npx.

How to connect

How to connect speedvault to Claude

The server address to paste into Claude settings:

https://speedvault--speedvault.run.tools

  1. Open Claude (claude.ai or the desktop app).
  2. Go to Settings → Connectors.
  3. Click Add custom connector.
  4. Paste the server address copied below into Remote MCP server URL and click Add.
  5. In a chat, click + → Connectors and switch the new connector on.

Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

Authorization

After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

How to connect speedvault to ChatGPT

The server address to paste into ChatGPT settings:

https://speedvault--speedvault.run.tools

  1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
  2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
  3. Open Settings → Connectors and click Create.
  4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
  5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
  6. In a new chat open + → Apps/Connectors and enable the connector.

OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

Authorization

On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

How to connect speedvault to Cursor

The server address to paste into Cursor settings:

https://speedvault--speedvault.run.tools

Fastest: click Open in Cursor below and confirm the prompt.

Manually:

  1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
  2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
  3. Save the file. The server appears in the MCP list; authorize it there if asked.

Authorization

If the service needs sign-in, an authorize button appears next to the server in the MCP list.

Server tool list (18)

Raw names from tools/list. Only developers need these.

run_auditRun a single-page Lighthouse performance audit on a URL and (by default) wait for it to complete, returning scores (performance/structure), Core Web Vitals (LCP/FCP/TBT/CLS/SI), page weight, and the top prioritized opportunities. Use this on the page you just built or changed. Costs 1 credit. After this, call get_fix_suggestions with the returned auditId for concrete code fixes.
get_auditFetch a previously-started audit by id. Set wait=true to block until it completes.
list_auditsList the most recent audits run via the API for this account.
get_fix_suggestionsReturn prioritized, ACTIONABLE fixes. Two modes: • Performance: pass auditId (a completed run_audit). Each fix has the issue, impact, how to fix it, a code snippet where useful, and estimated savings. • SEO/media: pass crawlId (a completed crawl_site), optionally narrowed with issue_type (e.g. "description-missing", "next-gen-images", "image-alt-missing"). Each fix reports how many pages are affected, example URLs, how to fix it, and a ready-to-apply snippet (e.g. <picture>/WebP, <meta name="description">, alt="", unique <title>). This is what you apply to improve scores. Cached perf fixes are free; a fresh AI generation may cost credits.
crawl_siteStart a full-site crawl that aggregates SEO + structure issues across pages (grouped by category/template) and computes a site score. Costs 1 credit. Returns a crawlId; poll with get_crawl (wait=true) to get the grouped issues once it finishes. NOTE: the domain must be verified first — use list_domains / add_domain / verify_domain.
get_crawlFetch a crawl by id with its score and grouped issues. wait=true blocks until done.
get_rumReturn field (real-user) Core Web Vitals for a registered RUM site: p75 LCP/INP/CLS/FCP/TTFB with ratings, sample counts, and trends. Use list of sites from account first if you do not know the siteKey (call get_rum with no siteKey to list sites).
get_rum_embedReturn the <script> beacon snippet to install SpeedVault RUM on a site, so an agent building an app can wire up real-user Core Web Vitals collection. Paste it into the <head>.
list_monitorsList the URLs under scheduled monitoring (SpeedVault Monitor) with their latest score.
create_monitorAdd a URL to scheduled monitoring so SpeedVault re-audits it on a cadence and tracks regressions. Slot-limited by plan. NOTE: the domain must be verified first — use list_domains / add_domain / verify_domain.
compare_runsReturn a structured diff of two completed audits: delta per metric (perf_score, LCP, FCP, TBT, CLS, SI, page_bytes, total_requests) with improved/regressed flags. Use this to see how a change affected performance before and after.
get_seo_issuesReturn the per-template issue breakdown from a completed site crawl. Shows each template (e.g. /products/:slug) with its page count and the SEO issues affecting it, including prevalence ("142 of 312 product pages have missing meta description") and priority scores. Use this after crawl_site to understand which templates need the most work.
get_seo_fixesReturn actionable fix recipes for a completed site crawl. Each fix includes the issue, impact, how to fix it, a code snippet, and before/after showing the exact code change. Optionally narrow to one issue_type (e.g. "description-missing", "next-gen-images").
recheck_templateTrigger a re-crawl of a site that was previously crawled. Use this after applying SEO fixes from get_seo_fixes to verify improvements. Returns a new crawlId. Costs 1 credit.
list_domainsList your domains with their verification status and linked product counts (RUM sites, monitors, analyses). Domains must be verified before you can crawl, monitor, or add RUM to them.
add_domainRegister a new domain. Returns a verification token and instructions (meta tag or DNS TXT record). After adding, call verify_domain to prove ownership. A verified domain is required before you can crawl, monitor, or add RUM.
verify_domainVerify ownership of a registered domain by checking for the meta tag or DNS TXT record. On success the domain becomes "active" and you can use it with all SpeedVault products.
account_statusShow your plan, remaining API credits, rate limit, and per-product entitlements.