HackList について
HackList は、AI や Web3 のハッカソン、助成金、懸賞、プログラムを探す開発者向けの MCP サーバーです。スキルや条件に応じて候補を順位付けし、参加資格、賞金の内訳、重複、募集内容の具体性も考慮します。
主な機能
- 01機会のランキング推薦
- 02条件付きキーワード検索
- 03現金賞金とクレジットの内訳
- 04参加資格と重複の検出
- 05締切と最近の更新の確認
- 06詳細とデータソース情報
活用シーン
- 01スキルと地域に合う参加可能なイベント探し
- 02現金賞金と締切の比較
- 03募集の参加条件と応募リンクの確認
MCP 対応
MCP クライアントに、HackList の読み取り専用検索、ランキング、詳細、締切、概要ツールを提供します。ホスト型リモート接続とローカル stdio 接続に対応します。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://hacklist-mcp.samuelsuccess234.workers.dev/mcpclaude mcp add --transport http mrfomoweb3-hacklist https://hacklist-mcp.samuelsuccess234.workers.dev/mcp{"mcpServers":{"mrfomoweb3-hacklist":{"type":"http","url":"https://hacklist-mcp.samuelsuccess234.workers.dev/mcp"}}}Cursor で開く{"servers":{"mrfomoweb3-hacklist":{"type":"http","url":"https://hacklist-mcp.samuelsuccess234.workers.dev/mcp"}}}VS Code で開く{"mcpServers":{"mrfomoweb3-hacklist":{"type":"http","url":"https://hacklist-mcp.samuelsuccess234.workers.dev/mcp"}}}{"mcpServers":{"mrfomoweb3-hacklist":{"serverUrl":"https://hacklist-mcp.samuelsuccess234.workers.dev/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
翻訳後に原文が更新されています。最新の内容は原文をご確認ください。
hacklist-mcp
Claude と ChatGPT から、AI と Web3 のハッカソン、助成金、バウンティ、プログラムを掲載するディレクトリ HackList にリアルタイムでアクセスできる MCP サーバーです。
次のような質問ができます。
- 「今月、何に応募すればよいですか? Solidity と Python を使い、エージェントを開発しています。ナイジェリア在住で、渡航はできません。」
- 「Qloo のハッカソンはいつ掲載されましたか? 実際の賞金はいくらですか?」
- 「今週、HackList に掲載された 1 万ドル超の新着情報はありますか?」
- 「今後 10 日以内に締め切られる、ZK またはプライバシー関連のハッカソンを探してください。」
単なるスクレイパーではない理由
HackList にはあらゆる情報が掲載されています。このサーバーは、週末を費やす価値のある募集を見つけます。
| 元の一覧にある問題 | サーバーの処理 |
|---|---|
| 同じイベントが二重に掲載されている(Amazon、GitLab、OpenCV、GenAI Works など) | タイトル、主催者、締め切り、応募リンクで重複を検出し、まとめます |
| 「総額 190,000 ドル」の大半が AWS クレジット | 条項ごとに現金とクレジットを分け、見出しには現金の金額を表示します |
| 比較しにくい ₹、USDC、USDT、€ の賞金 | おおよその USD 金額に換算します(元の表記は常に保持されます) |
| 実際には応募できないイベント | 学生限定、地域制限、対面限定、パートナー限定、申請必須のイベントにフラグを付け、おすすめから除外します |
| 「現実世界の問題を解決する AI アプリを作ろう」 | 課題の汎用性をスコア化し(0 = 具体的、1 = 汎用的)、具体的な要素(明記された API、データセット、評価指標、トラック)を一覧表示します |
| 締め切りのない継続募集の助成金やバウンティ | オープン(「固定の締め切りなし」)として扱い、除外したり埋もれさせたりせず、公平に順位付けします |
best_opportunities は、これらすべてをユーザーのスキルや条件と組み合わせ、各おすすめの理由(why)とリスク(watch_outs)を説明します。
ツール
| ツール | 機能 |
|---|---|
best_opportunities | 開発者の条件(スキル、関心、国、学生かどうか、渡航可能か、現金のみか)に合う募集中の機会を順位付けします。汎用的な課題の順位を下げ、応募資格のないものを除外し、おすすめごとに理由を説明します。 |
search_opportunities | キーワード検索とフィルター(種類、AI/Web3、オンライン/対面/ハイブリッド、最低賞金、現金のみ、N 日以内に締め切り、N 日以内に更新、締め切り済みを含める)を利用できます。 |
get_opportunity | HackList の URL、ID、タイトルを指定して、1 件の募集の詳細を取得します。課題、賞金(USD 換算額、現金とクレジットの内訳)、締め切りと残り日数、掲載日/更新日、応募リンク、応募資格、重複情報を確認できます。 |
whats_new | 過去 N 日間に掲載または更新された募集を表示します。 |
closing_soon | N 日以内に終了する募集中の募集を、締め切りが近い順に表示します。 |
hacklist_overview | 件数、賞金総額、賞金額の大きい募集、重複グループ、データの網羅状況を表示します。refresh: true を指定すると再取得します。 |
search / fetch | ChatGPT コネクターやディープリサーチが想定する 2 つのツールです。 |
すべてのツールは読み取り専用です。
インストール
Node 18.17 以降が必要です。
Claude Desktop(ローカル、stdio)
claude_desktop_config.json に追加します。
{
"mcpServers": {
"hacklist": {
"command": "npx",
"args": ["-y", "hacklist-mcp"]
}
}
}
npm への公開前は、代わりにローカルビルドを指定してください。"command": "node", "args": ["/absolute/path/to/hacklist-mcp/dist/index.js"]。
Claude Code
claude mcp add hacklist -- npx -y hacklist-mcp
Cursor、Windsurf、その他の stdio クライアント
同じコマンドを使います。npx -y hacklist-mcp。
ChatGPT と claude.ai(リモートコネクター)
これらには公開 HTTPS URL が必要なため、HTTP モード(下記)をデプロイし、https://your-host/mcp をカスタムコネクターとして追加してください。
- ChatGPT: Settings で開発者モードを有効にし、
/mcpURL を使ってカスタムコネクター/アプリを追加します。ChatGPT はディープリサーチにsearchとfetchツールを使い、チャットではほかのツールも呼び出せます。 - claude.ai: Settings → Connectors → カスタムコネクターを追加し、
/mcpURL を指定します。
HTTP サーバーを起動する
npm install && npm run build
PORT=3000 npm run start:http # serves POST /mcp and GET /healthz
ステートレスな Streamable HTTP のため、水平スケーリングが可能で、どのロードバランサーの背後でも動作します。1 つの HackList スナップショットをリクエスト間で共有します。
Docker を実行できる場所ならどこにでもデプロイできます。
docker build -t hacklist-mcp .
docker run -p 3000:3000 hacklist-mcp
Render、Railway、Fly.io、Cloud Run でそのまま動作します(いずれも HTTPS を提供します)。プライベートに保つには HACKLIST_MCP_TOKEN を設定してください。サーバーは Authorization: Bearer <token> を必須とします。公開され、認証不要のコネクターにする場合は、設定しないでください。
Cloudflare Workers
src/worker.ts は、Express やディスクキャッシュを使わずに同じエンドポイントを提供します。
npx wrangler login
npm run dev:worker # local, http://localhost:8787/mcp
npm run deploy:worker # https://hacklist-mcp.<your-subdomain>.workers.dev/mcp
npx wrangler secret put HACKLIST_MCP_TOKEN # optional, same bearer-token behaviour
HackList のスナップショットは Worker インスタンスごとにキャッシュされるため、起動直後のインスタンスでは、最初の呼び出し時にフィードを再取得します(約 2 秒)。無料プランの 10ms CPU 制限により起動直後にエラーが発生する場合(npx wrangler tail に Exceeded CPU Limit と表示される場合)は、Workers Paid に移行してください。
HackList から正しく読み取れているか確認する
npm run check
公式フィードが使用されたか、読み込まれた掲載数と HackList が公開中としている掲載数、各フィールドが入力された頻度を出力します。
設定
| Env var | Default | Purpose |
|---|---|---|
PORT | 3000 | HTTP モードのポート |
HACKLIST_MCP_TOKEN | unset | HTTP モードでベアラートークンを必須にします |
HACKLIST_LIST_TTL_MS | 1200000 (20 min) | スナップショットの有効期間 |
HACKLIST_MAX_DETAIL_FETCHES | 260 | 更新ごとに取得する詳細ページ数の上限 |
HACKLIST_CACHE_DIR | ~/.cache/hacklist-mcp | 詳細ページ用のディスクキャッシュ(再起動後もすぐに利用できます) |
HACKLIST_BASE_URL | https://hacklist.io | テストまたはミラー用の上書き設定 |
HACKLIST_FEED_URL | /api/opportunities | フィードのパスまたは完全な URL |
データの取得方法
- 公式フィード(
GET https://hacklist.io/api/opportunities):HackList が提供しています。更新ごとに 1 回リクエストし(20 分間キャッシュ)、公開中のすべてのハッカソン、プログラム、助成金、懸賞を、それぞれの掲載日のcreated_atとともに返します。 - フォールバック: フィードが停止している場合や予期しない内容を返す場合、サーバーは代わりに公開ページ(ホームページ、
/sitemap.xml、詳細ページ)を読み取ります。表示されているラベルを基準にするため、見た目だけのデザイン変更では動作に影響しません。 - 終了した掲載(
include_closed: true)は、フィードに公開中の掲載しかないため、サイトマップと詳細ページから取得します。
hacklist_overview とすべての結果では、data_source(feed または pages)と data_as_of(HackList がフィードを生成した時刻)を報告します。
フィードを公開してくれた HackList(@0xbeni、Telegram)に感謝します。このプロジェクトは HackList と提携していません。
開発
npm install
npm test # 19 tests: feed + page parsers, fallback, prize/eligibility/duplicate logic, full MCP round-trips
npm run dev # stdio server via tsx
制限事項
- 賞金の USD 額は概算です(固定の概算為替レートを使用)。元の賞金表記は常に併記されます。
- 暗号資産(ETH、SOL など)で支払われる賞金には、価格が変動するため USD の概算額は付けず、その旨を表示します。
- ページスクレイピングのフォールバックモードでは、ホームページの最初のページ以降にあるプログラム、助成金、懸賞が欠落する場合があります(サイトマップに含まれるのはハッカソンのみです)。
- 「汎用」のスコアリングはヒューリスティックです。「任意の AI アプリを作る」といった概要と、「AUC で評価される、12 種類の膝 MRI 異常を検出する」といった概要を区別できるよう調整されています。
include_generic: trueにすると、このペナルティが無効になります。
MIT ライセンスです。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。