mcpField
F
Foursquare

Foursquare

远程服务
pipeworx.io地图与出行03 天前更新

关于 Foursquare

Foursquare 是面向地点信息查询的 MCP 服务,封装了 Foursquare 2025 Places API,适用于查找兴趣点及其地址、类别和联系方式。它支持文本和附近地点搜索,并按需处理高级字段的请求状态。

主要功能

  1. 01按关键词搜索地点
  2. 02按坐标搜索附近地点
  3. 03按类别筛选结果
  4. 04获取地点详情
  5. 05标注评分字段是否提供

适用场景

  1. 01查找指定区域内的咖啡店
  2. 02按类别探索附近兴趣点
  3. 03获取地点地址和联系方式

MCP 相关

该 MCP 服务向客户端提供 `search_places`、`get_place` 和 `nearby_places` 工具,可通过 Pipeworx 网关或本地 stdio 使用。高级字段仅在获准请求时提供;结果会标明评分字段是否包含。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://gateway.pipeworx.io/foursquare/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

@pipeworx/foursquare

Foursquare Places API(2025 places-api.foursquare.com)MCP——无需密钥即可搜索 POI,支持类别、地址、联系方式和按评分排序的结果。

这是 Pipeworx 的一部分——一个将 AI Agent 连接到 1879+ 个实时数据源的 MCP 网关。这是一个独立的非官方集成,与上游提供商无关,未经其认可,也非其发布。

工具

  • search_places(query?, near?, latitude?, longitude?, radius_m?, categories?, sort?, limit?)
  • get_place(fsq_id)
  • nearby_places(latitude, longitude, radius_m?, categories?, limit?)

身份验证

Foursquare 的免费额度为每月 10,000 次 Pro 调用。

评分属于 Premium 字段(承诺提供评分前请先阅读)

Foursquare 的 2025 API 将响应字段分为 Pro(默认返回: 名称、类别、地址、纬度/经度、距离、电话、网站、社交信息)和 Premium(rating、price、popularity、hours、description、提示、 照片)。只有在 fields 中指定 Premium 字段时才会返回这些字段;任何 指定了这些字段的调用都会按 Premium 费率计费——每 1,000 次调用收费 18.75 美元,不设免费额度 (foursquare.com/pricing,已于 2026-09-19 核实)。

在批准将这项支出用于公开流量之前(fleet #2271),此组件 仅向内部调用方请求 Premium 字段(网关会注入 _internalCaller)。每个响应都会包含 rating_included、rating_reason (included / not_requested / refused_by_vendor),并且在评分缺失时包含 rating_note——因此,空评分表示未请求或被供应商拒绝,绝不表示没有评分。 无论如何,Foursquare 都会遵循 sort:"RATING" 排序,因此即使不返回评分数值, 结果顺序仍按评分排列。要为所有人启用评分,请在 src/index.ts 中切换 PREMIUM_FIELDS_PUBLIC。

**在平台账户启用 Premium 计费之前,你会看到 refused_by_vendor 状态。**测量结果(2026-09-19):在未计费的平台密钥上指定 Premium 字段,会导致 Foursquare 对每次调用都返回 HTTP 429。因此,如果供应商拒绝 Premium 请求(429/402/403),系统会改为仅使用 Pro 字段重新请求一次并标记状态,而不是让调用失败或假装该字段未被请求。启用计费后,首次请求就会成功,不再重试。

数据源

https://places-api.foursquare.com/places — 请求头为 Authorization: Bearer <api_key> 和 X-Places-Api-Version: 2025-06-17。

快速开始

添加到你的 MCP 客户端(Claude Desktop、Cursor、Windsurf 等):

{
  "mcpServers": {
    "foursquare": {
      "url": "https://gateway.pipeworx.io/foursquare/mcp"
    }
  }
}
此端点实际提供的内容

https://gateway.pipeworx.io/foursquare/mcp 上的 tools/list 会返回上表中的工具,以及 Pipeworx 共享元工具——ask_pipeworx、 discover_tools、search_within、remember/recall 和网关全局工具集中的其他工具。因此,你看到的工具数量会多于此表所列:目前,单个组件端点除了该组件自身的工具外,还会列出大约 30 个共享工具。连接的 initialize 响应会说明其确切范围,并且是对应当天情况的权威依据。

这是有意设计的,并非意外的多路复用。这些元工具能让限定范围的连接回答此组件未涵盖的问题——通过 ask_pipeworx 在整个目录中路由——无需添加第二个 MCP 服务。目前无法挂载不包含这些工具的组件端点;如果额外的 schema 消耗的上下文超过了路由功能带来的价值,那么请直接连接一次完整网关,而不是连接多个组件端点。

或者连接完整的 Pipeworx 网关,直接列出所有组件的工具,而不只是此组件的工具:

{
  "mcpServers": {
    "pipeworx": {
      "url": "https://gateway.pipeworx.io/mcp"
    }
  }
}

这两个 URL 都连接到同一个网关和相同的 1879+ 个数据源。唯一的区别是哪个组件的工具会被直接列出;从任一端点都可以通过 ask_pipeworx 访问所有工具。

没有 MCP 客户端?通过 HTTP 调用

curl -X POST https://gateway.pipeworx.io/v1/tools/search_places \
  -H 'Content-Type: application/json' \
  -d '{"query":"coffee","near":"San Francisco, CA","sort":"RATING","limit":10}'

首次调用无需账号。检查任意工具:GET https://gateway.pipeworx.io/v1/tools/search_places。查找工具:POST https://gateway.pipeworx.io/v1/tools/search_packs,并传入 {"query":"..."}。

独立运行(无需网关账号)

此软件包也可作为本地 stdio MCP 服务运行,无需 Pipeworx 账号,也无需通过网关往返:

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

或者直接运行以确认其能够启动:

npx -y @pipeworx/mcp-foursquare

它通过 stdin/stdout 使用 MCP 协议,并响应 initialize/tools/list/tools/call,但仅支持此软件包的工具——不包含上述网关连接所添加的任何共享元工具。相同的源代码,相同的工具,不会通过 ask_pipeworx 路由。

使用 ask_pipeworx

你也可以用简单的英语提问,而不是直接调用工具——这既适用于上面的软件包端点,也适用于完整网关:

ask_pipeworx({ question: "your question about Foursquare data" })

网关会选择合适的工具并自动填写参数。

更多信息

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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