PageSpeed MCP Server
About
Acts as a bridge between AI models and Google's PageSpeed Insights API, enabling detailed performance analysis of websites.
Details
- Author
- PhialsBasement
- Repository
- PhialsBasement/Pagespeed-MCP-Server
- GitHub stars
- 4
- Downloads
- 409
- License
- MIT License
- Categories
- AI, Other
- Tags
Jump to
- Analyzes Core Web Vitals: FCP, LCP, TTI, TBT, CLS, Speed Index, TTFB
- Assesses best practices: HTTPS, JavaScript errors, deprecated APIs
- Performs SEO audits: meta descriptions, robots.txt, structured data
- Runs accessibility checks: ARIA validation, color contrast, heading hierarchy
- Provides resource optimization suggestions: image optimization, caching, minification
Setting up with Highlight
Follow these steps to add this server as a custom Highlight plugin:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
PageSpeed MCP ServerCommand (node, npx, python, etc.)nodeArguments-
Argument 1
path/to/mcp-pagespeed-server/dist/index.js
Environment-
GOOGLE_API_KEY
<YOUR-API-KEY>
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Add the PageSpeed MCP to your AI assistant's(claude in this case) configuration file:
{
"pagespeed": {
"command": "node",
"args": ["path/to/mcp-pagespeed-server/dist/index.js"],
"env": {
"GOOGLE_API_KEY": "<YOUR-API-KEY>"
}
}
}
To install PageSpeed Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install mcp-pagespeed-server --client claude
npm install pagespeed-mcp-server
You can customize the PageSpeed analysis by providing additional parameters:
{
"strategy": "mobile", // or "desktop"
"category": ["performance", "accessibility", "best-practices", "seo"],
"locale": "en",
"threshold": {
"performance": 90,
"accessibility": 100,
"best-practices": 90,
"seo": 90
}
}
npm run test
- GitHub Issues: Report bugs and feature requests
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"pagespeed mcp server": {
"env": {
"GOOGLE_API_KEY": "<YOUR-API-KEY>"
},
"args": [
"path/to/mcp-pagespeed-server/dist/index.js"
],
"command": "node"
}
}
}
Linux
{
"env": {
"GOOGLE_API_KEY": "<YOUR-API-KEY>"
},
"args": [
"path/to/mcp-pagespeed-server/dist/index.js"
],
"command": "node"
}
Macos
{
"env": {
"GOOGLE_API_KEY": "<YOUR-API-KEY>"
},
"args": [
"path/to/mcp-pagespeed-server/dist/index.js"
],
"command": "node"
}
Windows
{
"env": {
"GOOGLE_API_KEY": "<YOUR-API-KEY>"
},
"args": [
"path/to/mcp-pagespeed-server/dist/index.js"
],
"command": "node"
}
PageSpeed MCP Server
A Model Context Protocol (MCP) server that extends AI assistant capabilities with PageSpeed Insights functionality. This server acts as a bridge between AI models and Google's PageSpeed Insights API, enabling detailed performance analysis of websites.
Overview
The PageSpeed MCP server is designed to enhance AI assistants' capabilities by allowing them to perform comprehensive web performance analysis. When integrated, AI models can request and interpret detailed performance metrics, Core Web Vitals, and other critical web performance data for any given URL.
Installation
Installing via Smithery
To install PageSpeed Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install mcp-pagespeed-server --client claude
Manual Installation
npm install pagespeed-mcp-server
Configuration
Add the PageSpeed MCP to your AI assistant's(claude in this case) configuration file:
{
"pagespeed": {
"command": "node",
"args": ["path/to/mcp-pagespeed-server/dist/index.js"],
"env": {
"GOOGLE_API_KEY": "<YOUR-API-KEY>"
}
}
}
Detailed Capabilities
Performance Metrics Analysis
- First Contentful Paint (FCP) - Largest Contentful Paint (LCP) - Time to Interactive (TTI) - Total Blocking Time (TBT) - Cumulative Layout Shift (CLS) - Speed Index - Time to First Byte (TTFB)Best Practices Assessment
- HTTPS usage - JavaScript error monitoring - Browser console warnings - Deprecated API usage - Image aspect ratio analysis - Link security checksSEO Analysis
- Meta description validation - Robots.txt validation - Structured data validation - Crawlable links verification - Meta tags assessment - Mobile friendlinessAccessibility Audits
- ARIA attribute validation - Color contrast checking - Heading hierarchy analysis - Alt text verification - Focus management assessment - Keyboard navigation testingResource Optimization
- Image optimization suggestions - JavaScript bundling analysis - CSS optimization recommendations - Cache policy validation - Resource minification checks - Render-blocking resource identificationAPI Response Structure
The MCP server provides detailed JSON responses including:
{
"lighthouseResult": {
"categories": {
"performance": { / Performance metrics / },
"accessibility": { / Accessibility results / },
"best-practices": { / Best practices audit / },
"seo": { / SEO findings / }
},
"audits": {
// Detailed audit results for each category
},
"timing": {
// Performance timing data
},
"stackPacks": {
// Technology-specific advice
}
}
}
Advanced Usage
Custom Configuration
You can customize the PageSpeed analysis by providing additional parameters:{
"strategy": "mobile", // or "desktop"
"category": ["performance", "accessibility", "best-practices", "seo"],
"locale": "en",
"threshold": {
"performance": 90,
"accessibility": 100,
"best-practices": 90,
"seo": 90
}
}
Error Handling
The MCP server includes robust error handling for: - Invalid URLs - Network timeouts - API rate limiting - Invalid parameters - Server-side errorsRequirements
Network Requirements
- Stable internet connection - Access to Google's PageSpeed Insights APIPlatform Support
- Windows (x64, x86) - Linux (x64) - macOS (x64, arm64)Integration Examples
Basic Integration
const PageSpeedMCP = require('pagespeed-mcp-server');
const mcp = new PageSpeedMCP();
await mcp.analyze('https://example.com');
With Custom Options
const results = await mcp.analyze('https://example.com', {
strategy: 'mobile',
categories: ['performance', 'accessibility'],
locale: 'en-US'
});
Troubleshooting
Common Issues
1. Connection Timeouts - Check internet connectivity2. API Rate Limiting
- Use API key for higher limits
3. Memory Issues
- Adjust Node.js memory limits
Development
Building from Source
git clone https://github.com/phialsbasement/mcp-pagespeed-server
cd mcp-pagespeed-server
npm install
npm run build
Running Tests
npm run test
Contributing
1. Fork the repository 2. Create a feature branch 3. Commit your changes 4. Push to the branch 5. Create a Pull RequestSupport
Getting Help
- GitHub Issues: Report bugs and feature requestsLicense
MIT License - See LICENSE file for details
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.




