8ステップ。各ステップは入力を受け取り、1つのアクションを実行し、1つの出力を出します。SmeltSecにリポジトリまたはOpenAPI仕様を指定すると、署名済み、採点済み、デプロイ可能なMCPサーバーが得られます。
SmeltSec に3つのソースのいずれかを指定します。公開または非公開の GitHub URL はリポジトリのクローンをトリガーします。OpenAPI 3.0/3.1 ドキュメントは直接パースされます。自然言語の説明は関連 SDK ドキュメントを取り込みます。出力: AST 処理の準備が整った正規化ソースバンドル。
Tree-sitter がバンドルをパースし、ファイルごとに型付き AST を出力します。SmeltSec はツリーを走査して公開関数シグネチャとルートハンドラを抽出し、internal や deprecated のマークが付いたものを除外します。出力: 呼び出し可能なユニットの候補リストと型アノテーション。
LLM パスが各候補を MCP ツール定義に変換します: 名前、説明、引数と戻り値の型のための厳密な JSON Schema。docstring が説明になり、型アノテーションがスキーマになります。出力: サーバーに組み込む準備が整った型付きツールのマニフェスト。
各ツール定義は実際のハンドラになります。SmeltSec は FastMCP(Python 3.11)または TypeScript SDK コードを出力し、リトライ、サーキットブレーカー、引数サニタイズ、選択したトランスポートを組み込みます。出力: 依存関係が固定された実行可能な MCP サーバーリポジトリ。
すべてローカル、すべて無料。Semgrep が SAST ルールを実行し、Gitleaks がコードと git 履歴からシークレットを検出し、OSV-Scanner がピン留めされた依存関係を OSV データベースと照合し、MCP-Scan がツール説明のポイズニングを検出します。Critical の発見でパイプラインが停止します。出力: 署名付き Gate 1 レポート。
LLM が各ツールの説明と実際のコードの動作を比較します。ズレは動作ドリフトとして現れます: 読み取ると宣言しているのに書き込みもするツール、副作用を隠した説明、宣言していない権限。このステップは有料(サーバー1台あたり約 $0.02)です。出力: ツールごとに Pass / Warn / Fail を示す動作レポート。
6つの次元、サーバーごとに1つの文字評価: 説明の明確さ、スキーマの完全性、命名の一貫性、既存ツールとの重複、エラー表面、可観測性フック。各次元には数値スコアと修正提案があります。出力: 実行可能な項目付きのレポートカード(A–F)。
SmeltSec はサーバー、両方のゲートレポート、品質スコア、SBOM を cosign で署名された単一のアテステーションにまとめます。Claude Desktop、Cursor、VS Code、ChatGPT、Windsurf 向けクライアント設定は同期デーモンが一度に書き出します。出力: すべてのツールがすべてのクライアントに配線された、署名付きデプロイ可能な MCP サーバー。
What to expect when running SmeltSec end to end.