pagespeed-insights-mcp

pagespeed-insights-mcp

This MCP server integrates Google PageSpeed Insights to analyze website performance, accessibility, best practices, SEO, and PWA on mobile and desktop, returning detailed audits and optimization opportunities.

Category
Visit Server

README

PageSpeed Insights MCP Server

FastMCP server for Google PageSpeed Insights analysis through the PageSpeed Insights REST API.

Features

  • Run PageSpeed Insights analysis for desktop or mobile.
  • Return compact summaries with Lighthouse category scores, core metrics, field data, opportunities, warnings, and failed audits.
  • Compare mobile and desktop results.
  • List performance opportunities sorted by estimated savings.
  • Fetch a specific Lighthouse audit by id, including its full details payload.
  • Expose local API metadata and supported categories/strategies.

Google API endpoint

This server calls:

GET https://pagespeedonline.googleapis.com/pagespeedonline/v5/runPagespeed

The required query parameter is url. Optional parameters used by this server include strategy, repeated category, locale, captchaToken, and key.

API docs:

  • https://developers.google.com/speed/docs/insights/rest
  • https://developers.google.com/speed/docs/insights/rest/v5/pagespeedapi/runpagespeed

Create .env file

An API key is optional for trial calls, but recommended for repeated automated usage.

# Optional
PAGESPEED_API_KEY=google_api_key_here

# Optional alternative key name
GOOGLE_API_KEY=google_api_key_here

# Optional
PAGESPEED_API_URL=https://pagespeedonline.googleapis.com
PAGESPEED_TIMEOUT_SECONDS=120

Tools

get_pagespeed_api_metadata

Returns endpoint details, whether an API key is configured, supported strategies, supported categories, aliases, and documentation links.

run_pagespeed

Runs PageSpeed analysis for a URL.

Parameters:

  • url: URL to analyze. Must start with http://, https://, url:http(s)://, or origin:http(s)://.
  • strategy: DESKTOP or MOBILE. Defaults to DESKTOP.
  • categories: optional list. Supported values: PERFORMANCE, ACCESSIBILITY, BEST_PRACTICES, SEO, PWA, or all.
  • locale: optional locale such as en-US.
  • utm_campaign: optional campaign name for analytics.
  • utm_source: optional campaign source for analytics.
  • captcha_token: optional captcha token.
  • full_response: return the full Google API JSON response when true.
  • api_key: optional per-call API key override.

analyze_url

Runs analysis and returns a compact report. By default it runs performance, accessibility, best practices, and SEO.

compare_mobile_desktop

Runs mobile and desktop analysis for the same URL and returns score deltas.

list_opportunities

Runs performance analysis and returns opportunity audits sorted by estimated savings.

get_lighthouse_audit

Returns one Lighthouse audit by audit id. Use categories=["all"] if the audit may not be part of the Performance category.

Create a virtual environment

cd PROJECT_FOLDER
python3 -m venv .venv

Activate it

source .venv/bin/activate

Install dependencies

pip install fastmcp requests python-dotenv

Freeze the requirements

pip freeze > requirements.txt

Test it

python3 server.py

You should see:

Starting MCP server 'pagespeed-insights-mcp-server' with transport 'stdio'

Configure OpenCode

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "pagespeed-insights": {
      "type": "local",
      "command": [
        "PATH_TO_YOUR_MCP_PROJECT/.venv/bin/python",
        "PATH_TO_YOUR_MCP_PROJECT/server.py"
      ],
      "enabled": true
    }
  }
}

Docker / HTTP mode

docker compose up --build

HTTP mode listens on port 8004.

Docker Compose reads values from .env automatically when the file exists, but the container can run without one for unauthenticated trial calls.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured