Trust Assessment
inworld-tts received a trust score of 73/100, placing it in the Caution category. This skill has some security considerations that users should review before deployment.
SkillShield's automated analysis identified 2 findings: 0 critical, 2 high, 0 medium, and 0 low severity. Key findings include JSON Injection via unescaped string parameters, JSON Injection via unvalidated numeric parameters.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. All layers scored 70 or above, reflecting consistent security practices.
Last analyzed on February 14, 2026 (commit 13146e6a). SkillShield performs automated 4-layer security analysis on AI skills and MCP servers.
Layer Breakdown
Behavioral Risk Signals
Security Findings2
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| HIGH | JSON Injection via unescaped string parameters The `VOICE` and `MODEL` parameters are directly interpolated into a JSON payload without proper escaping. An attacker can inject arbitrary JSON by providing a value like `Dennis", "malicious_key": "value"`. This could alter the API request in unintended ways, potentially leading to denial of service, unexpected behavior, or bypassing API restrictions if the backend is not robustly validating the JSON. Escape string parameters using `jq -Rs .` before embedding them in the JSON payload. For example, change `"voice_id": "$VOICE"` to `"voice_id": $(echo "$VOICE" | jq -Rs .)` and similarly for `MODEL`. | LLM | scripts/tts.sh:40 | |
| HIGH | JSON Injection via unvalidated numeric parameters The `RATE` and `TEMP` parameters are directly interpolated into a JSON payload as numbers without prior validation. If a non-numeric value or a string containing JSON-breaking characters (e.g., `1.0, "malicious": true`) is provided, it can lead to malformed JSON, causing API errors or potentially altering the request structure. Validate `RATE` and `TEMP` to ensure they are strictly numeric (e.g., using a regex `^[0-9]+(\.[0-9]+)?$`) before interpolation. If validation fails, exit with an error or use a default value. | LLM | scripts/tts.sh:43 |
Scan History
Embed Code
[](https://skillshield.io/report/e901ff7d9c084e0c)
Powered by SkillShield