Nextscan について
Nextscanは、Next.jsプロジェクトをスキャンし、ルート、APIエンドポイント、データベーススキーマ、セキュリティ上の問題を開発者向けに要約します。単一のスキャンツールで、ルート、API、スキーマ、セキュリティに焦点を絞れます。
主な機能
- 01アプリケーションのルートを把握
- 02APIの認証とバリデーションを確認
- 03PrismaとDrizzleのリレーションをマッピング
- 04ハードコードされた秘密情報と環境変数漏えいを検出
- 05分析対象を指定してスキャン
活用シーン
- 01不慣れなNext.jsプロジェクトの概要を把握
- 02APIエンドポイントの網羅性と保護を確認
- 03プロジェクトのスキーマやセキュリティを確認
MCP 対応
Nextscanは、MCP対応クライアントにスキャンツールを提供するMCPサーバーです。指定されたパスにあるローカルのNext.jsプロジェクトを分析します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
1掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| path | string | はい | Next.js プロジェクトのルートへの絶対パス |
| focus | enum | いいえ | 特定の領域に焦点を当てます(省略すると全体をスキャンします)routes | api | schema | security |
詳細
nextscan
Next.js プロジェクトをスキャンし、簡潔な概要を返す MCP サーバーです。ツールを1回呼び出すだけで、プロジェクト全体を把握できます。
できること
| nextscan を使わない場合 | nextscan を使う場合 |
|---|---|
| ファイルを1つずつ手動で調査 | scan を1回呼び出すだけ |
| ルートの把握に複数のツール呼び出しが必要 | フラグ付きの簡潔なルートツリー |
| セキュリティ上の問題を見落とす | ハードコードされたシークレットと環境変数の漏えいを検出 |
| API のカバレッジが不明 | エンドポイントごとの認証と検証の状態 |
| スキーマの推測が必要 | Prisma/Drizzle のリレーションをマッピング |
クイックインストール
# Clone and build
cd nextscan
npm install
npm run build
# Add to Claude Code
claude mcp add nextscan -- node /path/to/nextscan/dist/index.js
ツール:scan
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
path | string | はい | Next.js プロジェクトルートの絶対パス |
focus | enum | いいえ | routes | api | schema | security |
出力例
nextscan — my-app
────────────────────────────────────────
Root: /Users/dev/my-app
src/ : yes app/ : yes middleware: yes
ORM : prisma
Routes
Pages: 12 Layouts: 3 API: 5
Dynamic: 4 Static: 8
Client: 3 Server: 9
Groups: (marketing), (auth)
Matchers: /dashboard/:path*, /api/:path*
┌─ Pages
├─ /
├─ /about
├─ /dashboard [client]
├─ /blog/[slug] [dyn,SSG]
└─ /settings [client]
API Endpoints
Total: 5 Unprotected: 1
├─ GET,POST /api/users [auth:next-auth | val:zod]
├─ GET /api/health [no-auth,no-rate-limit]
└─ POST /api/webhook [no-auth,no-validation]
Schema
Models: 5 Relations: 4
Orphans: AuditLog
User ─< Post (1:N)
User ─ Profile (1:1)
Post >─< Tag (N:N)
Security
Score: 75/100 Headers: yes Middleware: yes
[high] API route /api/health has no auth: [GET]
[medium] No rate limiting on /api/users
プロンプトの例
- 「/Users/dev/my-app にある Next.js プロジェクトをスキャンしてください」
- 「Next.js アプリのセキュリティを確認してください」
- 「ルート構造を表示してください」
- 「データベーススキーマを分析してください」
アーキテクチャ
src/
├── index.ts # MCP server entry point
├── tools/scan.ts # Orchestrator
├── analyzers/
│ ├── routes.ts # App router analysis
│ ├── api.ts # API endpoint analysis
│ ├── schema.ts # Schema orchestration
│ └── security.ts # Security scanning
├── parsers/
│ ├── typescript.ts # ts-morph utilities
│ ├── prisma.ts # Regex-based Prisma parser
│ └── drizzle.ts # AST-based Drizzle parser
├── formatters/
│ └── compact.ts # Unicode tree formatter
└── utils/
├── fs.ts # File system utilities
└── detect.ts # Project detection
要件
- Node.js 18+
- MCP 互換のクライアント(Claude Code、Claude Desktop など)
開発
npm install
npm run build
npm test
npm run test:coverage
作者
Berkay Derin — github.com/berkayderin
ライセンス
MIT
コメント
Markdown 対応
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。