关于 NYCfoodie
NYCfoodie 为 AI Agent 提供结构化的编辑精选餐厅推荐,将精选指南和评论整理为可查询的数据集。目前 MVP 聚焦纽约,但城市设计为可配置项。
主要功能
- 01搜索餐厅推荐
- 02获取餐厅详情
- 03比较餐厅
- 04查找指南和相似餐厅
- 05查看指南共识与高评分餐厅
- 06提交反馈
适用场景
- 01按需求寻找餐厅
- 02比较用餐选择
- 03浏览编辑精选餐饮指南
- 04查看共识推荐或高评分餐厅
MCP 相关
NYCfoodie 通过 MCP 提供餐厅搜索、详情、比较、指南、相似度、评分和反馈工具。客户端可连接其托管的 Streamable HTTP 端点,也可在本地运行 stdio 服务。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
服务地址
https://nycfoodie-production.up.railway.app/mcp一键复制安装命令
Claude CodeTerminal
claude mcp add --transport http tireniajilore-nycfoodie https://nycfoodie-production.up.railway.app/mcpCursor.cursor/mcp.json
{"mcpServers":{"tireniajilore-nycfoodie":{"type":"http","url":"https://nycfoodie-production.up.railway.app/mcp"}}}在 Cursor 中打开VS Code.vscode/mcp.json
{"servers":{"tireniajilore-nycfoodie":{"type":"http","url":"https://nycfoodie-production.up.railway.app/mcp"}}}在 VS Code 中打开Claude Desktopclaude_desktop_config.json
{"mcpServers":{"tireniajilore-nycfoodie":{"type":"http","url":"https://nycfoodie-production.up.railway.app/mcp"}}}Windsurf~/.codeium/windsurf/mcp_config.json
{"mcpServers":{"tireniajilore-nycfoodie":{"serverUrl":"https://nycfoodie-production.up.railway.app/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
8| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| lat | number | 否 | 用于邻近搜索的纬度。必须与 lng 一起提供;省略时 radius_km 默认为 5 km。拒绝 NYC 覆盖范围以外的位置,并返回错误。 |
| lng | number | 否 | 用于邻近搜索的经度。必须与 lat 一起提供;省略时 radius_km 默认为 5 km。 |
| city | string | 是 | 城市 slug,始终必填。目前为 'new-york',覆盖五个行政区及紧邻的大都会区(距 Manhattan 30 km 以内)。 |
| sort | enum | 否 | 按评分(默认)或指南收录次数排序rating | guides |
| limit | integer | 否 | 结果数量上限(默认值为 10) |
| query | string | 否 | 自由文本,例如 'date-night Italian' |
| cuisine | string | 否 | 例如 'Italian'、'ramen' |
| occasion | string | 否 | 场合标签。允许值:'Date Nights'、'Happy Hours'、'Pre-Theater'、'See & Be Seen'、'Serious Takeout Operation'、'Unique Dining Experiences'、'Wasting Your Time & Money'。连字符、空格和下划线可灵活使用('date-night' 可用);无歧义的前缀会解析为完整值。未知或有歧义的值会被拒绝并返回错误。 |
| radius_km | number | 否 | 搜索半径,单位为公里(提供 lat/lng 且未指定时默认为 5)。需要 lat 和 lng。 |
| min_rating | number | 否 | 最低 Infatuation 评分 |
| price_tier | integer | 否 | 1($)至 4($$$$) |
| neighborhood | string | 否 | 例如 'West Village',或 'Brooklyn' 这样的行政区 |
| include_closed | boolean | 否 | 包含已知已关闭的场所(默认 false) |
详细介绍
NYCfoodie
餐厅口味数据层:通过 MCP 向 AI Agent 提供结构化、编辑精选的餐厅推荐。这不是又一个评论抓取工具,而是将精选指南和评论规范化为统一的架构,并可通过工具查询。
MVP 城市:纽约。城市在所有地方都是一个参数;没有任何针对纽约的硬编码内容。
使用方法
托管端点(Streamable HTTP):https://nycfoodie-production.up.railway.app/mcp
- Cursor — 一键安装
- Claude Code —
claude mcp add --transport http nycfoodie https://nycfoodie-production.up.railway.app/mcp - Windsurf / Cline / Roo Code / Zed / VS Code — 添加到你的 MCP 配置中:
{
"mcpServers": {
"nycfoodie": {
"url": "https://nycfoodie-production.up.railway.app/mcp"
}
}
}
- Claude(应用) — 设置 → 连接器 → 添加自定义连接器 → 粘贴 URL。
- 任何 MCP 客户端 — 将上方 URL 添加为远程服务(Streamable HTTP)。无需身份验证,也无需安装。
工具
search_restaurants · get_restaurant · compare_restaurants · find_guides · find_similar · guide_consensus · top_rated · submit_feedback
目录结构
db/— SQLite 存储(better-sqlite3),包含编号的 SQL 迁移文件,使用兼容 Postgres 的 DDL。按照约定,迁移运行器与方言无关,因此之后可以用 Postgres 适配器替换 better-sqlite3,而无需改动迁移文件。crawler/— 将数据规范化为 db 架构的来源适配器(从 The Infatuation 开始)。端点/字段映射:docs/infatuation-data-surface.md(第 2 步)。mcp/— stdio MCP 服务(@modelcontextprotocol/sdk),提供搜索、详情、比较和指南工具。
快速开始
npm install
npm run typecheck
npm run build
node db/dist/migrate.js ./nycfoodie.db # creates/opens the SQLite db, applies migrations
node mcp/dist/index.js # starts the MCP server on stdio
路线图
- 搭建脚手架(已完成)——仓库、软件包、迁移运行器、MCP 工具存根。
- 梳理 The Infatuation 的数据面——Next.js 页面 + GraphQL 端点 →
docs/infatuation-data-surface.md。 - 数据库架构提案——在编写任何爬虫代码之前提交审批。
- 爬虫——仅在架构获批后开始。
约定
- 文档和面向用户的文本使用英式英语。
- 迁移文件:编号格式为
NNN_name.sql,按顺序各应用一次;Postgres 兼容规则见db/migrations/README.md。 - 切勿提交
*.db文件或凭据。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。