mcpField
H
HirePulse tools

HirePulse tools

ローカル
github.com/edtool79-collabビジネス・マーケティング02 週間前に更新

HirePulse tools について

HirePulse toolsは、商品、広告、企業シグナル、求人、キーワード、SEO、YouTube字幕を扱う8つのApify Actorを実行するPythonライブラリで、stdioのMCPサーバーも任意で利用できます。独立したゲートウェイとLangChain、CrewAI向けアダプターも含みます。

主な機能

  1. 018種類のApify Actor関数
  2. 02商品、広告、求人、SEOデータ
  3. 03任意のローカルstdio MCPサーバー
  4. 04Apifyホスト型MCPの設定
  5. 05ゲートウェイとLangChain/CrewAIアダプター

活用シーン

  1. 01商品一覧や求人の検索
  2. 02企業シグナルや広告の確認
  3. 03キーワード指標とSEOデータの取得
  4. 04YouTube字幕レコードの収集

MCP 対応

ローカルstdio MCPサーバーは、同じ8つのApify連携関数を入力・出力スキーマ付きで公開します。Apifyホスト型MCPも利用でき、独立ゲートウェイのツールは別系統です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"edtool79-collab-hirepulse-open-source": {
"command": "uvx",
"args": [
"hirepulse-tools"
],
"env": {
"APIFY_TOKEN": "<APIFY_TOKEN>"
}
}
}
}
起動コマンドuvx hirepulse-tools
設定が必要な環境変数
APIFY_TOKENシークレットApify token provided through the process environment only.

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypihirepulse-tools0.3.0

ツール

8

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
sortenumいいえ結果の並び順。best_match | orders | price_low | price_high
queriesarrayはい文字列の配列。Console UI では 1 行に 1 つ入力します。検索語(例:"yoga mat")。1 回の実行につき最大 20 件。
ship_tostringいいえ2 文字の国コード。価格と在庫状況はこの国に基づきます。
currencyenumいいえ価格に使用する通貨。USD | EUR | GBP | CAD | AUD | BRL | MXN | PLN | ILS | JPY | KRW | INR | TRY | CHF | SEK
max_priceanyいいえこの価格以下の商品に限定します(任意)。
min_priceanyいいえこの価格以上の商品に限定します(任意)。
result_limitintegerいいえ1–1000。デフォルトは 60。実行時に要求する max_items と、取得するデータセットの行数上限。
max_total_charge_usdnumberいいえApify .call() に渡す有限の正の USD 支出上限。デフォルトは 1.0。
max_results_per_queryintegerいいえ最大1,200件(20ページ、各60件)。

詳細

HirePulse ツール

LangChain および CrewAI ゲートウェイツール(0.3.0)

pip install 'hirepulse-tools[langchain]'
# or: pip install 'hirepulse-tools[crewai]'
from hirepulse_tools.frameworks import get_langchain_tools, get_crewai_tools

tools = get_langchain_tools()  # eight StructuredTools for a LangChain agent
# tools = get_crewai_tools()  # eight BaseTools for a CrewAI agent

どちらのファクトリーも、ネットワーク呼び出しを行わずにツールを一覧表示します。独立したゲートウェイを使用し、HTTP 402 は PaymentRequired として伝播します。支払いへの署名は行いません。互換性のある、明示的に設定されたゲートウェイクライアントを使用するには、get_langchain_tools(custom_client) または get_crewai_tools(custom_client) を呼び出してください。

独立したゲートウェイ(0.2.0 で追加)

https://gethirepulse.xyz にある 8 つのツールで、以下の Apify ツールとは別のものです。アカウントも Apify トークンも必要ありません。UTC の 1 日あたり IP ごとに 5 回の成功した呼び出しが、ツール間で共有されます。検索結果が空の場合、課金されません。価格は Base 上で $0.005 USDC からで、バッチとホットバイヤーには別途見積もりとスキャンの上限があります。

from hirepulse_tools import GatewayClient, PaymentRequired

try:
    print(GatewayClient().hiring_intent("linear.app"))
except PaymentRequired:
    print("Free allowance exhausted. No payment was attempted.")

メソッド:tech_stack、open_jobs、hiring_intent、google_ads、 company_profile、company_footprint、hot_buyers、batch、catalog。 lookup(tool, **body) は、文書化されたゲートウェイのリクエストボディを受け取ります。 クライアントは支払いへの署名も、ウォレットキーの読み込みも行いません。HTTP 402 が発生すると、body とエンコードされた payment_required チャレンジを含む PaymentRequired が送出されます。 その他の HTTP エラーでは GatewayError が送出されます。リクエストは再試行されません。

実行可能な x402 の例 では、任意の支払い設定を紹介しています。私は HirePulse を運営しています。

Apify 上の 8 つの HirePulse ツールを利用するための Python ライブラリと、オプションの stdio MCP サーバーです。各 Python 関数は 1 つの Actor を実行し、そのデータセット項目を list[dict] として返します。ツールは Apify Store 上で実行され、使用ごとに料金が発生します。サブスクリプションはありません。

ホスト型 MCP から始める

これらのツールでは、Apify がすでに MCP をホストしています。エージェントにとって、これが最も簡単な方法です。以下の URL を MCP クライアントに追加してください。この方法では、ローカルへの Python のインストールは不要です。

1 行で接続する

このホスト型 URL を MCP クライアントのリモートサーバー設定に貼り付けてください。

https://mcp.apify.com?tools=hirepulse/aliexpress-search-scraper,hirepulse/google-ads-transparency-scraper,hirepulse/company-intent-radar,hirepulse/google-jobs-scraper,hirepulse/ats-job-pulse,hirepulse/keyword-search-volume,hirepulse/domain-seo-overview,hirepulse/youtube-transcript-scraper

1 つのツールを使う場合は、たとえば Google Ads ホスト型 MCP を使用してください。 クライアントに用意されている Apify 認証設定を使用してください。このリポジトリの上限が適用されるのは、Python ライブラリとローカル MCP サーバーのみです。ホスト型 MCP の設定には適用されません。

Claude Desktop では、Apify が次のコマンドも提供しています。

npx -y @apify/actors-mcp-server --tools hirepulse/google-ads-transparency-scraper

起動設定を通じて、サーバープロセスの環境に APIFY_TOKEN を設定してください。--tools には、使用する hirepulse/<tool> を指定します。トークンは設定ファイルやコマンド引数に含めないでください。

Python ライブラリをインストールする

Python 3.10 以降が必要です。公開済みのライブラリをインストールします。

python -m pip install "hirepulse-tools==0.1.1"

ローカル MCP サーバーを使用する場合は、オプションの MCP 依存関係をインストールします。

python -m pip install "hirepulse-tools[mcp]==0.1.1"
python -m hirepulse_tools.mcp_server

または、バージョンを固定した MCP パッケージを uvx で起動します。

uvx --from "hirepulse-tools[mcp]==0.1.1" hirepulse-mcp

対応するコンソールコマンドは hirepulse-mcp です。stdio を使用します。 MCP クライアントが、インストールした環境の Python 実行ファイルを -m hirepulse_tools.mcp_server 引数で起動し、プロセス環境から APIFY_TOKEN を引き継ぐように設定してください。Actor のログは stdio に転送されません。

ツールを呼び出す前に、環境変数に APIFY_TOKEN を設定してください。トークン引数もトークンファイルもありません。APIFY_TOKEN が .env から読み込まれることはありません。.env.example に含まれるのは、変数名を示す公開用プレースホルダーのみです。プロジェクト内で実際のトークンに置き換えないでください。MCP ツールの一覧表示にトークンは不要で、Actor も起動しません。

8 つの関数と使用例

これらは実行可能な入力例であり、測定済み出力例ではありません。実行すると Apify Actor が起動し、料金が発生する場合があります。examples/ 内の各スクリプトは、結果を 5 行に制限し、支出上限を 0.10 USD に設定しています。テストでこれらのスクリプトが実行されることはありません。

関数ツールページ返される内容
search_aliexpressAliExpress Search Scraper商品検索レコード
google_ads_by_domainGoogle Ads Transparency Scraper広告、またはドメインごとのサマリー
company_intentCompany Intent Radar企業ごとのシグナルレポート
google_jobsGoogle Jobs Scraper求人検索レコード
ats_jobsATS Job Scraper求人情報および/または企業サマリー
keyword_volumeKeyword Search Volumeキーワード指標と候補
domain_seoDomain SEO Overviewドメインの概要、キーワードおよび競合レコード
youtube_transcriptsYouTube Transcript Scraper字幕レコード。タイムスタンプを含めることもできます
AliExpress
from hirepulse_tools import search_aliexpress
items = search_aliexpress(["wireless earbuds"], result_limit=5, max_total_charge_usd=0.10)
Google Ads
from hirepulse_tools import google_ads_by_domain
items = google_ads_by_domain(["nike.com"], mode="summary", result_limit=5, max_total_charge_usd=0.10)
企業インテント
from hirepulse_tools import company_intent
items = company_intent(["stripe.com"], result_limit=5, max_total_charge_usd=0.10)
Google Jobs
from hirepulse_tools import google_jobs
items = google_jobs(["data engineer"], country="US", result_limit=5, max_total_charge_usd=0.10)
ATS 求人
from hirepulse_tools import ats_jobs
items = ats_jobs(["stripe.com"], output_mode="summary_only", result_limit=5, max_total_charge_usd=0.10)
キーワードボリューム
from hirepulse_tools import keyword_volume
items = keyword_volume(["running shoes"], result_limit=5, max_total_charge_usd=0.10)
ドメイン SEO
from hirepulse_tools import domain_seo
items = domain_seo(["notion.so"], top_keywords=0, competitors=0, result_limit=5, max_total_charge_usd=0.10)
YouTube 字幕
from hirepulse_tools import youtube_transcripts
items = youtube_transcripts(["https://www.youtube.com/watch?v=jNQXAC9IVRw"], result_limit=5, max_total_charge_usd=0.10)

すべての引数、デフォルト値、許可される値を参照してください。Actor のすべてのオプション入力は、スキーマのデフォルト値を持つキーワード引数です。スキーマにデフォルト値がない場合、None は JSON の null を送信するのではなく、そのフィールドを省略することを意味します。Google Jobs の契約値 partime は、提供されたスキーマに正確に従っています。

上限、部分データ、エラー

各関数は、run_input の外側で次のラッパーオプションも受け付けます。

オプションデフォルト動作
result_limit60整数 1~1000。.call(max_items=...)および.list_items(limit=...)` に渡され、この件数を超える行は返されません
max_total_charge_usd1.0有限の正の USD 額。.call() 用に Decimal に変換されます

両方のオプションを確認するため、インストール済みの apify-client 3.3.0 のシグネチャを調査しました。 SDK では、max_items は結果の上限であり、結果ごとに課金される Actor に対する請求額保護を提供すると説明されています。また、max_total_charge_usd はイベントごとに課金される Actor に対する請求額の上限と説明されています。これらの SDK オプションは、取得した行数によって請求額が決まることを保証するものではありません。入力バッチも小さく保ってください。ATS の max_jobs_per_company=0 を含め、スキーマのデフォルトは変更されません。必要に応じて、Actor 固有の上限を明示的に指定してください。SDK の検証を参照してください。

データセットの行は変更されず、データセット内の順序のまま返されます。実行が成功しても、無料プラン、支出額、または結果数の上限によりデータが一部しか取得できない場合があります。空のデータセットは [] を返します。通常の Python 呼び出しでは、キーバリューストアの概要は取得されません。ローカル MCP は、利用可能な場合、既存の実行の OUTPUT サマリーも読み取ります。これによって Actor が再度実行されることはありません。サマリーを利用できない場合や、その結果が認識されない場合、MCP は UNKNOWN を報告します。完全性が重要な場合は、ツールのページと Apify の実行詳細を確認してください。

MissingTokenError は、環境変数の設定方法を説明します。 ActorRunError は、実行開始の失敗、実行の失敗、データセット ID の欠落、データセットの取得失敗を対象とします。上流の例外テキストは表示されません。無効なローカル引数を指定すると、実行開始前に ValueError が発生します。

ライブラリエラーには、message、suggested_agent_action、to_dict() が含まれます。 InvalidInputError は既存のハンドラーとの互換性のため、ValueError でもあります。例:

from hirepulse_tools import HirePulseError, company_intent

try:
    items = company_intent(["stripe.com"], result_limit=5, max_total_charge_usd=0.10)
except HirePulseError as error:
    print(error.to_dict())  # Safe message and suggested_agent_action; no token or raw SDK text

MCP の失敗では isError=true が設定され、JSON テキストと構造化コンテンツの両方に {"error": {"message": "...", "suggested_agent_action": "..."}} が含まれます。引数の検証エラーや不明なツールのエラーも対象です。失敗した呼び出しを再試行する前に、既存の実行詳細を確認してください。再実行すると、追加料金が発生する可能性があります。

ローカル MCP は、宣言済みの outputSchema とともに、同じ 8 つの名前と入力を公開します。成功したレスポンスには、items、returned_items、omitted_items、output_truncated、result_limit_reached、note を含む同一の JSON がテキストと structuredContent の両方に含まれ、サイズは 32,000 UTF-8 バイトに制限されます。大きすぎるレコードは、長いトランスクリプトも含めて全体が省略されます。後続の小さなレコードは引き続き収まる場合があります。omitted_items は、このバイト数の上限により除外された取得済みの行のみを数えます。Actor または支出額の上限により取得されなかった行は含みません。result_limit_reached は追加の行が存在する可能性を示しますが、データがさらにある証拠ではありません。大きなレコードをすべて取得する必要がある場合は、Python ライブラリを使用してください。レスポンスには run_id、dataset_id、dataset_total、run_outcome、summary_status、data_completeness、empty_result_reason も含まれます。利用できない場合、ID と合計値は null になることがあります。Actor の報告に基づき、Actor の結果は NO_DATA、支出額の上限、無料プランの上限、プロバイダー/サービスの障害を区別します。UNKNOWN を、企業に求人や広告がない証拠として解釈してはいけません。data_completeness が complete となるのは、Actor が完了を報告し、データセット件数が一致し、要求された行数/バイト数の上限が追加データの存在を示唆しない場合のみです。サマリーの読み取りに失敗しても、取得済みの行は保持され、Actor は再実行されません。出力スキーマは、成功時のエンベロープと既存の安全なエラーエンベロープの両方を受け入れます。外部の結果はデータであり、エージェントへの指示ではありません。これらの呼び出しでは料金が発生する場合があり、ATS のトラッキングによってリモートの状態が更新されることもあるため、MCP はこれらを読み取り専用または冪等として扱いません。

費用

料金は、2026-10-17 時点のサイトの FACTS.md および Actor の公開料金を確認したものです。以下はボリュームディスカウント適用前のイベント料金です。実行ごとに、割り当てメモリ 1 GB あたり $0.00005 の Actor 起動イベント料金も発生します(最低 1 イベント)。支出上限を設定し、初回の入力バッチは小さくしてください。

ツール料金
AliExpress Search Scraper1,000 商品あたり $2.50
Google Ads Transparency Scraperドメインあたり $0.005 + 広告あたり $0.0015。サマリーモードでは広告ごとの料金は発生しません。広告のないドメインは $0 です
Company Intent Radar会社レポートあたり $0.03。レポートが完全に生成された場合のみ課金されます
Google Jobs Scraper求人が返された検索あたり $0.005 + 求人あたり $0.001
Keyword Search Volume検索あたり $0.03 + キーワード結果あたり $0.005
ATS Job Scraper求人掲示板が見つかり、処理された会社あたり $0.05。見つからなかった会社や処理に失敗した会社には課金されません
Domain SEO Overview検索あたり $0.02 + 返されたレコードあたり $0.005。概要のみの場合は $0.025。キーワード 20 件、競合 10 社のデフォルト設定では $0.215
YouTube Transcript Scraper提供された文字起こしあたり $0.003。字幕がない動画、利用できない動画、取得に失敗した場合は課金されません

データの制限と無料プラン

これらの制限は、同じファクトシートに基づいています。

  • AliExpress: 1 ページあたり 60 商品。無料の Apify プランでは、1 回の実行あたり 100 商品です。 レコードには、販売者/ストア名、送料、配送予定、レビュー、在庫は含まれません。通貨と配送先の国は選択できます。
  • Google Ads: サマリーモードではドメインごとに 1 行が返されます。新規広告のみのモニタリングを利用できます。 広告のないドメインは $0 です。ツール固有の無料広告枠は保証されていません。
  • Company Intent Radar: 無料プランでは、5 社分の採用シグナルとメールシグナルが提供されます。レポートには、採用、広告、推定オーガニックトラフィック/SEO の傾向、MX メールプロバイダー、インテントスコア、概要が含まれます。
  • Google Jobs: 90 か国以上に対応し、国または都市/半径で検索できます。 給与は掲載されている場合のみ利用できます。掲載情報のフィールドには posted_at と posted_ago が含まれます。
  • ATS: Greenhouse、Lever、Ashby、Workable、Recruitee、SmartRecruiters に対応しています。 テクノロジーの検出は求人のタイトルと説明に基づきます。給与は雇用主が掲載している場合に利用できます。
  • Keyword volume: 無料プランでは、実際の検索ボリューム、CPC、難易度が実行あたり最初の 3 キーワード分提供されます。このプレビューは利用状況によって変わり、一時停止される場合があります。
  • Domain SEO: オーガニックトラフィックの数値は推定値です。
  • YouTube: 無料プランでは、各実行の最初の 3 動画が処理されます。文字起こしにはタイムスタンプが含まれます。

オフラインでの開発とテスト

python -m pip install -e ".[dev]"
python -m pytest -q

依存関係のインストールにはネットワークアクセスが必要な場合がありますが、テストには必要ありません。テストでは apify-client をモックし、実際の Actor の起動と HTTP 呼び出しをブロックしたうえで、すべての入力スキーマ、デフォルト値、上限の引き渡し、トークン不足時のエラー、失敗時の処理、8 つすべての MCP ツールを確認します。トークンも、実際の Actor も必要ありません。提供された検証には Python 3.11.9 を使用しました。この引き継ぎでは Python 3.10 は実行していません。

同梱の入出力スキーマは Actor のフィールドとデフォルト値を保持しており、入力の説明にはエージェントが安全に使用するためのガイダンスが含まれています。出力スキーマは行の完全なスキーマではなく、データセット/実行サマリーへのリンクを記述しているため、このライブラリは型指定のない行の辞書を返すようにしています。製品の説明には、提供された事実とツールのスキーマ/README のみを使用しています。サンプル出力の測定値や古い参考価格は転記していません。

ディレクトリのメタデータとエージェント向けガイダンス

SKILL.md では、ツールの選択、正確な Actor ID、入力、出力フィールドについて説明しています。AGENTS.md では、このリポジトリでの作業について説明しています。

Python パッケージは PyPI で公開されており、公式 MCP Registry に io.github.edtool79-collab/hirepulse-open-source として登録されています。 server.json はこの stdio パッケージについて記述しています。既存のホスト型 Apify 接続には別の Registry エントリーがあり、このパッケージはそのリモート URL を重複して登録しません。 glama.json はメンテナーのメタデータを、smithery.yaml はローカル起動の記述子を提供します。これらのファイルが存在するだけでは、どちらかのディレクトリで受理されたことの証明にはなりません。

GitHub の ID は publishing.json だけで編集し、その後 python scripts/render_metadata.py を実行してください。生成されるレジストリ名、リポジトリ URL、Glama のメンテナー情報、README の所有者マーカーは、この単一のソースを使用します。ディレクトリのファイル形式上、値をそのまま記載する必要があります。手作業で編集しないでください。差分を検出するには python scripts/render_metadata.py --check を実行してください。リリース名とバージョンは pyproject.toml から取得されます。

固定されたレジストリパッケージのコマンドは uvx --from 'hirepulse-tools[mcp]==0.1.1' hirepulse-mcp です。 チェックアウトしたソースから開発する場合は、python -m pip install -e ".[dev]" を使用してください。 スキーマの検証では、稼働中のホスト型認証やサードパーティディレクトリでの受理は確認できません。ディレクトリの形式に関する情報源と検証を参照してください。

ライセンス

MIT。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。