Google Places API 服务器

该服务器集成Google Places API,提供地点搜索、详情检索和附近地点查找功能。

  • by colakang
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 colakang/google-places-mcp

使用说明

谷歌放置MCP服务器

此MCP服务器与Google Places API集成,允许搜索、检索详细信息和查找附近的位置。

设置

环境变量

需要以下环境变量:

  • GOOGLE_MAPS_API_KEY:您的Google Maps API密钥已启用Places API访问
  • TRANSPORT_TYPE:使用的运输方式(stdio 或 sse)
  • PORT:(可选)SSE传输的端口号(默认值:3000)

创建一个 .env 根目录中的文件包含以下变量:

GOOGLE_MAPS_API_KEY=your_api_key_here
PORT=3000

发展

  1. 安装依赖项:
npm install
  1. 启动开发服务器:
npm run dev

运输选项

服务器支持两种传输方式:

  1. SSE(服务器发送事件):使用HTTP与服务器发送的事件进行实时通信

使用SSE传输时,服务器会公开两个端点:

  • GET /sse:用于接收服务器消息的SSE端点
  • POST /messages:用于向服务器发送消息的端点

工具

  • [x] 放置文本搜索

    • 使用Google places API搜索地点的文本
    • 输入:
      • textQuery (string,必填):用于搜索地点的文本查询
      • includedType (字符串,可选):将结果限制在与指定类型匹配的位置
      • includePureServiceAreaBusinesses (布尔值,可选):包括没有实际位置的企业
      • languageCode (字符串,可选):结果的语言代码(例如“en”)
      • locationBias (对象,可选):将结果偏向此位置
      • locationRestriction (对象,可选):将结果限制在此位置
      • pageSize (数字,可选):每页结果数(1-20)
      • pageToken (字符串,可选):下一页结果的标记
      • priceLevels (数组,可选):按价格级别筛选
      • rankPreference (字符串,可选):按“相关性”或“距离”进行排名
      • regionCode (字符串,可选):两个字符的国家/地区代码
      • strictTypeFiltering (boolean,可选):仅返回完全匹配的类型
      • evOptions (对象,可选):电动汽车充电站过滤器
      • minRating (数字,可选):最小额定值过滤器(0-5)
      • openNow (布尔值,可选):筛选当前打开的位置
      • fields (数组,可选):响应中要包含的特定字段
    • 返回匹配的地点及其详细信息
  • [ ] 附近地点搜索 (即将推出)

    • 查找特定位置附近的地点
    • 输入:
      • location (对象,必填):经纬度坐标
      • radius (数字,可选):搜索半径(单位:米)
      • keyword (字符串,可选):用于筛选结果的关键字
      • type (字符串,可选):放置类型以过滤结果
      • rankBy (字符串,可选):按“突出度”或“距离”排名
      • openNow (boolean,可选):筛选当前打开的地点
      • fields (数组,可选):要包含在响应中的特定字段
    • 返回附近的详细地点
  • [ ] 地点详细信息 (即将推出)

    • 获取特定地点的详细信息
    • 输入:
      • placeId (字符串,必填):谷歌地点ID
      • fields (数组,可选):要包含在响应中的特定字段
      • languageCode (字符串,可选):结果的语言代码
    • 返回有关该地点的全面详细信息
  • [ ] 地点照片 (即将推出)

    • 检索某个地点的照片
    • 输入:
      • photoReference (字符串,必填):来自Place Details响应的引用
      • maxWidth (数字,可选):返回图像的最大宽度
      • maxHeight (数字,可选):返回图像的最大高度
    • 返回照片数据或URL