Back to skill

Security audit

Spotify Api

Security checks for vulnerabilities and agentic risk

Overview

The skill appears to do what it says: query public Spotify catalogue data through ScraperSocial using an API key, with no hidden persistence or local data access found.

Install only if you are comfortable using ScraperSocial as a third-party API provider. The skill sends your Spotify lookup inputs and SCRAPERSOCIAL_KEY to ScraperSocial and may consume API credits, but I found no evidence of hidden local file access, persistence, or unrelated network destinations.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (4)

Tp4

High
Category
MCP Tool Poisoning
Confidence
97% confidence
Finding

The code largely matches the declared Spotify data access purpose: it is restricted to Spotify-related endpoints for albums, artists, artist top tracks, playlists, search, and tracks. However, there is a small description-behavior mismatch in scope/wording. The implementation exposes only six specific allowlisted paths and only one 'top tracks' capability, namely artist-top-tracks, rather than any broader top-tracks functionality. Also, the description's 'catalogue search' wording is somewhat broader than the explicit allowlist, which only includes a single /v1/spotify/search endpoint. There is no evidence of unrelated behavior, extra resource access, or undeclared sensitive capability; the mismatch is minor but present.

Content

No source excerpt is available for this finding.

Lp1

High
Category
MCP Least Privilege
Confidence
75% confidence
Finding

The skill uses 'env' capability that is not listed in its permissions. This may indicate deceptive intent or missing permission declarations.

Content

No source excerpt is available for this finding.

Lp1

High
Category
MCP Least Privilege
Confidence
75% confidence
Finding

The skill uses 'network' capability that is not listed in its permissions. This may indicate deceptive intent or missing permission declarations.

Content

No source excerpt is available for this finding.

Lp1

High
Category
MCP Least Privilege
Confidence
75% confidence
Finding

The skill uses 'shell' capability that is not listed in its permissions. This may indicate deceptive intent or missing permission declarations.

Content

No source excerpt is available for this finding.

Static analysis

Detected: suspicious.env_credential_access

Environment variable access combined with network send.

Critical
Code
suspicious.env_credential_access
Location
scripts/_client.js:53