Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Beschreibung vom Entwickler (englisches Original)
Security audits for WordPress plugins and themes — 62 verification layers, fix plans and SBOMs.
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
WPHK_API_KEYAls geheim markierte Werte sind Schlüssel zu deinem Konto. Gib sie nie weiter und füge sie nie in einen Chat ein.
Du brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Funktioniert in Claude im Web, auf dem Desktop und auf dem Handy:
https://mcp.wphealthkit.com/mcpÖffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"wphealthkit": {
"command": "npx",
"args": [
"-y",
"@wphealthkit/mcp-server"
],
"env": {
"WPHK_API_KEY": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add --transport http wphealthkit https://mcp.wphealthkit.com/mcpclaude mcp add wphealthkit --env WPHK_API_KEY=your-value -- npx -y @wphealthkit/mcp-serverTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"wphealthkit": {
"url": "https://mcp.wphealthkit.com/mcp"
}
}
}In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"wphealthkit": {
"command": "npx",
"args": [
"-y",
"@wphealthkit/mcp-server"
],
"env": {
"WPHK_API_KEY": "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.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"wphealthkit": {
"type": "http",
"url": "https://mcp.wphealthkit.com/mcp"
}
}
}In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"wphealthkit": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@wphealthkit/mcp-server"
],
"env": {
"WPHK_API_KEY": "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.
ChatGPT verbindet sich nur mit Servern im Internet:
https://mcp.wphealthkit.com/mcpMenünamen können sich je nach Tarif und mit der Zeit leicht unterscheiden.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
Diese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Die Tool-Liste dieses Servers haben wir noch nicht gelesen; wir prüfen die Endpunkte reihum.
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
Der Registry-Name wurde über die Domain wphealthkit.com bestätigt (die Registry prüft, wem die Domain gehört)
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Noch nicht geprüft; wir prüfen die Endpunkte reihum
Noch nicht geprüft; wir prüfen die Endpunkte reihum
Noch nicht geprüft; wir lesen die Tool-Liste, wenn wir den Endpunkt prüfen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
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.
Das musst du eintragen: WPHK_API_KEY
Beides geht: Installiere ihn auf deinem Computer oder verbinde dich mit der Cloud-Version.
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (0.6.4) kam vor 3 Monaten in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Er verbindet sich per URL, also funktionieren auch Apps, die Remote-MCP-Server akzeptieren, zum Beispiel ChatGPT im Entwicklermodus.
In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, Kanal Varna — drains, leaks & plumbing (Varna, BG)
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
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Drain unblocking, leak detection & plumbing in Varna, Bulgaria: services, prices, areas, contact
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.
An MCP (Model Context Protocol) server that gives AI assistants direct access to WP HealthKit's plugin audit API. Once configured, tools like Claude Desktop, Claude Code, and Cursor can trigger security audits, retrieve findings, fetch AI-ready fix prompts, bulk-audit entire plugin directories, and flag false positives — all without leaving the chat interface.
WPHK_API_KEY=your_api_key_here
Get your API key from wphealthkit.com/dashboard.
Add the following to your claude_desktop_config.json (usually at ~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": { "wphealthkit": { "command": "npx", "args": ["-y", "@wphealthkit/mcp-server"], "env": { "WPHK_API_KEY": "your_api_key_here" } } } }
Add to your project's .mcp.json:
{
"mcpServers": { "wphealthkit": { "command": "npx", "args": ["-y", "@wphealthkit/mcp-server"], "env": { "WPHK_API_KEY": "your_api_key_here" } } } }
Open Cursor Settings > MCP > Add Server and use:
{
"wphealthkit": { "command": "npx", "args": ["-y", "@wphealthkit/mcp-server"], "env": { "WPHK_API_KEY": "your_api_key_here" } } }
| Tool | Description |
|---|---|
audit_plugin | Trigger a security audit for a wp.org plugin by slug. Returns an audit ID. |
audit_plugin_zip | Trigger an audit from a local ZIP file. Returns an audit ID. |
audit_plugins_bulk | Audit all plugin ZIP files in a local directory. Submits in batches of 10, streams results as each completes, and prints a final summary with risk breakdown and links to top findings. |
get_report | Poll the status and full results of an audit by its ID. |
get_findings | Get paginated findings, with optional filters for severity and category. |
get_fix_prompt | Get AI-ready fix prompts for an audit's findings, batched by severity. |
check_plugin | Look up a plugin's security grade, risk level, and findings count from the directory. |
list_usage | Check your current usage — audits used this month, tier, and limits. |
flag_finding | Flag a finding as a false positive. The report goes to the WP HealthKit team for review; confirmed patterns result in a scanner rule update that prevents that pattern in all future audits. |
audit_pluginTriggers a security audit for any plugin hosted on wp.org.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
slug | string | Yes | The wp.org plugin slug (e.g. "contact-form-7"). |
engines | string[] | No | Audit engines to run. Defaults to all engines. |
Example
audit_plugin({ slug: "contact-form-7" })
// Returns: { auditId: "abc-123", status: "queued" }
audit_plugin_zipTriggers an audit from a local ZIP file. Useful for plugins not on wp.org or pre-release builds.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
path | string | Yes | Absolute path to the ZIP file on disk. |
engines | string[] | No | Audit engines to run. Defaults to all engines. |
Example
audit_plugin_zip({ path: "/Users/me/plugins/my-plugin.zip" })
// Returns: { auditId: "def-456", status: "queued" }
audit_plugins_bulkAudits all plugin ZIP files in a local directory. Submissions are batched in groups of 10. Results stream as each audit completes, and a final summary table is printed with a risk breakdown and links to top findings.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
directory | string | Yes | Absolute path to the directory containing plugin ZIPs. |
engines | string[] | No | Audit engines to run (e.g. ["performance"]). Defaults to all engines. |
pattern | string | No | Glob pattern to match files. Defaults to "*.zip". |
Example
audit_plugins_bulk({ directory: "/Users/me/plugins", engines: [] })
Output
Results stream to the conversation as each plugin completes. Once all audits finish, the tool prints a summary table:
Plugin Risk Findings Report
my-plugin.zip CRITICAL 14 https://wphealthkit.com/report/abc-123 another-plugin.zip LOW 2 https://wphealthkit.com/report/def-456 legacy-plugin.zip HIGH 7 https://wphealthkit.com/report/ghi-789
Summary: 3 plugins audited — 1 CRITICAL, 1 HIGH, 0 MEDIUM, 1 LOW
get_reportPolls the status and full results of an audit. Call this after audit_plugin or audit_plugin_zip to wait for completion and retrieve the report.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
auditId | string | Yes | The audit ID returned by audit_plugin or audit_plugin_zip. |
Example
get_report({ auditId: "abc-123" })
// Returns: { status: "completed", grade: "C", riskLevel: "HIGH", findingsCount: 7, reportUrl: "..." }
get_findingsReturns paginated findings for a completed audit. Supports filtering by severity and category.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
auditId | string | Yes | The audit ID. |
severity | string | No | Filter by severity: "CRITICAL", "HIGH", "MEDIUM", or "LOW". |
category | string | No | Filter by category (e.g. "xss", "csrf", "performance"). |
page | number | No | Page number for pagination. Defaults to 1. |
Example
get_findings({ auditId: "abc-123", severity: "CRITICAL" })
get_fix_promptReturns AI-ready fix prompts for an audit's findings, grouped and batched by severity. Pass the output directly to a coding assistant to generate patches.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
auditId | string | Yes | The audit ID. |
severity | string | No | Limit prompts to a specific severity level. |
Example
get_fix_prompt({ auditId: "abc-123", severity: "HIGH" })
check_pluginLooks up a plugin's current security grade, risk level, and findings count from the WP HealthKit directory without triggering a new audit.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
slug | string | Yes | The wp.org plugin slug. |
Example
check_plugin({ slug: "woocommerce" })
// Returns: { grade: "B", riskLevel: "MEDIUM", findingsCount: 3, lastAudited: "2026-04-20" }
list_usageReturns your current billing period usage — audits consumed, tier, and remaining quota.
Parameters
None.
Example
list_usage()
// Returns: { auditsUsed: 47, auditsLimit: 100, tier: "pro", resetsAt: "2026-05-01" }
flag_findingFlags a finding as a false positive. The report is reviewed by the WP HealthKit team. If the pattern is confirmed as a false positive, the scanner rule is updated to prevent the same result from appearing in all future audits.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
auditId | string | Yes | UUID of the audit containing the finding. |
findingId | string | Yes | ID of the finding to flag (e.g. "finding-12"). |
findingTitle | string | Yes | Title of the finding as shown in the report. |
reason | string | No | Explanation of why this is a false positive. |
Example
flag_finding({
auditId: "abc-123-def-456", findingId: "finding-5", findingTitle: "Named arguments used in internal function call", reason: "These are positional args — the scanner is misidentifying the call signature" }) // Returns: { flagged: true, reviewTicket: "FP-2891" }
audit_plugin({ slug: "my-plugin" })
→ get_report({ auditId: "..." }) // poll until status === "completed" → get_findings({ auditId: "...", severity: "CRITICAL" }) → get_fix_prompt({ auditId: "..." })
audit_plugins_bulk({ directory: "/Users/me/plugins" })
// streams per-plugin results as they complete // prints final summary table with risk breakdown
check_plugin({ slug: "advanced-custom-fields" })
// returns grade, risk level, and findings count without consuming an audit credit
get_findings({ auditId: "...", severity: "HIGH" })
→ flag_finding({ auditId: "...", findingId: "finding-12", findingTitle: "Unescaped output in template", reason: "Output is escaped upstream via wp_kses before reaching this call" })
| Variable | Default | Description |
|---|---|---|
WPHK_API_KEY | — | Required. Your WP HealthKit API key. |
WPHK_API_URL | https://wphealthkit.com/api/v1 | Override to point at a self-hosted or staging instance. |
MIT