关于 HirePulse tools
HirePulse tools 是一个 Python 库,并提供可选的 stdio MCP 服务端,用于运行八种 Apify Actor,涵盖商品、广告、公司信号、职位、关键词、SEO 和 YouTube 字幕。它还包含独立网关及 LangChain、CrewAI 适配器。
主要功能
- 01八种 Apify Actor 函数
- 02商品、广告、职位和 SEO 数据
- 03可选的本地 stdio MCP 服务端
- 04Apify 托管 MCP 配置
- 05网关及 LangChain/CrewAI 适配器
适用场景
- 01搜索商品列表和职位空缺
- 02查看公司意向信号和广告
- 03获取关键词指标及 SEO 数据
- 04收集 YouTube 字幕记录
MCP 相关
本地 stdio MCP 服务端以输入和输出 schema 暴露相同的八种 Apify 函数。也可使用 Apify 托管 MCP;独立网关提供另一组工具,并非 Apify MCP 服务端的一部分。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
8收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| sort | enum | 否 | 结果排序方式。best_match | orders | price_low | price_high |
| queries | array | 是 | 字符串数组。在 Console UI 中:每行一个。要搜索的内容,例如 "yoga mat"。每次运行最多 20 个。 |
| ship_to | string | 否 | 两个字母的国家/地区代码。价格和供货情况以该国家/地区为准。 |
| currency | enum | 否 | 价格所用的货币。USD | EUR | GBP | CAD | AUD | BRL | MXN | PLN | ILS | JPY | KRW | INR | TRY | CHF | SEK |
| max_price | any | 否 | 仅包含价格不高于此值的商品(可选)。 |
| min_price | any | 否 | 仅包含价格不低于此值的商品(可选)。 |
| result_limit | integer | 否 | 1–1000。默认值为 60。请求的运行 max_items 和获取的数据集行数上限。 |
| max_total_charge_usd | number | 否 | 传递给 Apify .call() 的有限正数 USD 支出上限;默认值为 1.0。 |
| max_results_per_query | integer | 否 | 最多 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 提供八种工具,与下方的 Apify 工具相互独立。无需账户或 Apify 令牌。所有工具共享同一限制:每个 IP 每个 UTC 日可成功调用五次。未查到结果的查询不收费。价格从 $0.005 USDC(Base)起;批量查询和热门买家有各自的报价与扫描限制。
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 会引发 PaymentRequired,其中包含 body 和编码后的 payment_required 挑战。
其他 HTTP 错误会引发 GatewayError;请求不会重试。
可运行的 x402 示例 展示了可选的付款设置。我是 HirePulse 的维护者。
这是一个 Python 库,以及一个可选的 stdio MCP 服务,可用于 Apify 上的八种 HirePulse 工具。每个 Python 函数都会运行一个 Actor,并将其数据集条目作为 list[dict] 返回。工具在 Apify Store 上运行,按使用量付费,无需订阅。
从托管 MCP 开始
Apify 已为这些工具托管 MCP。这是对 Agent 来说最简单的方式:将以下 URL 添加到 MCP 客户端即可。此选项无需在本地安装 Python。
一行连接
将此托管 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
如果只需要一种工具,例如,可使用 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
也可以使用 uvx 启动固定版本的 MCP 包:
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。不提供令牌参数或令牌文件;不会从 .env 加载 APIFY_TOKEN。.env.example 仅包含一个用于说明变量名称的公开占位值;请勿在项目中将其替换为真实令牌。列出 MCP 工具无需令牌,也不会启动 Actor。
八个函数和示例
这些是可执行的输入示例,并非测量所得的输出示例。运行这些示例
会启动 Apify Actors,可能产生费用。examples/ 中的每个脚本都使用
5 行结果上限和 0.10 美元的支出上限。测试绝不会运行这些脚本。
| 函数 | 工具页面 | 返回内容 |
|---|---|---|
search_aliexpress | AliExpress 搜索抓取器 | 产品搜索记录 |
google_ads_by_domain | Google Ads 透明度抓取器 | 广告,或每个域名一份摘要 |
company_intent | 公司意向雷达 | 每家公司一份信号报告 |
google_jobs | Google Jobs 抓取器 | 职位搜索记录 |
ats_jobs | ATS 职位抓取器 | 职位和/或公司摘要 |
keyword_volume | 关键词搜索量 | 关键词指标和创意 |
domain_seo | 域名 SEO 概览 | 域名概览、关键词和竞争对手记录 |
youtube_transcripts | YouTube 字幕抓取器 | 字幕记录,可选包含时间戳 |
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_limit | 60 | 整数,范围为 1–1000;作为 .call(max_items=...) 和 .list_items(limit=...) 的参数传入;最多返回这么多行 |
max_total_charge_usd | 1.0 | 有限的正数美元金额,转换为 Decimal 后传入 .call() |
已检查已安装的 apify-client 3.3.0 签名,以确认这两个选项。
SDK 将 max_items 描述为结果上限,并为按结果计费的 Actor 提供费用保护;
将 max_total_charge_usd 描述为费用上限,适用于按事件计费的 Actor。这些 SDK 选项
并不保证费用取决于获取的行数。也要控制每批输入的大小。Schema 默认值
保持不变,包括 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。
每个成功响应都会在文本和 structuredContent 中包含相同的 JSON,其中含有 items、returned_items、omitted_items、output_truncated、
result_limit_reached 和 note,总大小限制为 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 报告时,其结果会区分 NO_DATA、支出上限、免费计划上限
以及提供方/服务故障。
绝不能将 UNKNOWN 解读为证明某家公司没有职位或广告。只有在 Actor 报告已完成、
数据集计数一致,且请求的行数/字节上限未显示可能还有更多数据时,
data_completeness 才会是 complete。摘要读取失败时,会保留已获取的行,不会重新运行 Actor。
输出 Schema 同时接受成功响应封装和现有的安全错误封装。
外部结果是数据,不是 Agent 指令。这些调用可能产生费用,ATS 跟踪也可能更新远程
状态,因此 MCP 不会将它们标记为只读或幂等。
费用
价格根据网站的 FACTS.md 和 Actors 的公开定价,于 2026-10-17 核实。这些是批量折扣前的事件价格。每次运行还会产生一项 Actor 启动事件费用:按分配的内存每 GB 收取 $0.00005(至少计 1 项事件)。请设置支出上限,并保持初始输入批次较小。
| 工具 | 价格 |
|---|---|
| AliExpress Search Scraper | 每 1,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:**每页 60 件商品。Apify 免费计划:每次运行 100 件商品。 记录不包含卖家/店铺名称、运费、预计送达时间、评论或库存。可选择货币和配送目的地国家/地区。
- **Google Ads:**摘要模式为每个域名提供一行记录;支持仅监控新广告。没有广告的域名费用为 $0;不保证提供该工具专属的免费广告额度。
- **Company Intent Radar:**免费计划为 5 家公司提供招聘和电子邮件信号。报告包含招聘、广告、预估自然流量/SEO 趋势、MX 电子邮件服务商、意向评分和摘要。
- **Google Jobs:**支持 90 多个国家/地区,以及按国家/地区或城市/半径搜索。仅在显示薪资时提供薪资信息。职位发布字段包括
posted_at和posted_ago。 - **ATS:**支持 Greenhouse、Lever、Ashby、Workable、Recruitee 和 SmartRecruiters。技术检测基于职位名称和描述;仅在雇主发布薪资时提供薪资信息。
- **Keyword volume:**免费计划为每次运行的前 3 个关键词提供真实搜索量、CPC 和难度。此预览取决于可用性,并可能暂停。
- **Domain SEO:**自然流量数据为估算值。
- **YouTube:**免费计划处理每次运行的前 3 个视频;转录稿支持时间戳。
离线开发和测试
python -m pip install -e ".[dev]"
python -m pytest -q
安装依赖项可能需要网络访问;运行测试则不需要。测试会模拟 apify-client,拦截实际的 Actor 启动和 HTTP 调用,并检查所有输入架构、默认值、上限传递、令牌缺失错误、故障处理以及全部八个 MCP 工具。无需令牌或实际运行 Actor。提供的验证使用 Python 3.11.9;本次交接尚未使用 Python 3.10 运行测试。
随附的输入/输出架构保留了 Actor 字段和默认值;输入描述包含安全使用 Agent 的指导。输出架构描述的是数据集/运行摘要链接,而非完整的行架构,因此本库有意返回不带类型的行字典。 产品描述仅使用提供的事实及工具架构/README;未采用示例输出中的测量数据和较早的参考价格。
目录元数据和 Agent 指引
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 提供本地启动描述符;仅有这些文件并不能证明已被任一目录收录。
只在 publishing.json 中编辑 GitHub 身份信息,然后运行
python scripts/render_metadata.py。生成的注册名称、代码库 URL、
Glama 维护者信息和 README 所有权标记都使用这一单一数据源。目录文件中按格式要求保留的字面副本不得手动编辑。运行 python scripts/render_metadata.py --check 检查是否存在偏差。发布名称和版本来自 pyproject.toml。
固定版本的 Registry 软件包命令为
uvx --from 'hirepulse-tools[mcp]==0.1.1' hirepulse-mcp。
从检出的代码库进行开发时,请使用 python -m pip install -e ".[dev]"。
架构验证不会检查托管服务的实时身份验证,也不会验证第三方目录是否收录。请参阅目录格式来源和验证。
许可证
MIT.
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。