mcpField
S
solodit

solodit

github.com/bowtiedswanセキュリティ339 回インストール39 週間前に更新
リポジトリ

solodit について

Cyfrin Solodit のスマートコントラクトセキュリティに関する指摘を検索・取得するスキルです。監査担当者や研究者向けに、深刻度、監査会社、タグ、プロトコル、言語での絞り込みや、指摘詳細・キャッシュメタデータの取得を提供します。

主な機能

  1. 01複数条件で指摘を検索
  2. 02ID または slug で指摘を取得
  3. 03監査会社・タグ・カテゴリ・言語の一覧
  4. 04統計とキャッシュ状態の確認
  5. 05結果のキャッシュと選択的な消去

活用シーン

  1. 01深刻度で指摘を絞り監査を準備
  2. 02オラクル操作の脆弱性を調査
  3. 03特定の攻撃パターンの事例を学習
  4. 04監査会社やデータベース統計を確認

MCP 対応

Solodit の指摘検索・取得、メタデータ一覧、統計確認、キャッシュ消去を行う 8 つの MCP ツールを公開します。利用には Cyfrin API キーが必要です。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/bowtiedswan/solodit-api-skill --skill solodit

インストール後、Claude Code で/soloditを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

package.json
tsconfig.json
install.sh
.gitignore
README.md
package-lock.json
index.html
src/
index.ts

詳細

Solodit API スキル

Cyfrin Solodit(ブロックチェーンセキュリティに関する調査結果を世界最大規模で収録するデータベース)から、スマートコントラクトのセキュリティ脆弱性を検索して取得します。

概要

Solodit は、Cyfrin、Sherlock、Code4rena、Trail of Bits、OpenZeppelin などの主要な監査企業による 50,000 件以上のセキュリティ調査結果を集約しています。このスキルでは、インテリジェントなキャッシュ機能を備えた 8 つの MCP ツールを利用できます。

  • search_vulnerabilities - キーワード、深刻度、監査企業、タグ、プロトコルなどで検索します
  • get_finding - ID またはスラッグを指定して、特定の調査結果を取得します
  • list_audit_firms - 利用可能なすべての監査企業を一覧表示します(24 時間キャッシュ)
  • list_tags - すべての脆弱性タグを一覧表示します(24 時間キャッシュ)
  • list_protocol_categories - プロトコルのカテゴリを一覧表示します(DeFi、NFT、Lending など)
  • list_languages - 対応している言語を一覧表示します(Solidity、Rust、Cairo など)
  • get_statistics - データベースの統計情報とキャッシュの状態を取得します
  • clear_cache - キャッシュデータをクリアして最新の結果を取得します

セットアップ

1. API キーを取得する
  1. solodit.cyfrin.io でアカウントを作成します
  2. 右上のプロフィールのドロップダウンをクリックします
  3. 「API Keys」モーダルを開き、新しい API キーを生成します
2. 環境変数を設定する
export CYFRIN_API_KEY="sk_your_api_key_here"

永続化するには、シェルのプロファイル(~/.bashrc、~/.zshrc)に追加します。

MCP ツールのリファレンス

search_vulnerabilities

Solodit データベースからセキュリティ調査結果を検索し、絞り込みます。

パラメーター:

パラメーター型説明
keywordsstring検索語(例:「reentrancy」、「oracle manipulation」)
impactstring[]深刻度フィルター:["HIGH"]、["HIGH", "MEDIUM"] など
audit_firmsstring[]監査企業で絞り込み:["Cyfrin", "Sherlock"]
tagsstring[]脆弱性タグ:["Reentrancy", "Oracle", "Access Control"]
protocol_categoriesstring[]プロトコルの種類:["DeFi", "NFT", "Lending"]
languagesstring[]プログラミング言語:["Solidity", "Rust", "Cairo"]
protocolstringプロトコル名(一部一致)
min_qualitynumber最小品質スコア(1~5)
sortstring並べ替え基準:"recency"、"quality"、"rarity"
pagenumberページ番号(デフォルト:1)
page_sizenumber1 ページあたりの結果数(最大:100、デフォルト:20)
get_finding

ID またはスラッグを指定して、特定の脆弱性を取得します。

パラメーター:

パラメーター型説明
idstring調査結果の ID(数値)またはスラッグ(URL で使いやすい識別子)
verboseboolean全文と要約を含めるかどうか(デフォルト:true)
list_audit_firms

データベースで利用可能な監査企業をすべて一覧表示します。24 時間キャッシュされます。

パラメーター:

パラメーター型説明
refreshbooleanキャッシュされた一覧を強制的に更新します(デフォルト:false)
list_tags

利用可能な脆弱性タグをすべて一覧表示します。24 時間キャッシュされます。

パラメーター:

パラメーター型説明
refreshbooleanキャッシュされた一覧を強制的に更新します(デフォルト:false)
list_protocol_categories

プロトコルのカテゴリをすべて一覧表示します(DeFi、NFT、Lending、DEX、Bridge など)。

list_languages

対応しているプログラミング言語をすべて一覧表示します(Solidity、Rust、Cairo、Vyper、Move、Huff、Fe、Ink!)。

get_statistics

調査結果の総数、キャッシュの状態、レート制限の情報など、データベースの統計情報を取得します。

clear_cache

キャッシュデータをクリアして、最新の結果を取得します。

パラメーター:

パラメーター型説明
typestringキャッシュの種類:"all"、"search"、"findings"、"metadata"

キャッシュ

MCP サーバーは、API 呼び出しを減らすためにインテリジェントなキャッシュを実装しています。

キャッシュの種類TTL用途
検索結果5 分最近の検索クエリ
個別の調査結果1 時間ID/スラッグによる調査結果
メタデータ24 時間監査企業とタグの一覧

Curl フォールバック

MCP に対応していない環境では、curl を直接使用してください。

基本検索
curl -X POST https://solodit.cyfrin.io/api/v1/solodit/findings \
  -H "Content-Type: application/json" \
  -H "X-Cyfrin-API-Key: $CYFRIN_API_KEY" \
  -d '{
    "page": 1,
    "pageSize": 20
  }'
フィルターを使った検索
curl -X POST https://solodit.cyfrin.io/api/v1/solodit/findings \
  -H "Content-Type: application/json" \
  -H "X-Cyfrin-API-Key: $CYFRIN_API_KEY" \
  -d '{
    "page": 1,
    "pageSize": 20,
    "filters": {
      "keywords": "reentrancy",
      "impact": ["HIGH", "MEDIUM"],
      "sortField": "Quality",
      "sortDirection": "Desc"
    }
  }'
監査会社で絞り込む
curl -X POST https://solodit.cyfrin.io/api/v1/solodit/findings \
  -H "Content-Type: application/json" \
  -H "X-Cyfrin-API-Key: $CYFRIN_API_KEY" \
  -d '{
    "page": 1,
    "pageSize": 20,
    "filters": {
      "firms": [{"value": "Cyfrin"}, {"value": "Sherlock"}],
      "impact": ["HIGH"]
    }
  }'

ワークフローの例

セキュリティ監査の準備
Search for all HIGH severity findings in lending protocols from the last 90 days, sorted by quality score
脆弱性の調査
Find oracle manipulation vulnerabilities in DeFi protocols with quality score 4 or higher
特定の攻撃パターンを学ぶ
Search for flash loan attack examples with tag "Flash Loan" sorted by rarity
データベースを調べる
List all audit firms available in the database
Get database statistics

レート制限

  • 上限:60 秒間のウィンドウにつき 20 リクエスト
  • ヘッダー:レスポンスの X-RateLimit-Remaining を確認してください
  • キャッシュ:API 呼び出しを大幅に削減します
  • 警告:残りリクエスト数が 5 以下になると通知します

よく使われるタグ

  • リエントランシー
  • オラクル
  • アクセス制御
  • 整数オーバーフロー/アンダーフロー
  • フロントランニング
  • 価格操作
  • フラッシュローン
  • グリーフィング
  • DOS
  • ロジックエラー

よく使われる監査会社

  • Cyfrin
  • Sherlock
  • Code4rena
  • Trail of Bits
  • OpenZeppelin
  • Consensys Diligence
  • Spearbit
  • Pashov Audit Group
  • Hacken
  • ChainSecurity

プロトコルのカテゴリ

  • DeFi
  • NFT/NFT マーケットプレイス
  • レンディング/NFT レンディング
  • DEX
  • ステーキング/リキッドステーキング
  • ガバナンス/DAO
  • ブリッジ/クロスチェーン
  • イールドアグリゲーター
  • オプション/オプションボルト
  • オラクル
  • ゲーミング
  • RWA

サポート

コメント