关于 pagesdata
pagesdata 是连接 HasData Yellow Pages 服务的本地桥接程序,可搜索商家并获取目录详情。它通过 MCP 服务和命令行以 JSON 提供只读数据。
主要功能
- 01按关键词和地点搜索商家
- 02对搜索结果排序和分页
- 03通过 URL 获取完整商家详情
- 04查看联系方式、营业时间、评分和照片
- 05通过命令行或 MCP 调用工具
适用场景
- 01按服务类型和地区查找本地商家
- 02比较商家评分和评论数量
- 03查看商家的营业时间和联系信息
- 04检查商家发布的服务说明和照片
MCP 相关
向 MCP 客户端提供两种只读 Yellow Pages 工具,并将调用转发至 HasData 托管的 MCP 服务。也支持通过命令行调用。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
2收录的工具列表 · 更新于 2 天前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| url | string | 是 | 地点的 YellowPages URL。 |
详细介绍
pagesdata
pagesdata 是一个小型本地桥接程序,连接托管的 HasData Yellow Pages MCP 服务,并以 JSON 格式返回 Yellow Pages 商家数据。它可以搜索指定地点中符合关键词的商家,也可以通过 商家页面的 URL 获取完整列表信息:商家名称、街道地址、城市、 地区和邮编、坐标、电话、网站、营业时间、付款方式、类别、评分、 评价数量、照片和服务说明;对于商家自行发布这些信息的 yellowpages.com 页面,还会返回电子邮件地址和经营年限。
这个桥接程序不维护自己的目录。它会在本地返回工具列表,内容与 从实时端点捕获的数据完全一致,并将每次工具调用转发至上游, 原样返回响应。捕获到的功能仅包含两个只读抓取工具,用于获取 商家自行发布的列表信息;其中没有写入、消息传递或付款工具。
工具
hasdata_yellowpages_search_getSearchResults— 执行 Yellow Pages 商家搜索。必填:keyword和location。选填:sort(default/distance/averageRating/name, 后几种选项适用于 yellowpages.com)、domain(www.yellowpages.com或www.yellowpages.ca),以及用于分页的page。 返回每家商户的名称、列表 URL、电话、地址、 类别、评分、评价数量和经营年限。hasdata_yellowpages_place_getPlaceDetails— 获取单个商家列表的完整信息。必填:url( YellowPages 列表 URL)。返回名称、街道地址、城市、地区、 邮政编码、坐标、电话、网站、营业时间、付款方式、 类别、评分、评价数量、照片和服务说明;对于 yellowpages.com 上的列表,还会返回电子邮件地址和 经营年限。上游会省略列表未发布的字段。
配置
HASDATA_YELLOWPAGES_MCP_URL(选填)——覆盖 上游端点。默认值为https://mcp.hasdata.com/mcp?apis=yellowpages。(此 覆盖钩子是本次重建中自行标注的还原内容。)HASDATA_API_KEY(选填)——设置后,每个 上游请求都会携带x-api-key: <key>标头,其中使用调用方自己的 HasData API 密钥。未设置时, 不会发送密钥标头。(标头名称和环境变量名称由原始版本的 注册记录确定;从此环境变量转发密钥是自行标注的还原内容, 原始功能表面是在不带密钥的情况下捕获的。)
转发机制
首次调用工具时,客户端会在上游打开一个可流式传输的
HTTP 会话:先发送 JSON-RPC initialize 请求
(protocolVersion 2025-03-26,clientInfo 名称为
pagesdata),然后发送 notifications/initialized
通知,接着发送携带调用方参数且未经更改的 tools/call 请求。
上游通过 initialize 响应返回 Mcp-Session-Id 标头时,
该值会随会话的每个后续请求一同发送;该会话会在进程整个生命周期内
复用。响应可能是普通 JSON,也可能是服务器发送的事件;
两种格式都会读取。
成功的上游结果会原样传递,包括上游设置的任何 isError 标记。
失败情况——JSON-RPC 错误、非 2xx 状态、无法读取响应,或
无法完成的请求——会以 isError 结果返回,文本以
pagesdata error: 开头(此错误呈现方式是本次重建中自行标注的还原内容)。
CLI
每个工具也可作为子命令使用,接受一个 JSON 参数字符串:
npx @reneturcios/pagesdata hasdata_yellowpages_search_getSearchResults '{"keyword":"plumber","location":"Austin, Texas"}'
npx @reneturcios/pagesdata hasdata_yellowpages_place_getPlaceDetails '{"url":"https://www.yellowpages.com/austin-tx/example"}'
npx @reneturcios/pagesdata --version
退出代码:成功时为 0,结果为 isError
时为 1,用法错误时为 2。
MCP 服务
npx -y @reneturcios/pagesdata mcp
MCP 客户端配置:
{
"mcpServers": {
"pagesdata": {
"command": "npx",
"args": ["-y", "@reneturcios/pagesdata", "mcp"]
}
}
}
Docker
docker run -i ghcr.io/cloudcorprecords/pagesdata
docker run --rm ghcr.io/cloudcorprecords/pagesdata --version
容器的默认命令为 mcp,因此第一种形式是 stdio MCP 服务;其他参数则会正常传递给
CLI。
开发
npm install
npm run build
npm test
npm run dev
测试套件完全使用桩接的 JSON-RPC 上游运行,不会发起实时网络调用。
许可证
MIT — 参见 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。