shipcheck-mcp
AIが構築したアプリが何を漏らしているか、出荷前に見つけましょう。
Claude Code、OpenCode、Cursor、またはMCP互換のエージェントで動作します。標準のModel Context Protocolサーバーであり、Claude専用ツールではありません。
AIコーディングエージェントは、APIキーを漏洩させたり、GPLライセンスのパッケージを取り込んだり、管理者ルートをインターネットに公開したままにしたり、プライバシーポリシーなしでメールを収集したり、生のカード番号に触れたりするアプリを平気で出荷します。「動くかどうか」と「出荷してもよいか」は別の質問であり、あなたのエージェントは最初の質問にしか答えないからです。
ShipCheckは2番目の質問に答えます。プロジェクトに対して5つの高速で決定的なチェックを実行し、各発見を平易な言葉で説明します。何が問題か、なぜあなたにとって重要なのか、そして正確にどう修正するか。セキュリティの知識は不要です。
正直な設計: ShipCheckはリスクのあるパターンを指摘します。法的レビューでも保証でもありません。クリーンなスキャンは、これらの特定のチェックに一致するものがなかったという意味に過ぎません。完全な非目標についてはPRD.md §2を参照してください。
2つのツール、2つのタイミング
ツール | タイミング | スキャン内容 |
| すべてのコミットの前 — エージェントがビルドしている間 | 未コミットの変更のみ( |
| ローンチ前 — アプリストア、公開、投資家 | リポジトリ全体。削除されたがローテーションされていないシークレットのgit履歴も含む。 |
同梱のスキルは、エージェントにコミット前のscan_diff、ローンチ前のscan_repoという習慣を教えます。
Related MCP server: MCP Shield
あなたのスタックに対応
チェック | カバレッジ |
🔑 露出したシークレット | 任意の言語 — 15以上のキーフォーマット (Stripe, OpenAI, Anthropic, OpenRouter, Supabase service-role, AWS, GitHub, Google, Slack, SendGrid, Resend, private keys, DB URLs)、コミットされた |
⚖️ コピーレフトライセンス | npm · PyPI · pub.dev · crates.io · RubyGems · Composer |
🚪 ロック解除されたルート | Express · FastAPI · Flask · Next.js (App + Pages Router) · gin/echo/fiber-style Go · Laravel · Spring Boot |
🕵️ プライバシーポリシーなしのPII | Google Analytics, PostHog, Meta Pixel, Hotjar, Clarity, Amplitude, Mixpanel, Segment, Firebase, signup/auth forms, phone inputs |
💳 カードデータの取り扱い | JS/TS/Dart/Python/HTMLの生のカード/CVVフィールド vs プロセッサSDK (Stripe Elements & friends) |
すべてのサマリーは、検出したスタック(project_types)を伝え、検出したスタックが完全にカバーされていない場合には、すべて問題ないと示唆するのではなく、正直に警告します(coverage_caveat)。
発見の例
[critical] lib/firebase_options.dart — 人々のデバイス上で実行されるコード内にGoogle APIキーが見つかりました。
なぜ重要か: このキーはアプリ内に含まれて、すべてのユーザーの電話やブラウザに届きます。誰でもそれをコピーして、あなたになりすまして使用できます。あなたのお金を使ったり、データを読んだりできます。
修正方法: キーをプロジェクトの一部にならない別のシークレットファイルに移動し、起動時に読み込み、プロバイダーのダッシュボードから新しいキーを取得します。このキーは盗まれたものとして扱ってください。
30秒で始める
# In Claude Code:
/plugin marketplace add noureldeensalama/shipcheck
/plugin install shipcheck
# Then just talk to your agent:"コミット前にshipcheckを実行" · "これはローンチできる?" · "このリポジトリをスキャン"
ヘッドレス / CI:
claude --plugin-dir /path/to/shipcheck -p "Run shipcheck scan_repo on . and summarize findings"スタンドアロンMCPサーバー (Cursor, OpenCode, その他)
git clone https://github.com/noureldeensalama/shipcheck.git
cd shipcheck && npm install && npm run build{
"mcpServers": {
"shipcheck": { "command": "node", "args": ["/absolute/path/to/shipcheck/dist/index.js"] }
}
}公開後は: npx shipcheck-mcp
信頼できる理由
決定的: 正規表現と依存関係メタデータのみ。LLMは発見を後段で説明しますが、発見の存在を決定することはありません(PRD.md §4)。
静かに設計: 同一のキーはすべての場所を含む1つの発見に重複排除されます。出力は重大度順でコンパクト(10万行のリポジトリで約1kトークン)、100件で上限に達し、明示的な切り捨てフラグが付きます。ベンダー化されたツリー(
node_modules、.venv、build…)はスキャンされません。プレースホルダー値(mock…、CIダミー)や公開設計の設定(google-services.json、firebase_options.dart)は誤報を出しません。実コードで実証済み: 5つの本番リポジトリでドッグフーディングしました。13ファイルにわたる本番Supabaseサービスロールキーと3つの未認証デバッグエンドポイントを検出し、修正が適用されたことを確認し、git履歴にのみ残っていた2番目のキーをフラグしました。完全な真/偽陽性ログ: DOGFOOD_RESULTS.md。
互換性
Node.js | 20+ (CI matrix: 20 & 22) |
OS | macOS · Linux · Windows (BOM耐性のあるファイル解析、パス安全) |
エージェント | stdioでMCPを話すものなら何でも |
プロジェクトタイプ | シークレット/ライセンスはすべてのスタックをカバー。ルートのカバレッジは上記の表の通り |
自分でテストする
npm test # 53 unit tests
npm run e2e # 21 real-MCP-protocol checks
npm run verify-fixture # acceptance gate over deliberately-vulnerable fixtures
npm run dogfood -- /path/to/any/repo # scan any repo from the CLIコントリビューション
IssueとPRを歓迎します — CONTRIBUTING.mdを参照してください。新しい検出器カテゴリには、リスクで発火するフィクスチャと、過剰発火しない回帰テストの両方が必要です。実際のコードサンプルを含む誤報レポートは特に価値があります。実際のリポジトリの結果はDOGFOOD_RESULTS.mdにあります。
ライセンス
MIT — LICENSEを参照。
This server cannot be deployed
Maintenance
Related MCP Connectors
Zero-config MCP security scanner for AI-generated apps. 25K+ vulnerability patterns.
Lets coding agents check their own code for leaked secrets, risky dependencies and AI-code mistakes
Zero-install security baseline for AI coding agents — OWASP/CWE-cited rules over MCP.
Security firewall for AI agents — scans MCP calls for injection, secrets, and risks.
Related MCP Servers
- AlicenseAqualityDmaintenanceAgent-native "safe to ship?" security gate for AI-generated code. Uses real parsers and inter-rocedural taint analysis (JS/TS, Python, Go) to flag the classes AI coding agents get wrong — secrets, SQL injection, SS, SSRF, path traversal, command injection, weak JWT/CORS — and ranks findings by confidence. Exposes a scan tool over MCP.15 npm2MIT
- AlicenseCqualityDmaintenanceSecurity scanner and MCP server that catches dangerous patterns in MCP servers and AI agent projects, such as leaked secrets, shell execution, and prompt-injection text. Runs as both a CLI and MCP server with CI-friendly severity gates.21MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI coding tools to scan projects for security vulnerabilities, hardcoded secrets, injection flaws, and privacy violations with 699 rules and 76 MCP tools, all running locally with zero telemetry.17 npm7MIT
- AlicenseBqualityBmaintenanceEnables AI agents to run deterministic, fully local static security and compliance audits of code, configurations, and dependencies through 32 MCP tools covering 24 vulnerability categories. It also detects the project stack, generates risk reports and checklists, suggests stack-aware remediations, and re-validates fixes to confirm vulnerabilities were eliminated.321MIT