pixelgrade
Provides Framer-specific fix guides for resolving advertising pixel and consent issues found during page checks.
Checks Meta pixels on landing pages, including consent timing, duplicate events, browser/server event ID alignment, and click ID capture such as fbclid to _fbc; provides Meta-specific fix guides including Meta Conversions API setup.
Checks OpenAI pixels on landing pages and provides fix guides for installing the OpenAI Pixel and its Conversions API.
Provides Shopify-specific fix guides for resolving advertising pixel and consent issues found during page checks.
Checks TikTok pixels on landing pages, including consent behavior and duplicate event firing; provides TikTok-specific fix guides including TikTok Events API setup.
Provides Webflow-specific fix guides for resolving advertising pixel and consent issues found during page checks.
Provides WordPress-specific fix guides for resolving advertising pixel and consent issues found during page checks.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
pixelgrade
pixelgrade lets you check whether the advertising
pixels on a page actually work, without opening a
browser yourself. Give it a landing page and it
grades the Meta, TikTok and OpenAI pixels it finds
there: whether they wait for cookie consent, whether
the same event fires twice, whether event IDs line
up between the browser and any server copy, and
whether the click IDs that ads append — fbclid
becoming _fbc, for example — are captured. When
something is wrong you get the finding, an
explanation, and a step-by-step guide for fixing it
on your platform.
The package itself checks nothing locally. It is a thin bridge to the hosted pixel-check service: it answers the tool list from a verbatim capture of that service and forwards every tool call upstream, returning the reply untouched. All four tools are read-only. Checking reads a page you name; reading a report, listing findings and reading a fix guide change nothing, install nothing and touch no ad account.
Tools
check_page— check a page's pixels and grade each one. Required:url(the page to check, usually the landing page the ads point to, 3 to 2048 characters). Optional:recheck(start a fresh check instead of reusing a result from the last 24 hours; allowed once the last check is an hour old) andwait_seconds(0 to 45, default 40; a check takes 20 to 60 seconds, and if it is still running you can poll withget_report). An EU browser visits the page twice so consent behaviour is exercised.get_report— read the result of an earlier check. Required:report(a report id such asAb3dE5fG7hJ9kL2m, or the full report link, 8 to 200 characters). Returns the status, a grade per pixel found, each problem with its explanation and fix-guide link, and a checklist. Reports are kept for 90 days.list_findings— list every problem a check can report. Takes no arguments. Each entry carries its id, severity, title and explanation, and whether a fix guide exists for it. Useful for learning the catalogue before you run a check.get_fix_guide— read the step-by-step fix guide (Markdown) for a problem. All arguments are optional:issue_id(a problem id from a report, for examplemeta.fires_before_consent),platform(for exampleframer,shopify,webflow,wordpress; when omitted or unknown the general version is returned) andconsent_tool(one ofcomplianz,cookiebot,cookieyes,onetrust,usercentrics; when given, the guide covers wiring the Meta, TikTok and OpenAI pixels to that consent tool). Setup guides are also available throughissue_id, for example the Meta Conversions API, the TikTok Events API, and installing the OpenAI Pixel or its Conversions API.
Related MCP server: AI Readiness
Configuration
ISPIXELWORKING_MCP_URL(optional) — override the upstream endpoint. Defaults tohttps://ispixelworking.com/mcp. (The override hook is this rebuild's own labelled reconstruction.)ISPIXELWORKING_API_KEY(optional) — when set, every upstream request carries anAuthorization: Bearer <key>header. When it is not set, no key header is sent. (The header name is pinned by the original's registry record, which declares a secretAuthorizationheader; the record pins no package env name, so the Bearer form and forwarding the key from this env var are labelled reconstructions — the original surface was captured keyless.)
Forwarding mechanics
On the first tool call the client opens a streamable
HTTP session upstream: a JSON-RPC initialize
request (protocolVersion 2025-03-26, clientInfo
name pixelgrade), then a
notifications/initialized notification, then the
tools/call request carrying the caller's arguments
unchanged. When the upstream answers initialize
with an Mcp-Session-Id header, that value rides on
every later request of the session, which is reused
for the life of the process. Replies may arrive as
plain JSON or as server-sent events; both are read.
Successful upstream results pass through verbatim,
including any isError flag the upstream sets.
Failures — a JSON-RPC error, a non-2xx status, an
unreadable response, or a request that cannot be
completed — come back as an isError result whose
text starts with pixelgrade error: (this rendering
is this rebuild's own labelled reconstruction).
CLI
Each tool is also a subcommand taking one JSON argument string:
npx @reneturcios/pixelgrade check_page '{"url":"https://example.com/landing"}'
npx @reneturcios/pixelgrade get_report '{"report":"Ab3dE5fG7hJ9kL2m"}'
npx @reneturcios/pixelgrade get_fix_guide '{"issue_id":"meta.fires_before_consent","platform":"shopify"}'
npx @reneturcios/pixelgrade list_findings '{}'
npx @reneturcios/pixelgrade --versionExit codes: 0 on success, 1 on an isError
result, 2 on a usage error.
MCP server
npx -y @reneturcios/pixelgrade mcpMCP client config:
{
"mcpServers": {
"pixelgrade": {
"command": "npx",
"args": ["-y", "@reneturcios/pixelgrade", "mcp"]
}
}
}Docker
docker run -i ghcr.io/cloudcorprecords/pixelgrade
docker run --rm ghcr.io/cloudcorprecords/pixelgrade --versionThe container's default command is mcp, so the first
form is a stdio MCP server; any other arguments reach
the CLI normally.
Development
npm install
npm run build
npm test
npm run devThe test suite runs entirely against a stubbed JSON-RPC upstream — no live network calls.
License
MIT — see LICENSE.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Check a page's Meta, TikTok and OpenAI pixels, read reports and step-by-step fix guides.
Audit a landing page before paid ads: readiness score, ad pixels found, conversion paths, top fixes.
Audit a landing page's conversion (score, top issues, fixes) and check if AI crawlers can read it.
Technical SEO and AI-readiness audits for any page, plus a check that your fix worked.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables rapid analysis of landing pages for SEO compliance, conversion structure, color contrast accessibility, and performance metrics with automated optimization suggestions and code snippets.12 npm1MIT
- AlicenseAqualityCmaintenanceCheck whether a website is visible to AI search engines (ChatGPT, Perplexity, Claude, Google AI Overviews). Returns a 0-100 readiness score, a grade, and a specific fix for each gap. Dependency-free, no API keys.25 npmMIT
- FlicenseNot gradedqualityDmaintenanceEnables to precheck landing pages and Figma frames for readiness to be cited in AI Overviews, providing audit scores, grades, and improvement actions.-
- AlicenseAqualityDmaintenanceAudits public web pages for tracking tags, duplicate pixels, page weight, header hygiene, and lab performance from inside Claude Code or Claude Desktop.7MIT