@hostinger/mcp@1.52.0
MCP server for Hostinger API
AI Security Review
scanned 1mo ago · by lpm-firewall-aiThe unrestricted destination override combined with automatic forwarding of an existing Hostinger token meets the conditional credential-forwarding warning boundary. The inspected code does not establish malware intent or a hidden default exfiltration endpoint.
Static reason
One or more suspicious static signals were detected.
Trigger
Start the MCP server with API_BASE_URL set and invoke an API-backed MCP tool.
Impact
An operator-configured non-Hostinger endpoint could receive the Hostinger token.
Mechanism
The runtime derives a URL from API_BASE_URL, retrieves a Hostinger token, and sends it as a Bearer authorization header.
AI rationale
The unrestricted destination override combined with automatic forwarding of an existing Hostinger token meets the conditional credential-forwarding warning boundary. The inspected code does not establish malware intent or a hidden default exfiltration endpoint.
Evidence
src/core/runtime.jssrc/core/oauth.js
Network endpoints1
developers.hostinger.com
Decision evidence
public snapshotAI called this Suspicious at 91.0% confidence as Dangerous Capability with low false-positive risk.
Evidence for warning
- The manifest exposes an MCP server entry point and contains no install lifecycle hook.
- The build script runs the TypeScript compiler only when the explicit build command is used.
- The runtime accepts API_BASE_URL from the environment without a destination allowlist.
- The bearer token is sourced from Hostinger token environment variables.
- When an MCP tool is called, the runtime builds a request from that base URL and attaches the bearer token.
Evidence against
- No hidden install-time execution or unrelated default network recipient was found in the inspected entry points.
Behavioral surface
ChildProcessCryptoEnvironmentVarsFilesystemNetworkShell
HighEntropyStringsUrlStrings
Source & flagged code
4 flaggedbuild.jsView file
2L3: import { exec } from 'child_process';
L4: import fs from 'fs';
High
18console.log('Compiling TypeScript...');
L19: exec('npx tsc', (error, stdout, stderr) => {
L20: if (error) {
High
Runtime Package Install
Package source invokes a package manager install command at runtime.
build.jsView on unpkg · L18package.jsonView file
18"type": "module",
"main": "./src/servers/all.js",
"bin": {
"hostinger-api-mcp": "./src/servers/all.js",
"hostinger-agency-hosting-mcp": "./src/servers/agency-hosting.js",
"hostinger-billing-mcp": "./src/servers/billing.js",
"hostinger-dns
Medium
Suspicious Lifecycle Evidence
The manifest exposes an MCP server entry point and contains no install lifecycle hook.
package.jsonFindings
3 High5 Medium4 Low
HighChild Processbuild.js
HighShell
HighRuntime Package Installbuild.js
MediumNetwork
MediumEnvironment Vars
MediumStructural Risk Force Deep Review
MediumSuspicious Lifecycle Evidencepackage.json
MediumSuspicious Lifecycle Evidencesrc/servers/all.js
LowScripts Present
LowFilesystem
LowHigh Entropy Strings
LowUrl Strings
Affected versions and remediation
This report applies to @hostinger/mcp@1.52.0.
See all versions of @hostinger/mcp for other recorded verdicts.
- Review the evidence and your use of @hostinger/mcp@1.52.0 before allowing it. Restrict the permissions described in this report.
- Choose an independently verified alternative or release. This report does not establish that other versions are safe.
Evidence last updated: .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced.