indeeddata について
indeeddataは、Indeedの求人一覧と詳細をJSONで返すローカルブリッジです。キーワードと場所で公開求人を検索したり、URLから求人情報を取得したりするクライアント向けで、独自の求人データは保持せずHasDataへ転送します。
主な機能
- 01キーワードと場所による求人検索
- 02検索結果の絞り込みとページ送り
- 03求人詳細の取得
- 04給与、雇用形態、説明、福利厚生の取得
- 05HasDataへの読み取り専用転送
活用シーン
- 01職種と場所に合う求人の検索
- 02掲載日やリモート形態による求人の絞り込み
- 03求人の報酬と福利厚生の確認
MCP 対応
MCPクライアントに2つの読み取り専用Indeed求人検索ツールを公開します。呼び出しをホスト型HasData Indeed MCPサーバーへ転送し、成功結果をそのまま返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
2掲載時のツール一覧 · 2 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| url | string | はい | 詳細を取得する求人の URL です。 |
詳細
indeeddata
indeeddata は、JSON として Indeed の求人データを返す、ホスト型 HasData Indeed MCP サーバーへの小規模なローカルブリッジです。公開求人に関する日常的な2つの疑問、すなわち、今この場所でキーワードに合う求人は何か、そして URL を入手したあとに個別の求人情報には実際に何が書かれているのか、に対応します。求人一覧検索では、タイトル、企業名、勤務地、給与、掲載日、URL、スポンサー付きフラグ、安定した jobKey 識別子を含む求人ページが返されます。詳細情報の取得では、報酬、雇用形態、完全な説明、福利厚生を含む求人情報全体が返されます。
このブリッジは求人情報を独自に保持しません。ライブエンドポイントから取得したとおりに、上流サーバーのツール一覧をローカルで提供し、各ツール呼び出しを上流に転送して、結果をそのまま返します。取得したインターフェースは、公開求人のみを対象とする読み取り専用の取得ツール2つです。応募の送信、雇用主や候補者の連絡先データ、メッセージ機能、決済ツールはありません。
ツール
hasdata_indeed_listing_getJobListings— Indeed の求人一覧を検索します。必須項目:keywordとlocation。任意項目:sort(relevance/date)、domain(検索対象の国別サイト。例:au.indeed.com)、sponsoredOnly、datePosted(1/3/7/14日)、remoteType(remote/hybrid)、start(ページネーション用の結果オフセット)。米国のリモート求人を検索する場合は、United Statesのように国全体を指定する場所を使用してください。Indeed では、完全リモートの求人は都市ではなく国に紐づけられています。hasdata_indeed_job_getJobDetails— 求人情報を1件、全体取得します。必須項目:url(求人の viewjob URL。通常は求人一覧検索の結果から取得します)。タイトル、企業名、勤務地、給与/報酬、雇用形態、完全な説明、福利厚生を返します。
設定
HASDATA_INDEED_MCP_URL(任意) — 上流エンドポイントを上書きします。デフォルトはhttps://mcp.hasdata.com/mcp?apis=indeedです。(この上書き用フックは、この再構築で独自に明示したものです。)HASDATA_API_KEY(任意) — 設定すると、すべての上流リクエストに、呼び出し元自身の HasData API キー用のx-api-key: <key>ヘッダーが含まれます。未設定の場合、キーのヘッダーは送信されません。(ヘッダー名と環境変数名は、オリジナルのレジストリレコードに基づいて固定されています。この環境変数からキーを転送する動作は、明示的に再構築したものです。オリジナルのインターフェースはキーなしで取得されました。)
転送の仕組み
最初のツール呼び出し時に、クライアントは上流とのストリーミング可能な HTTP セッションを開きます。まず JSON-RPC の initialize リクエスト(protocolVersion 2025-03-26、clientInfo name indeeddata)を送り、次に notifications/initialized 通知を送り、その後、呼び出し元の引数を変更せずに含めた tools/call リクエストを送ります。上流が initialize に Mcp-Session-Id ヘッダーを付けて応答した場合、その値はセッション内の後続のすべてのリクエストに付与され、プロセスの存続中は同じセッションが再利用されます。応答は通常の JSON またはサーバー送信イベントとして届く場合があり、どちらも読み取られます。
上流からの成功結果は、上流が設定した isError フラグを含め、そのまま渡されます。JSON-RPC エラー、2xx 以外のステータス、読み取り不能な応答、完了できないリクエストなどの失敗は、テキストが indeeddata error: で始まる isError 結果として返されます(このエラー表示は、この再構築で独自に明示したものです)。
CLI
各ツールは、1つの JSON 引数文字列を受け取るサブコマンドとしても実行できます。
npx @reneturcios/indeeddata hasdata_indeed_listing_getJobListings '{"keyword":"nurse","location":"Austin, Texas","sort":"date"}'
npx @reneturcios/indeeddata hasdata_indeed_job_getJobDetails '{"url":"https://www.indeed.com/viewjob?jk=example"}'
npx @reneturcios/indeeddata --version
終了コード:成功時は 0、isError 結果の場合は 1、使用方法に関するエラーの場合は 2 です。
MCP サーバー
npx -y @reneturcios/indeeddata mcp
MCP クライアントの設定:
{
"mcpServers": {
"indeeddata": {
"command": "npx",
"args": ["-y", "@reneturcios/indeeddata", "mcp"]
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/indeeddata
docker run --rm ghcr.io/cloudcorprecords/indeeddata --version
コンテナーのデフォルトコマンドは mcp です。そのため、最初の形式は stdio MCP サーバーとして動作し、それ以外の引数は通常どおり CLI に渡されます。
開発
npm install
npm run build
npm test
npm run dev
テストスイートはすべて、スタブ化された JSON-RPC 上流に対して実行されます。実際のネットワーク呼び出しは行いません。
ライセンス
MIT — LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。