关于 FindSaunaPlunge — US cold plunge & sauna studios
FindSaunaPlunge 是用于查找美国各大城市冷水池、桑拿和冷热疗法场所的 MCP 服务。已发布的价格和温度附有来源链接与核验日期;缺失字段表示场所未公布信息,而非数值为零。
主要功能
- 01按城市和项目搜索场所
- 02按入场方式和已公布价格筛选
- 03获取带来源的场所记录
- 04查看城市覆盖范围和统计
- 05检查数据更新时间
适用场景
- 01查找某城市的冷水池场所
- 02比较已公布价格的场所
- 03核对场所温度的来源
- 04查看场所数据的核验时间
MCP 相关
MCP 服务提供 5 个工具,用于搜索场所、获取记录、查看城市覆盖和统计信息,以及检查数据更新时间。它使用无状态 Streamable HTTP,无需身份验证。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://findsaunaplunge.com/mcpclaude mcp add --transport http com-findsaunaplunge-findsaunaplunge https://findsaunaplunge.com/mcp{"mcpServers":{"com-findsaunaplunge-findsaunaplunge":{"type":"http","url":"https://findsaunaplunge.com/mcp"}}}在 Cursor 中打开{"servers":{"com-findsaunaplunge-findsaunaplunge":{"type":"http","url":"https://findsaunaplunge.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"com-findsaunaplunge-findsaunaplunge":{"type":"http","url":"https://findsaunaplunge.com/mcp"}}}{"mcpServers":{"com-findsaunaplunge-findsaunaplunge":{"serverUrl":"https://findsaunaplunge.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
5| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | number | 否 | 最多返回结果数,默认值为 10,上限为 25。 |
| query | string | 否 | 按场所名称进行子字符串匹配(不区分大小写)。 |
| access | enum | 否 | private_suite = 独立房间;communal = 共用区域;mixed 匹配任一请求。使用此筛选条件时,会排除未公布其使用模式的场所——未提供该信息不视为匹配。private_suite | communal | mixed |
| citySlug | string | 否 | 城市 slug,例如 "dallas-tx"。使用 list_cities 进行查询。 |
| modality | enum | 否 | 场所必须提供此项目。cold_plunge | traditional_sauna | infrared_sauna | steam_room | cryotherapy | red_light | pemf | compression | float |
| maxDropInUsd | number | 否 | 仅包含公布的单次体验价格不高于此金额的场所。不包含未公布价格的场所。 |
详细介绍
FindSaunaPlunge MCP 服务
适用于 findsaunaplunge.com 的 Model Context Protocol 服务:覆盖美国各大都市区的冷水浴、桑拿和冷热交替疗法场所。get_data_freshness 会报告当前场所数量以及记录上次核实的日期。所有公布的温度和价格均摘自场所自己的网页,并附有来源 URL、采集日期和原文引述。字段缺失表示场所未公布该信息,绝不表示数值为零。
- 端点:
https://findsaunaplunge.com/mcp— Streamable HTTP,无状态,无需身份验证,允许开放式 CORS。GET提供面向用户的文档;POST使用 JSON-RPC。 - 注册表:
com.findsaunaplunge/findsaunaplunge(已验证域名)。 - 数据: 与 CC BY 4.0 数据源
/api/v1/venues.json使用相同记录;每月存档于 github.com/findsaunaplunge/data,DOI:10.5281/zenodo.22132913。
工具
| 工具 | 参数 | 返回值 |
|---|---|---|
search_venues | query?、citySlug?、modality?、access?、maxDropInUsd?、limit? | 精简的场所记录;筛选条件按 AND 组合。maxDropInUsd 仅匹配已公布单次入场价格的场所。 |
get_venue | id | 完整的数据源记录,包括每条事实对应的 sources。 |
list_cities | — | 已覆盖的城市、场所数量及可用疗法类型。 |
get_city_stats | citySlug | 场所数量、已公布的价格和温度范围,以及可进行冷热交替疗法的场所。 |
get_data_freshness | — | 数据源的构建时间,以及最新和最早的 lastVerified 时间。 |
连接
# Claude Code
claude mcp add --transport http findsaunaplunge https://findsaunaplunge.com/mcp
# Any client, by hand
curl -s -X POST https://findsaunaplunge.com/mcp -H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_venues","arguments":{"citySlug":"austin-tx","modality":"cold_plunge","limit":3}}}'
自行运行
处理程序只需要公共数据源,因此可在任何 Node 24+ 环境中运行:
npm start # JSON-RPC over stdio, one message per line (= node src/serve.ts --stdio)
npm run http # Streamable HTTP on :8080 — POST /mcp (= node src/serve.ts)
docker build -t findsaunaplunge-mcp . && docker run -i findsaunaplunge-mcp # stdio
npm test # smoke test: stdio + HTTP against the live feed
两种模式都会读取 https://findsaunaplunge.com/api/v1/venues.json(可通过 FINDSAUNAPLUNGE_ORIGIN 覆盖),因此可自托管副本提供与网站完全相同的数据。
运行方式
src/mcp.ts 就是整个服务:一个 handleMcp(request, env) 函数,挂载在网站 Cloudflare Worker 内的 /mcp 路径上。它没有依赖项。工具结果来自网站构建生成的静态 /api/v1/venues.json 资源(通过 Worker 的 ASSETS 绑定获取,并按 isolate 缓存),因此服务与网站的数据始终一致,部署时也会自动刷新。server.json 是注册表清单。
本仓库是该服务的已发布源代码。网站本身不开源。
设计规则
- 无状态:没有会话,也不会由服务端发起 SSE。每个
POST请求均独立处理。 - 对于未知参数,会拒绝请求并提示有效参数,而不是悄悄忽略。
- 此处没有、也不会有任何付费推广内容。
许可证
MIT — 详见 LICENSE。服务提供的场所数据采用独立的 CC BY 4.0 许可。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。