mcpField
Y
yelpdata

yelpdata

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

关于 yelpdata

yelpdata 是连接 HasData 托管 Yelp MCP 服务的本地桥接程序,适用于需要商家列表、详情和公开评论的客户端。它转发三个只读查询工具,并原样返回上游结果。

主要功能

  1. 01按关键词和地点搜索商家
  2. 02获取完整商家详情
  3. 03读取和筛选公开评论
  4. 04将工具调用转发至 HasData

适用场景

  1. 01查找指定区域的商家
  2. 02获取商家的联系方式和营业时间
  3. 03查看评分与公开评论

MCP 相关

它通过 MCP 服务提供三个只读工具,并将调用转发给 HasData 托管的 Yelp MCP 服务。客户端可通过 stdio 或 CLI 连接。

配置

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

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

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

安装包
npm@reneturcios/yelpdata0.1.0
ocighcr.io/cloudcorprecords/yelpdata:0.1.0

工具

3

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

参数类型必填说明
domainenum否要使用的 Yelp 域名。默认为 `www.yelp.com`。www.yelp.com | www.yelp.co.uk | www.yelp.ca | www.yelp.com.au | ms.yelp.my | www.yelp.cz | www.yelp.dk | www.yelp.de | www.yelp.at | de.yelp.ch | en.yelp.be | en.yelp.com.hk | en.yelp.my | www.yelp.co.nz | en.yelp.com.ph | www.yelp.ie | www.yelp.com.sg | en.yelp.ch | www.yelp.com.ar | www.yelp.cl | www.yelp.es | www.yelp.com.mx | fil.yelp.com.ph | fr.yelp.be | fr.yelp.ca | www.yelp.fr | fr.yelp.ch | www.yelp.it | it.yelp.ch | nl.yelp.be | www.yelp.nl | www.yelp.no | www.yelp.pl | www.yelp.com.br | www.yelp.pt | fi.yelp.fi | sv.yelp.fi | www.yelp.com.tr | www.yelp.co.jp | zh.yelp.com.hk | www.yelp.com.tw
placeIdstring是地点的 Yelp ID 或 Yelp 别名。例如,'jPIZ3FR5LNcwPuUHi2Fe4g' 或 'mcdonalds-new-york-386'。

详细介绍

yelpdata

yelpdata 是一个小型本地桥接程序,可连接托管的 HasData Yelp MCP 服务,并将 Yelp 商家数据以 JSON 格式返回。它可以按关键词和地点搜索商家, 根据 Yelp ID 或别名获取某家商家的完整信息, 并读取该商家公开的评论动态: 名称、地址、商家公布的电话和网站、价格范围、 类别、总体评分、评论数量、营业时间,以及评论文本和 已公布的评论者显示名称。

该桥接程序不持有任何商家数据。 它会在本地返回工具列表,内容与从在线端点捕获的数据完全一致, 并将每次工具调用转发至上游,原样返回收到的内容。捕获到的 工具集包含三种只读获取操作,读取商家公布的数据和公开评论:不包含 预订、点餐、消息或支付工具, 也不包含商家或评论者未在 Yelp 上公布的任何个人联系信息。

工具

  • hasdata_yelp_search_getSearchResults — 搜索 Yelp 商家。必填:keyword 和 location。 可选:l(地图边界半径字符串,格式为 g:lon1,lat1,lon2,lat2)、domain(要查询的国家或地区 Yelp 站点)以及 start(分页时的结果偏移量)。返回按 排名排列的商家列表,其中包含 Yelp 别名/ID、名称、类别、评分、评论 数量、价格档位和缩略图;可将返回的 别名传给地点工具以获取完整记录。
  • hasdata_yelp_place_getPlaceDetails — 获取某家 商家的完整信息。必填:placeId(Yelp ID 或 Yelp 别名)。可选:domain。返回名称、 地址、电话、网站、价格范围、类别、 总体评分、评论数量、营业时间、设施、 照片和精选评论。
  • hasdata_yelp_reviews_getPlaceReviews — 读取某家 商家的评论动态。必填:placeId。 可选:domain、query(在评论中进行全文搜索)、 sortBy(relevanceDesc、dateDesc、dateAsc、ratingDesc、ratingAsc、elitesDesc)、 rating(星级筛选,允许使用逗号分隔的多个值)、 languageCode、notRecommended(返回 Yelp 当前不推荐的评论),以及 通过 start/num 或先前响应中的不透明 nextPageToken 进行分页。每条评论 均会返回已公布的作者个人资料、完整文本、 星级评分、时间戳、照片和视频、读者反馈, 以及商家在有回复时发布的回复,另外还会返回 商家按评分和语言划分的评论总数。

配置

  • HASDATA_YELP_MCP_URL(可选)— 覆盖 上游端点。默认为 https://mcp.hasdata.com/mcp?apis=yelp。(此 覆盖钩子是本次重建中自行标注的还原内容。)
  • HASDATA_API_KEY(可选)— 设置后,每个 上游请求都会携带 x-api-key: <key> 请求头,其中使用调用者自己的 HasData API 密钥。未设置时, 不会发送密钥请求头。(请求头名称和环境变量名称由原始项目的 注册记录确定;从此环境变量转发密钥属于标注过的还原内容,原始 工具集是在未提供密钥的情况下捕获的。)
转发机制

首次调用工具时,客户端会在上游打开一个可流式传输的 HTTP 会话:先发送 JSON-RPC initialize 请求(协议版本 2025-03-26,clientInfo 名称为 yelpdata),再发送 notifications/initialized 通知,最后发送携带调用者原样参数的 tools/call 请求。上游在响应 initialize 时若返回 Mcp-Session-Id 请求头, 该值会随会话中的每个后续请求发送;该会话会在整个进程生命周期内复用。 回复可能以纯 JSON 或服务器发送事件的形式到达;两种形式都会读取。

上游返回的成功结果会原样透传, 包括上游设置的任何 isError 标志。 失败情况——JSON-RPC 错误、非 2xx 状态码、无法读取响应 或无法完成的请求——会作为 isError 结果返回, 其文本以 yelpdata error: 开头(此错误呈现方式 是本次重建中自行标注的还原内容)。

命令行

每个工具也是一个子命令,接受一个 JSON 参数字符串:

npx @reneturcios/yelpdata hasdata_yelp_search_getSearchResults '{"keyword":"coffee","location":"Seattle, Washington"}'
npx @reneturcios/yelpdata hasdata_yelp_place_getPlaceDetails '{"placeId":"mcdonalds-new-york-386"}'
npx @reneturcios/yelpdata hasdata_yelp_reviews_getPlaceReviews '{"placeId":"-4ofMtrD7pSpZIX5pnDkig","sortBy":"dateDesc"}'
npx @reneturcios/yelpdata --version

退出代码:成功时为 0,返回 isError 结果时为 1,用法错误时为 2。

MCP 服务

npx -y @reneturcios/yelpdata mcp

MCP 客户端配置:

{
  "mcpServers": {
    "yelpdata": {
      "command": "npx",
      "args": ["-y", "@reneturcios/yelpdata", "mcp"]
    }
  }
}

Docker

docker run -i ghcr.io/cloudcorprecords/yelpdata
docker run --rm ghcr.io/cloudcorprecords/yelpdata --version

容器的默认命令是 mcp,因此第一种形式是 stdio MCP 服务;任何其他参数都会正常传递给命令行。

开发

npm install
npm run build
npm test
npm run dev

测试套件完全针对存根化的 JSON-RPC 上游运行,不会进行实时网络调用。

许可证

MIT — 参见 LICENSE。

评论

支持 Markdown

第一次接触 MCP?

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

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