mcpField
C
Compass Daas

Compass Daas

本地服务
github.com/compass-food地图与出行01 周前更新

关于 Compass Daas

Compass DaaS MCP 是面向需要餐厅搜索和饮食适配信息的 AI Agent 的只读服务。它通过 Compass REST API 提供搜索、餐厅信息补全和适配判断,覆盖美国 50 个州及华盛顿特区。

主要功能

  1. 01用自然语言搜索餐厅
  2. 02匹配并补全餐厅信息
  3. 03按饮食偏好判断餐厅适配度
  4. 04提供纯素菜品和菜单信息
  5. 05覆盖美国各州及华盛顿特区

适用场景

  1. 01按菜品和地点查找餐厅
  2. 02检查餐厅是否符合饮食偏好
  3. 03根据名称和地址匹配餐厅

MCP 相关

该 MCP 服务提供三个只读工具:`compass_search`、`compass_enrich_restaurant` 和 `compass_decide_fit`。它使用 API 密钥调用 Compass REST API;不提供过敏原或安全服务。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"compass": {
"command": "npx",
"args": [
"-y",
"@compass-food/mcp"
],
"env": {
"COMPASS_API_KEY": "<COMPASS_API_KEY>"
}
}
}
}
启动命令npx -y @compass-food/mcp
需要配置的环境变量
COMPASS_API_KEY密钥

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

安装包
npm@compass-food/mcp

工具

3

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

参数类型必填说明
include_evidenceboolean否是否在可用时包含依据摘要
limitinteger否返回的餐厅数量上限
locationobject否用于位置感知搜索的可选坐标半径筛选条件
location.latnumber是半径筛选的纬度
location.lngnumber是半径筛选的经度
location.radius_minteger否搜索半径,单位为米;未指定时默认为 5000
modeenum否响应详细程度模式;rich 会包含更完整的依据和推理fast | rich
querystring是自然语言查询,例如 'strict vegan ramen in Brooklyn under $20'
user_profileobject否可选的饮食资料,用于提供各结果的适配建议
user_profile.allergensarray否用户希望避免的过敏原或成分;将其谨慎地视为用户偏好
user_profile.dietenum否偏好输入。安全敏感及宗教饮食值是保守的信号,并非餐厅公开的认证或不含某成分的事实。strict_vegan | vegetarian | pescatarian | gluten_free | halal | kosher | low_fodmap | nut_free | dairy_free | egg_free | shellfish_free
user_profile.dietary_rulesarray否其他简短的用户饮食规则或忌避项
user_profile.exclude_cross_contaminationboolean否为 true 时,对未知或共用备餐区造成的交叉污染证据采取保守处理

详细介绍

Compass DaaS MCP

Smithery badge

适用于 Compass DaaS 的 MCP 服务。它通过 Model Context Protocol 提供三个只读餐厅工具(搜索、补充信息、判断是否符合条件),并使用你的 API 密钥调用 Compass REST API。覆盖美国 50 个州和华盛顿特区。

Compass 不是过敏原或安全服务。

此软件包取代了不再更新的 @compass-food/mcp。请在 MCP 客户端配置中将 @compass-food/mcp 改为 @compassfoodtech/mcp。

快速开始

npx -y @compassfoodtech/mcp

启动服务前,请设置 COMPASS_API_KEY:

export COMPASS_API_KEY="<paste the key from signup>"

对于暂存环境或本地测试,请设置:

export COMPASS_BASE_URL=https://daas-api-veganmapai-1a8b7.a.run.app

安装

Claude Desktop

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "compass": {
      "command": "npx",
      "args": ["-y", "@compassfoodtech/mcp"],
      "env": {
        "COMPASS_API_KEY": "<paste the key from signup>"
      }
    }
  }
}
Cursor

添加到 Cursor MCP 设置中(全局配置使用 ~/.cursor/mcp.json,工作区配置使用 .cursor/mcp.json):

{
  "mcpServers": {
    "compass": {
      "command": "npx",
      "args": ["-y", "@compassfoodtech/mcp"],
      "env": {
        "COMPASS_API_KEY": "<paste the key from signup>"
      }
    }
  }
}
Codex CLI

编辑 ~/.codex/config.toml:

[mcp_servers.compass]
command = "npx"
args = ["-y", "@compassfoodtech/mcp"]

[mcp_servers.compass.env]
COMPASS_API_KEY = "<paste the key from signup>"
获取 API 密钥

注册——系统会立即保存一个可用的沙盒密钥,提供 250 个额度,有效期为 72 小时。确认电子邮件后,共享免费额度将提升至每月 1,000 个额度。

工具

compass_search

封装 POST /v1/search。 mode 工具参数会作为 X-Compass-Mode 标头发送到 REST API。 在 dish 中传入菜品,在 place 或 location 中传入目的地,不要同时使用两者。每条结果都包含 vegan_dining(最多五道相关纯素菜品和 menu_collected_at)。如果菜品查询没有找到提供该菜品的餐厅,则返回 result_status: "no_match";若 50 km 范围内存在匹配项,还会返回 nearest_match。设置 include_cuisine_matches,还会列出提供相同菜系但不含该菜品的餐厅,并标记为 cuisine_only。

{
  "query": "ramen",
  "dish": "ramen",
  "place": { "country_code": "US", "region": "NY", "city": "Brooklyn" },
  "user_profile": { "diet": "strict_vegan" },
  "limit": 5
}
{
  "query": "vegan ramen in Brooklyn",
  "user_profile": {
    "diet": "strict_vegan",
    "exclude_cross_contamination": true
  },
  "location": {
    "lat": 40.6782,
    "lng": -73.9442,
    "radius_m": 5000
  },
  "limit": 10,
  "mode": "rich"
}
compass_enrich_restaurant

封装 POST /v1/enrich/restaurant。 精确查询时使用 compass_id 或 google_place_id(二选一,不能同时使用),也可以使用 name 加 address,或 name 加 place。仅当 identity_status 为 resolved 时,matched 才为 true;否则,match_candidates 会列出可能的餐厅。

{
  "name": "Buddha Bodai",
  "address": "5 Mott St, New York, NY"
}
{
  "name": "Blossom",
  "place": { "country_code": "US", "region": "NY", "city": "New York" },
  "dish": "seitan"
}
compass_decide_fit

封装 POST /v1/decision/restaurant-fit。 mode 工具参数会作为 X-Compass-Mode 标头发送到 REST API。 只发送 compass_id 或 google_place_id 中的一项。vegan_options 是 strict_vegan 的别名;设置 fully_vegan_only,仅接受完全纯素的餐厅。素食(vegetarian)判断依据是纯素相关证据;其他受理的饮食类型会返回 unknown 和 DIET_NOT_SUPPORTED。 exclude_cross_contamination 默认为 false。如果未知的共用备餐证据应导致返回 unknown,请将其设为 true。 当 google_place_id 未映射到餐厅或映射到多家餐厅时,响应会返回 resolution 和 coverage,而不是判断结果。

{
  "compass_id": "rest_xyz789",
  "user_profile": {
    "diet": "strict_vegan"
  },
  "mode": "rich"
}

API 密钥解析

服务会按以下顺序检查:

  1. COMPASS_API_KEY
  2. ~/.compass/config.json

配置文件:

{
  "api_key": "<paste the key from signup>",
  "base_url": "https://api.compassfoodtechnologies.com"
}

隐私

此软件包只会将工具调用发送到已配置的 Compass API 基础 URL。它不会发送次要使用数据。

链接

评论

支持 Markdown

第一次接触 MCP?

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

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