SEO Analytics MCP Server
Provides tools to run GA4 reports on traffic, engagement, and conversions by page, channel, or date.
Provides tools for query performance, URL inspection, sitemap management (list, submit, delete).
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@SEO Analytics MCP ServerWhat are my top 10 landing pages by sessions for the last 28 days?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
SEO Analytics MCP Server
MCP server for Google Analytics 4 and Search Console. Deploys to Railway and connects to Claude as a custom connector.
Tools
Tool | Description |
| Traffic, engagement, conversions by page/channel/date |
| Clicks, impressions, CTR, position from Search Console |
| Index status, crawl date, canonical, mobile usability |
| List submitted sitemaps and their status |
| Submit a new sitemap URL |
| Remove a sitemap from Search Console |
Related MCP server: Google Analytics MCP Server
Setup
1. Google Cloud project
Go to console.cloud.google.com and create a project (or use an existing one).
Enable these APIs:
Google Analytics Data API
Google Search Console API
Web Search Analytics API
Go to IAM & Admin → Service Accounts → Create Service Account.
Name it (e.g.
seo-mcp), skip optional fields, click Done.Click the service account → Keys → Add Key → JSON. Download the file.
Keep the
client_emailfrom the JSON — you'll need it for steps below.
2. Grant the service account access
Google Analytics 4:
Open GA4 → Admin → Property → Property Access Management.
Click + → Add user → paste the
client_email.Set role to Viewer.
Google Search Console:
Open Search Console → Settings → Users and permissions.
Click Add user → paste the
client_email.Set permission to Full (required for sitemap submit/delete).
3. Find your IDs
GA4 Property ID: GA4 Admin → Property Settings → Property ID (numeric only, e.g.
123456789)GSC Site URL: Exactly as it appears in Search Console (e.g.
https://example.com/with trailing slash, orsc-domain:example.comfor domain properties)
4. Deploy to Railway
Push this repo to GitHub.
Go to railway.app → New Project → Deploy from GitHub repo → select this repo.
Railway will detect Node.js and run
npm install && npm run buildautomatically.Go to Variables and add:
MCP_AUTH_TOKEN = <generate with: openssl rand -hex 32>
GOOGLE_CREDENTIALS_JSON = <paste the entire contents of your service account JSON key, minified to one line>
GA4_PROPERTY_ID = 123456789
GSC_SITE_URL = https://example.com/To minify the credentials JSON to one line (Mac/Linux):
cat your-key-file.json | jq -c . | pbcopyDeploy. Railway will give you a public domain like
https://seo-mcp-production.up.railway.app.Test the health check:
curl https://your-railway-domain.up.railway.app/health5. Connect to Claude
Claude Pro/Max (personal):
Open Claude → Customize → Connectors → + Add custom connector
Enter your Railway URL:
https://your-railway-domain.up.railway.app/mcpAdd the Authorization header:
Bearer your-mcp-auth-token
Claude Team/Enterprise:
Owner adds it under Organization Settings → Connectors
6. Test in Claude
Enable the connector in a chat and try:
What are my top 10 landing pages by sessions for the last 28 days?Show me my GSC performance for the past 30 days, grouped by query.Inspect https://example.com/blog/my-postList all my submitted sitemaps.Local development
cp .env.example .env
# Fill in .env with your real values
npm install
npm run devTest locally:
curl -X POST http://localhost:3000/mcp \
-H "Authorization: Bearer your-token" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'Environment variables
Variable | Description |
| Secret token for bearer auth. Generate with |
| Full contents of the service account JSON key (single line) |
| GA4 numeric property ID (e.g. |
| Exact site URL from Search Console (e.g. |
| Port to listen on. Set automatically by Railway. Defaults to |
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/atmarcday/seo-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server