mcpField
P
pagesdata

pagesdata

本地服务
github.com/CloudCorpRecords商业与营销02 天前更新

关于 pagesdata

pagesdata 是连接 HasData Yellow Pages 服务的本地桥接程序,可搜索商家并获取目录详情。它通过 MCP 服务和命令行以 JSON 提供只读数据。

主要功能

  1. 01按关键词和地点搜索商家
  2. 02对搜索结果排序和分页
  3. 03通过 URL 获取完整商家详情
  4. 04查看联系方式、营业时间、评分和照片
  5. 05通过命令行或 MCP 调用工具

适用场景

  1. 01按服务类型和地区查找本地商家
  2. 02比较商家评分和评论数量
  3. 03查看商家的营业时间和联系信息
  4. 04检查商家发布的服务说明和照片

MCP 相关

向 MCP 客户端提供两种只读 Yellow Pages 工具,并将调用转发至 HasData 托管的 MCP 服务。也支持通过命令行调用。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cloudcorprecords-pagesdata": {
"command": "npx",
"args": [
"-y",
"@reneturcios/pagesdata"
]
}
}
}
启动命令npx -y @reneturcios/pagesdata

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@reneturcios/pagesdata0.1.0
ocighcr.io/cloudcorprecords/pagesdata:0.1.0

工具

2

收录的工具列表 · 更新于 2 天前

参数类型必填说明
urlstring是地点的 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。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。