地点搜索服务

Google Maps Places API的MCP服务器,用于搜索地点和获取照片。适用于会议协调、本地推荐和地址验证等场景。

  • by domdomegg
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 domdomegg/google-maps-places-mcp

使用说明

谷歌地图放置mcp

用于谷歌地图地点API的MCP服务器-搜索地点并获取照片。

用例

会议协调:有人发邮件说:“我们在办公室附近的Nando's见面吧——什么时间最适合你?”→ 你的人工智能助手会查找位置,检查开放时间,并将其与地址一起添加到你的日历中。

当地建议:询问“在国王十字车站附近找一家有WiFi的安静咖啡馆,进行2小时的工作”→ 获取带有评级、时间和照片的地点,以帮助您做出决定。

地址验证:在发送邮件或预订送货之前,确认或自动填写部分地址。

(这些只是示例-任何需要地点搜索或业务信息的工作流都可以使用此功能。)

设置

1.创建Google OAuth凭据

  1. 首选 谷歌云控制台
  2. 创建新项目(或使用现有项目)
  3. 启用 地点API(新增)
  4. 首选 API和服务 → OAuth同意屏幕,设置同意屏幕
  5. 首选 API和服务 → 凭证 → 创建凭据 → OAuth 客户端ID
  6. 选择 网络应用程序
  7. 添加 http://localhost:3000/callback 到 授权重定向URI
  8. 记下您的客户端ID和客户端密码

2.运行服务器

GOOGLE_CLIENT_ID='your-client-id' \
GOOGLE_CLIENT_SECRET='your-client-secret' \
MCP_TRANSPORT=http \
npm start

服务器运行在 http://localhost:3000 默认情况下。更改为 PORT=3001.

3.添加到您的MCP客户端

服务器运行时,请按照上的说明进行操作 安装mcp,它为您的MCP客户端生成正确的配置(Claude Code、Claude Desktop、Cursor、Cline、VS Code等)。

建筑

此服务器充当 OAuth代理 谷歌:

graph LR
    A[MCP client] <--> B[google-maps-places-mcp] <--> C[Google OAuth/API]
  1. 服务器通过以下方式将自己宣传为OAuth授权服务器 /.well-known/oauth-authorization-server
  2. /register 返回Google OAuth客户端凭据
  3. /authorize 重定向到Google,将客户端的回调URL编码为状态
  4. /callback 从Google接收代码并转发给客户端的回调
  5. /token 向Google代理令牌请求,注入客户端凭据
  6. /mcp 处理MCP请求,使用承载令牌调用Places API

服务器不持有令牌或状态,它只是将OAuth代理给谷歌。

工具

工具 说明
places_text_search 通过文本查询搜索地点(例如,“我附近的咖啡店”)
places_photo_get 获取某个地点的照片URL

OAuth作用域

  • cloud-platform -访问Google Cloud API(Places API New必需)

贡献

GitHub上欢迎拉取请求!开始:

  1. 安装Git和Node.js
  2. 克隆仓库
  3. 安装依赖项 npm install
  4. 跑 npm run test 运行测试
  5. 建立 npm run build

发布

版本遵循 语义版本规范.

要发布:

  1. 使用 npm version <major | minor | patch> 升级版本
  2. 跑 git push --follow-tags 使用标签推送
  3. 等待GitHub Actions发布到NPM注册表。