Open-source B2B and marketplace ecommerce; new stores include an MCP server for AI agents.
PlayGuard
Überblick
Beschreibung vom Entwickler (englisches Original)
Proxy MCP for Playwright, Figma, DevTools, Shopify Dev, Context7 — fewer tokens, caching
Die drei Säulen von PopNx MCP
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
- Stimmen der NutzeriNoch keine BewertungenBewertungen starten in einem späteren Schritt zusammen mit Benutzerkonten
- Unsere Basischecksi1 von 1 bestandenAnhand öffentlicher Informationen geprüft; Code noch nicht gescannt
- NutzungiNoch nicht gemessen★ –
Was du damit machen kannst
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
- Verbindung: Läuft auf deinem Computer
- Transport: stdio
- Kategorie: Onlineshops & Zahlungen
Installation
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
Bevor du installierst
- Basischecks: 1 von 1 bestanden
- Läuft auf deinem Computer mit den Rechten deines Benutzerkontos (Dateien, Netzwerk, Apps).
- Das trägst du selbst ein:
FIGMA_MCP_CMD,FIGMA_MCP_URL,DEVTOOLS_MCP_CMD,SHOPIFY_DEV_MCP_CMD,CONTEXT7_MCP_CMD
Du brauchst
- npmNode.js installiert (für den Befehl npx)
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"playguard": {
"command": "npx",
"args": [
"-y",
"playguard"
],
"env": {
"FIGMA_MCP_CMD": "your-value",
"FIGMA_MCP_URL": "your-value",
"DEVTOOLS_MCP_CMD": "your-value",
"SHOPIFY_DEV_MCP_CMD": "your-value",
"CONTEXT7_MCP_CMD": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add playguard --env FIGMA_MCP_CMD=your-value --env FIGMA_MCP_URL=your-value --env DEVTOOLS_MCP_CMD=your-value --env SHOPIFY_DEV_MCP_CMD=your-value --env CONTEXT7_MCP_CMD=your-value -- npx -y playguardTrag die leeren Werte ein, bevor du ihn startest.
Oder kopier die Einstellungen selbst
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"playguard": {
"command": "npx",
"args": [
"-y",
"playguard"
],
"env": {
"FIGMA_MCP_CMD": "your-value",
"FIGMA_MCP_URL": "your-value",
"DEVTOOLS_MCP_CMD": "your-value",
"SHOPIFY_DEV_MCP_CMD": "your-value",
"CONTEXT7_MCP_CMD": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Oder kopier die Einstellungen selbst
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"playguard": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"playguard"
],
"env": {
"FIGMA_MCP_CMD": "your-value",
"FIGMA_MCP_URL": "your-value",
"DEVTOOLS_MCP_CMD": "your-value",
"SHOPIFY_DEV_MCP_CMD": "your-value",
"CONTEXT7_MCP_CMD": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Werte, die du selbst einträgst
FIGMA_MCP_CMDenvCommand that starts the Framelink Figma MCP (enables Figma tools)FIGMA_MCP_URLenvOfficial Figma desktop MCP URL, e.g. http://127.0.0.1:3845/mcpDEVTOOLS_MCP_CMDenvCommand that starts Chrome DevTools MCP, e.g. npx -y chrome-devtools-mcp@latestSHOPIFY_DEV_MCP_CMDenvCommand that starts Shopify Dev MCPCONTEXT7_MCP_CMDenvCommand that starts Context7 MCP
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Was er kann
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Basischecksi
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 7. Nov. 2026
- ✓ Bestanden
Entwickler passt zum Repo
Der Registry-Name wurde mit dem GitHub-Konto ZenyaDAR bestätigt, dem das Repo gehört
- … Noch nicht geprüft
Wird noch gepflegt
Dieses Repo haben wir noch nicht von GitHub gelesen
- … Noch nicht geprüft
Hat eine Lizenz
Dieses Repo haben wir noch nicht von GitHub gelesen
- – Nicht zutreffend
Endpunkt antwortet
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
- – Nicht zutreffend
Anmeldung mit OAuth
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
- … Noch nicht geprüft
Keine versteckten Anweisungen in Tool-Beschreibungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Im Vergleich mit anderen in Onlineshops & Zahlungeni
- Mehr Sterne als 0 % der anderen 1748 Server in dieser Kategorie
- Neuer in der Registry veröffentlicht als 81 % der anderen 1748 Server in dieser Kategorie
- Basischecks gleich gut wie oder besser als bei 100 % der anderen 1748 Server in dieser Kategorie
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Häufige Fragen
Ist PlayGuard sicher?
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Welche Schlüssel oder Codes braucht er?
Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.
Läuft er auf meinem Computer oder in der Cloud?
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Wird er noch gepflegt?
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (0.10.1) kam vor 5 Tagen in die Registry.
Welche Apps können ihn nutzen?
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Node.js auf deinem Computer.
Was kann ich stattdessen nutzen?
In derselben Kategorie: Spree Commerce: open-source B2B and marketplace ecommerce, Stripe MCP, MCP Cn Commerce
Alternativen
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
Stripe MCP
MCP server integrating with Stripe - tools for customers, products, payments, and more.
MCP Cn Commerce
8 read-only MCP platform entries; support is operation-specific; merchant live acceptance pending
README vom Entwickler
README öffnen
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
PlayGuard
A proxy MCP: one MCP server in your client config that runs several MCP servers under the hood, exposes all their tools through a single connection, and optimizes their responses.
You add playguard to your MCP client once. Which upstream MCPs it starts is decided by environment variables in that one config entry — an upstream without its variable is not started and its tools are not listed. Every response passes through PlayGuard on the way back, which adds:
- One connection, several upstreams — Playwright MCP (bundled, always on), Figma (Framelink or the official desktop server), Chrome DevTools MCP, Shopify Dev MCP and Context7. A failing optional upstream only removes its own tools; the others keep working
- Token optimization — compact/delta/
UNCHANGEDsnapshots, Figma tree trimming, network-list summaries, rewritten documentation answers; browser snapshot cost drops 70–90% - Session recovery — dead browser sessions and crashed upstream processes are revived; the agent doesn't see the crash
- Caching — snapshot,
browser_evaluate, Figma and on-disk documentation caches - Screenshot policy — redirect, warn, block, or allow screenshot calls
- Logged savings — every call is written to an NDJSON log;
npm run analyzereports tokens saved per upstream - Two tools of its own —
playguard_a11y_audit(axe-core in the Playwright page) andplayguard_compare_design(Figma node vs live DOM element, Framelink only)
Works with Claude Code, Claude Desktop, Cursor, Codex, or any MCP-compatible agent.
Website: playguard.dev · Docs: How PlayGuard works
Upstream MCPs at a glance
| Upstream | Enable with | What PlayGuard optimizes | Details |
|---|---|---|---|
Playwright MCP (@playwright/mcp, bundled) | always on | Compact / delta / UNCHANGED snapshots, snapshot filters, session recovery, screenshot policy, eval cache, --codegen none, batching hints | Browser |
Figma, Framelink (figma-developer-mcp) | FIGMA_MCP_CMD + FIGMA_API_KEY (any Figma plan) | Optimizer modules, structural budget trim, cache, playguard_compare_design | Figma Optimizer |
| Figma, official desktop server | FIGMA_MCP_URL=http://127.0.0.1:3845/mcp (no key; Figma desktop app + Dev/Full seat on a paid plan) | Passthrough, whole responses, no cache | Official Figma MCP |
| Chrome DevTools MCP | DEVTOOLS_MCP_CMD | Network summary, request trim, snapshot compaction, trace trim, error hints, privacy launch defaults | Chrome DevTools MCP |
| Shopify Dev MCP | SHOPIFY_DEV_MCP_CMD | Response rewrites, disk cache, UNCHANGED repeats, compacted tools/list | Documentation MCPs |
| Context7 | CONTEXT7_MCP_CMD | Response rewrites, disk cache, UNCHANGED repeats, compacted tools/list | Documentation MCPs |
Figma is one option at a time: Framelink or the official desktop server (FIGMA_MCP_URL wins if both are set). Figma's remote server (mcp.figma.com) can't be proxied — see Official Figma MCP.
Choosing upstreams
The env block of the playguard entry decides what runs. Nothing to install separately: Playwright MCP ships with PlayGuard, the others are launched through the command you give. For example, Playwright + Framelink Figma + Shopify Dev:
{
"mcpServers": { "playguard": { "command": "npx", "args": ["-y", "playguard@latest"], "env": { "PLAYGUARD_SCREENSHOTS": "redirect", "FIGMA_MCP_CMD": "npx", "FIGMA_MCP_ARGS": "-y figma-developer-mcp --stdio", "FIGMA_API_KEY": "your-figma-api-key", "SHOPIFY_DEV_MCP_CMD": "npx -y @shopify/dev-mcp@latest" } } } }
Remove a variable to drop that upstream. Restart the MCP client after changing the config — the server and its upstreams are started once per client session.
Architecture
Claude Code / Claude Desktop / Cursor / Codex
│ │ MCP (stdio) — one connection ▼ ┌───────────────────┐ │ PlayGuard │ proxy MCP │ │ │ • router │ browser_* → Playwright MCP (always) │ • recovery │ Figma tools → Framelink / Figma (FIGMA_MCP_CMD / _URL) │ • optimizers │ DevTools tools → Chrome DevTools MCP (DEVTOOLS_MCP_CMD) │ • caches │ Shopify docs tools → Shopify Dev MCP (SHOPIFY_DEV_MCP_CMD) │ • analytics │ Context7 tools → Context7 (CONTEXT7_MCP_CMD) │ • own tools │ playguard_a11y_audit, playguard_compare_design └─────────┬─────────┘ │ one child process per enabled upstream ┌─────────┼───────────┬──────────┬───────────┬──────────┐ ▼ ▼ ▼ ▼ ▼ ▼ Playwright Figma Chrome Shopify Context7 (each optional MCP MCP DevTools Dev MCP except Playwright) │ │ ▼ ▼ Chromium / Firefox / WebKit Chrome (its own instance)
Every upstream except Playwright is optional. If none of FIGMA_MCP_CMD, FIGMA_MCP_URL, DEVTOOLS_MCP_CMD, SHOPIFY_DEV_MCP_CMD and CONTEXT7_MCP_CMD is set, PlayGuard runs with Playwright only. Playwright MCP is bundled as a dependency — no separate installation required. Optional upstreams start lazily and are isolated from each other; tools/list waits a bounded time for a slow one and announces its tools later with tools/list_changed.
Features
Browser (Playwright)
Automatic Session Recovery
PlayGuard intercepts dead-session errors before the agent sees them:
Target.*closed · Browser.*closed · connect ECONNREFUSED · crashed
It restarts Playwright MCP, restores the last URL, and retries the call transparently. Two concurrent calls during a crash → one restart, both calls continue.
Compact Snapshots
browser_snapshot normally returns the full accessibility tree. PlayGuard keeps only lines with [ref=] (interactive elements) and structural landmarks (nav, main, form, dialog, …). Static text and decorative images have no refs and are not needed for navigation.
[PlayGuard compact: 312/1840 lines, ~83% removed, 124.3KB→14.1KB]
Snapshot Filtering
For pages where even the compact tree is large, browser_snapshot accepts optional params to narrow the result to one subtree:
section— return only the landmark subtree whose label starts with or contains this string (e.g."form","navigation \"Footer\"")around— return only the landmark subtree containing this[ref=N], useful once you know a specific element's refdepth— cap the returned subtree's depth (combine withsection/aroundfor a high-level overview first, or use alone to flatten the whole tree)
Falls back to the full snapshot with a [PlayGuard: ... not found] warning if the requested section/ref doesn't exist. Switching filters between calls always forces a fresh snapshot — it never returns a stale UNCHANGED/cached result from a differently-filtered request.
Smart Wait
Set PLAYGUARD_SMART_WAIT=1 to have browser_snapshot retry when a page looks mid-load — few interactive refs plus a loading/spinner/skeleton indicator in the text. Retries PLAYGUARD_SMART_WAIT_MAX_RETRIES times, PLAYGUARD_SMART_WAIT_MS apart, before returning (with a warning if it still looks like it's loading). Off by default — it adds latency to every snapshot call.
Set PLAYGUARD_COMPACT=false to receive the raw snapshot.
Delta Snapshots
When a page changes only slightly, PlayGuard returns a diff instead of the full snapshot:
[PlayGuard delta: +3 added, 1 removed, ~91% saved]
ADDED:
- button "Submit" [ref=47]
REMOVED:
- button "Loading..." [ref=44]
Snapshot Cache + Prefetch
An unchanged page returns UNCHANGED without hitting the browser.
Optional prefetch (PLAYGUARD_PREFETCH_SNAPSHOT=true, off by default since 0.8.0): after browser_navigate, PlayGuard fetches a snapshot in the background so the next browser_snapshot is served from cache. It only pays off for agents that snapshot right after navigating — any browser_evaluate or action in between discards it, and the background call competes with that action for the browser.
Shorter Playwright Responses
PlayGuard starts the bundled Playwright MCP with --codegen none, which drops the ### Ran Playwright code block from every response (80–150 characters per call). Not applied to a custom PLAYWRIGHT_MCP_CMD or when --codegen is already in PLAYWRIGHT_MCP_ARGS; set PLAYGUARD_CODEGEN=keep to restore it.
Batching Hints
Every browser_evaluate / browser_run_code_unsafe call waits at least ~0.5 s inside Playwright MCP for the page to settle. PlayGuard appends a one-line hint to those tools' descriptions (and to browser_wait_for) nudging the agent to combine checks into fewer calls. PLAYGUARD_HINTS=false turns this off.
Screenshot Policy
| Mode | Behavior |
|---|---|
warn (default) | Screenshot executes; warning written to stderr |
redirect | Replaced with browser_snapshot. Pass {visual:true} for a real screenshot; a call with filename, element/ref/target or fullPage always gets pixels |
block | Blocked with an error; agent is told which env var to change |
allow | No restriction |
Eval Cache + Output Compaction
Repeated browser_evaluate calls with the same script on the same URL are served from cache (configurable TTL). Large eval output is truncated to a character limit to avoid blowing the context window.
Accessibility Audit
playguard_a11y_audit runs axe-core (bundled) inside the page the browser_* tools have open and returns a short report instead of axe's raw JSON:
[PlayGuard a11y: 6 violations (6 elements) · 7 rules passed · axe 4.14.0 · wcag2a,wcag2aa,… · https://shop.test/]
critical image-alt — Images must have alternative text (1)
- img Element does not have an alt attribute (+4 more) https://dequeuniversity.com/rules/axe/4.14/image-alt
serious color-contrast — Elements must meet minimum color contrast ratio thresholds (1)
- main > p Low contrast text Element has insufficient color contrast of 1.91 (foreground color: #bbbbbb, …). Expected contrast ratio of 4.5:1
Rules are sorted by impact; each lists at most 5 elements (the rest are counted) with a CSS selector, a 140-char html excerpt and the first way to fix it. Rules axe could not decide are named under "Needs manual review".
| Param | Default | |
|---|---|---|
selector | whole page | Audit only this part, e.g. #cart-drawer — open a dialog first, then audit it |
tags | wcag2a, wcag2aa, wcag21a, wcag21aa, wcag22aa | Replaces the default. To add best-practice (non-WCAG advice) or wcag2aaa, pass the defaults plus it. A single string is accepted; any tag that matches no axe rule (a typo) is an error, not a clean report |
Automated checks don't cover keyboard flow or screen-reader wording. The page keeps axe loaded after the first audit.
Figma Optimizer
PlayGuard intercepts Figma MCP responses and runs them through an optimization pipeline before delivering to the agent.
[PlayGuard figma: -68% (284.0KB→91.0KB)]
Note: Modules 1–4 and 6 target raw Figma REST API JSON (
document.children,componentId,fillGeometry). I
Nur der Anfang wird gezeigt; den Rest findest du im Repo