About Compass Daas
Compass DaaS MCP is a read-only server for AI agents that need restaurant search and dietary fit information. It provides search, restaurant enrichment, and fit decisions through the Compass REST API, with coverage across the 50 US states and Washington, DC.
Key features
- 01Search restaurants in natural language
- 02Match and enrich restaurant details
- 03Assess restaurant fit for dietary profiles
- 04Return vegan dish and menu information
- 05Support US-wide restaurant coverage
Use cases
- 01Find restaurants for a dish and location
- 02Check dietary fit for a restaurant
- 03Resolve a restaurant from its name and address
MCP support
The MCP server exposes three read-only tools: `compass_search`, `compass_enrich_restaurant`, and `compass_decide_fit`. It calls the Compass REST API using an API key; it is not an allergen or safety service.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
3Saved tool list · updated 2w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| include_evidence | boolean | No | Whether to include evidence snippets when available |
| limit | integer | No | Maximum number of restaurants to return |
| location | object | No | Optional coordinate radius filter for location-aware search |
| location.lat | number | Yes | Latitude for radius filtering |
| location.lng | number | Yes | Longitude for radius filtering |
| location.radius_m | integer | No | Search radius in meters; defaults to 5000 when omitted |
| mode | enum | No | Response detail mode; rich includes fuller evidence and reasoningfast | rich |
| query | string | Yes | Natural language query, e.g. 'strict vegan ramen in Brooklyn under $20' |
| user_profile | object | No | Optional dietary profile for per-result fit guidance |
| user_profile.allergens | array | No | Allergens or ingredients the user wants to avoid; handled conservatively as user preferences |
| user_profile.diet | enum | No | Preference input. Safety-sensitive and religious-diet values are conservative signals, not public certification/free-from restaurant facts.strict_vegan | vegetarian | pescatarian | gluten_free | halal | kosher | low_fodmap | nut_free | dairy_free | egg_free | shellfish_free |
| user_profile.dietary_rules | array | No | Additional short user dietary rules or avoidances |
| user_profile.exclude_cross_contamination | boolean | No | When true, treat unknown or shared-prep cross-contamination evidence conservatively |
Details
From the project READMECompass DaaS MCP
MCP server for Compass DaaS. It exposes three read-only restaurant tools (search, enrich, decide fit) over the Model Context Protocol and calls the Compass REST API with your API key. Coverage is the 50 US states and Washington, DC.
Compass is not an allergen or safety service.
This package replaces
@compass-food/mcp, which is no longer updated. Change@compass-food/mcpto@compassfoodtech/mcpin your MCP client config.
Quick Start
npx -y @compassfoodtech/mcp
Set COMPASS_API_KEY before starting the server:
export COMPASS_API_KEY="<paste the key from signup>"
For staging or local testing, set:
export COMPASS_BASE_URL=https://daas-api-veganmapai-1a8b7.a.run.app
Install
Claude Desktop
Edit ~/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
Add to Cursor MCP settings (~/.cursor/mcp.json globally, or .cursor/mcp.json in a workspace):
{
"mcpServers": {
"compass": {
"command": "npx",
"args": ["-y", "@compassfoodtech/mcp"],
"env": {
"COMPASS_API_KEY": "<paste the key from signup>"
}
}
}
}
Codex CLI
Edit ~/.codex/config.toml:
[mcp_servers.compass]
command = "npx"
args = ["-y", "@compassfoodtech/mcp"]
[mcp_servers.compass.env]
COMPASS_API_KEY = "<paste the key from signup>"
Get an API key
Sign up — a working sandbox key is saved immediately, with 250 credits for 72 hours. Confirming email raises the shared free allowance to 1,000 credits per month.
Tools
compass_search
Wraps POST /v1/search.
The mode tool argument is sent to the REST API as the X-Compass-Mode header.
Pass a dish in dish and the destination as place or location, not both. Each result carries vegan_dining (up to five relevant vegan dishes and menu_collected_at). A dish query with no restaurant that has the dish returns result_status: "no_match" and, when one exists within 50 km, nearest_match. Set include_cuisine_matches to also list same-cuisine restaurants without the dish, marked 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
Wraps POST /v1/enrich/restaurant.
Use compass_id or google_place_id for an exact lookup (one of them, not both), name plus address, or name plus place. matched is true only when identity_status is resolved; otherwise match_candidates lists possible restaurants.
{
"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
Wraps POST /v1/decision/restaurant-fit.
The mode tool argument is sent to the REST API as the X-Compass-Mode header.
Send exactly one of compass_id or google_place_id. vegan_options is an alias of strict_vegan; set fully_vegan_only to accept only fully vegan restaurants. vegetarian is judged from vegan evidence; other accepted diets return unknown with DIET_NOT_SUPPORTED.
exclude_cross_contamination defaults to false. Send true when unknown shared-prep evidence should return unknown.
When a google_place_id maps to no restaurant or to several, the response has resolution and coverage instead of a decision.
{
"compass_id": "rest_xyz789",
"user_profile": {
"diet": "strict_vegan"
},
"mode": "rich"
}
API Key Resolution
The server checks:
COMPASS_API_KEY~/.compass/config.json
Config file:
{
"api_key": "<paste the key from signup>",
"base_url": "https://api.compassfoodtechnologies.com"
}
Privacy
This package sends tool calls only to the configured Compass API base URL. It does not send secondary usage data.
Links
- Site: https://compassfoodtechnologies.com
- Signup: https://compassfoodtechnologies.com/signup?src=mcp
- Support: [email protected]
- License: MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.