{
  "markdown": "# @metricspot/mcp-server\n\nModel Context Protocol server for MetricSpot. Exposes 6 SEO + AI-readability audit tools to AI agents (Claude, ChatGPT, Gemini, Perplexity, Cursor, Zed, OpenClaw, custom bots).\n\n- Hosted Streamable HTTP endpoint: `https://mcp.metricspot.com/mcp`\n- Local stdio binary: `npx @metricspot/mcp-server`\n- Agent guide: <https://metricspot.com/AGENTS.md>\n\n## Tools\n\n| Tool | Auth | Description |\n| --- | --- | --- |\n| `run_audit_anonymous` | none | One-shot audit, 1/IP/24h, no Core Web Vitals |\n| `run_audit` | Bearer key | Full audit with PSI, returns `audit_id` |\n| `get_audit` | Bearer key | Fetch audit + findings by id |\n| `list_audits` | Bearer key | List the user's recent audits (max 100) |\n| `get_audit_pdf` | Bearer key | Signed URL for the branded PDF report |\n| `get_organic_traffic` | Bearer key | 28-day GA4 + GSC snapshot (if Google linked) |\n\n## Local install (stdio)\n\nClaude Code (`~/.claude/mcp.json`):\n\n```json\n{\n  \"mcpServers\": {\n    \"metricspot\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@metricspot/mcp-server\"],\n      \"env\": {\n        \"MCP_API_KEY\": \"ms_live_xxx\"\n      }\n    }\n  }\n}\n```\n\nCursor (`~/.cursor/mcp.json`) and Zed use the same shape.\n\nOmit `MCP_API_KEY` to only use `run_audit_anonymous`.\n\n## Hosted (Streamable HTTP)\n\n```\nPOST https://mcp.metricspot.com/mcp\nAuthorization: Bearer ms_live_xxx\nContent-Type: application/json\n\n{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"tools/list\"}\n```\n\n## Env vars\n\n| Var | Default | Purpose |\n| --- | --- | --- |\n| `PORT` | `3000` | HTTP listen port |\n| `APP_API_BASE_URL` | `https://app.metricspot.com` | MetricSpot app API base (the `dev`/`dev:stdio` scripts override it to `http://localhost:3000`) |\n| `APP_PUBLIC_BASE_URL` | falls back to `APP_API_BASE_URL` | Used to build `report_url` |\n| `MCP_INTERNAL_TOKEN` | — | Service-to-service secret forwarded as `X-MCP-Internal-Token` |\n| `MCP_API_KEY` | — | (stdio only) User API key, sent as `Authorization: Bearer` to the HTTP layer |\n\n## Develop\n\n```bash\nbun install\nbun run typecheck\nbun test\nbun run dev          # Streamable HTTP on :3000\nbun run dev:stdio    # stdio loop (send JSON-RPC on stdin)\n```\n\n## Deploy\n\nMulti-stage Dockerfile produces a Bun runtime image. Independent Dokku app on the same Hetzner droplet as `app/` and `web/`.\n\n## License\n\nMIT\n",
  "bytes": 2299,
  "sha": "2896577c92825e7df080887376247f1196f544e9a55e9e2e7f5c9a916f41b2dd",
  "repo_slug": "metricspot/mcp-server",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_com_metricspot_seo_mcp_122aec9d/readme"
}