Skip to main content
Glama
HZZY2019

cook-mcp

by HZZY2019
README.md
# 🍳 HowToCook-MCP Server 🥘 -- 炫一周好饭,拒绝拼好饭

[English](./README_EN.md) | 简体中文

<div align="center">

本项目 CDN 加速及安全防护由 Tencent EdgeOne 赞助

[亚洲最佳 CDN、边缘和安全解决方案 - Tencent EdgeOne](https://edgeone.ai/zh?from=github)

<img src="./public/edgeone.png"/>

</div>

> 让 AI 助手变身私人大厨,为你的一日三餐出谋划策!

基于[Anduin2017/HowToCook](https://github.com/Anduin2017/HowToCook)打造的 MCP(Model Context Protocol)服务器,让 AI 助手能够为你推荐菜谱、规划膳食,解决"今天吃什么"的世纪难题!

数据来源:[Anduin2017/HowToCook](https://github.com/Anduin2017/HowToCook) ⭐ 没有 star 的同学快去点个星星吧!

🎉 **想直接使用当前 MCP?立即体验** [https://howtocookmcp.weilei.site/](https://howtocookmcp.weilei.site/)

🎉 **同时,我们也提供了 DXT(Desktop Extensions)供大家体验,一键安装到 Claude Desktop**

如下:请确保你已经安装了最新版的 Claude Desktop, 当前 MCP 的 DXT 文件已上传代码库,可以自行下载或者 Fork 本仓库自行构建

![DXT](./public/dxt.png)
![DXT](./public/dxt2.png)
![DXT](./public/dxt3.png)

本地开发如何打包成 DXT?

1.运行 `npm install -g @anthropic-ai/dxt`

2.在包含本地 MCP 服务器的文件夹中,运行 `dxt init`。也就是您 MCP 的根目录,此命令将引导您创建`manifest.json`

3.运行`dxt pack`创建 dxt 文件
直接用 npx 调用(无需重开终端):此命令将引导您创建`manifest.json`
npx -y @anthropic-ai/mcpb init
后续打包:
npx -y @anthropic-ai/mcpb pack   ---成功
试 npx 版本最快;若成功,再调整 PATH 以便直接用 mcpb 命令。

现在,任何支持 DXT 的应用都可以运行您的本地 MCP 服务器。例如,使用适用于 macOS 和 Windows 的 Claude 打开该文件即可显示安装对话框

具体参阅:[anthropics/dxt](https://github.com/anthropics/dxt)

## 📸 效果预览

![功能预览1](https://mp-bc8d1f0a-3356-4a4e-8592-f73a3371baa2.cdn.bspapp.com/npm/1.png)
![功能预览2](https://mp-bc8d1f0a-3356-4a4e-8592-f73a3371baa2.cdn.bspapp.com/npm/2.png)

## 🔌 支持的 MCP 客户端

本服务器适用于所有支持 MCP 协议的 AI 助手和客户端,包括但不限于:

- 🤖 Claude 桌面应用
- 📝 Cursor
- 💼 其他支持 MCP 的客户端

## ✨ 美味功能

该 MCP 服务器提供以下美食工具:

1. **📚 查询全部菜谱** - 获取所有可用菜谱数据,做菜百科全书 -- 慎用这个--上下文太大
2. **🔍 根据分类查询菜谱** - 按照分类筛选菜谱,想吃水产?早餐?荤菜?主食?一键搞定!
3. **📖 查询指定菜谱** - 根据菜谱名称查询特定菜谱的完整详情,包括食材、步骤等
4. **🧩 智能推荐膳食** - 根据你的忌口、过敏原和用餐人数,为你规划整整一周的美味佳肴
5. **🎲 不知道吃什么** - 选择困难症福音!根据人数直接推荐今日菜单,再也不用纠结了

## 🚀 快速上手

### 📋 先决条件

- Node.js 16.0.0+ 🟢
- npm 或 yarn 📦

### 💻 安装步骤

1. 克隆美食仓库

```bash
git clone https://github.com/HZZY2019/cook-mcp.git
cd cook-mcp
```

2. 安装依赖(就像准备食材一样简单!)

```bash
npm install
```

3. 编译代码(烹饪过程...)

```bash
npm run build
```

### 🎯 命令行参数

服务器支持以下命令行参数:

- `--transport <stdio|http|sse>` - 选择传输方式(默认为 stdio)
- `--port <number>` - 使用 http 或 sse 传输时的监听端口(默认为 3000)

示例:使用 http 传输并监听 8080 端口

```bash
node build/index.js --transport http --port 8080
```

## 🍽️ 开始使用

### 🔥 启动服务器

```bash
npm start
```

### 🔧 配置 MCP 客户端

#### 推荐使用 Cursor 快速体验(两种方式)

1. 使用 npm 包:请先运行 `npm i -g cook-mcp` ,否则会出现 `Failed to create client`

然后在 Cursor 设置中添加 MCP 服务器配置:

```json
{
	"mcpServers": {
		"cook-mcp": {
			"command": "npx",
			"args": ["-y", "cook-mcp"]
		}
	}
}
```

2. 如果是克隆仓库本地运行,请使用如下配置

```json
{
	"mcpServers": {
		"cook-mcp": {
			"command": "node",
			"args": ["youpath\\cook-mcp\\build\\index.js"]
		}
	}
}
```

#### 其他 MCP 客户端

对于其他支持 MCP 协议的客户端,请参考各自的文档进行配置,通常需要指定:

- 服务器名称: `howtocook-mcp`
- 命令: `npx -y howtocook-mcp`

3. 重启客户端,让美食魔法生效 ✨

## 🧙‍♂️ 菜单魔法使用指南

以下是在各种 MCP 客户端中使用的示例提示语:

### 1. 📚 查询全部菜谱

无需参数,直接召唤美食全书!

```
请使用howtocook的MCP服务查询所有菜谱
```

### 2. 🔍 根据分类查询菜谱

```
请使用howtocook的MCP服务查询水产类的菜谱
```

参数:

- `category`: 菜谱分类(水产、早餐、荤菜、主食等)

### 3. 🧩 智能推荐一周菜谱

```
请使用howtocook的MCP服务为3人推荐一周菜谱,我们家不吃香菜,对虾过敏
```

参数:

- `allergies`: 过敏原列表,如 ["大蒜", "虾"]
- `avoidItems`: 忌口食材,如 ["葱", "姜"]
- `peopleCount`: 用餐人数 (1-10)

### 4. 🎲 今天吃什么?

```
请使用howtocook的MCP服务为4人晚餐推荐菜单
```

参数:

- `peopleCount`: 用餐人数 (1-10)

## 📝 小贴士

- 该包已发布至 npm,可直接通过`npm install -g howtocook-mcp`全局安装
- 本服务兼容所有支持 MCP 协议的 AI 助手和应用
- 首次使用时,AI 可能需要一点时间来熟悉如何使用这些工具(就像烧热锅一样)

## 🤝 贡献

欢迎 Fork 和 Pull Request,让我们一起完善这个美食助手!

## 📄 许可

MIT License - 随意使用,就像分享美食配方一样慷慨!

---

> 🍴 美食即将开始,胃口准备好了吗?

TDQS

A3.6/5.0

Scored across 5 tools

Disambiguation4/5

Most tools have clear distinct purposes: listing, filtering by category, detailed lookup, and two recommendation tools. The two recommendation tools (recommendMeals and whatToEat) overlap in intent, but their descriptions clarify that one is a simple combo picker and the other is a comprehensive planner with dietary constraints, so an agent can usually tell them apart.

Naming Consistency3/5

All tools share a consistent 'mcp_cook_' prefix and use camelCase, but the action verbs are not uniform: 'getAll', 'getRecipes', 'recommend', 'whatToEat', and 'getRecipeById' mix verb-noun patterns and one non-verb phrase. Minor inconsistencies like 'Recipes' plural vs 'Recipe' singular further reduce naming consistency.

Tool Count5/5

With 5 tools, the server is well-scoped for a recipe lookup and meal recommendation service. It is neither too sparse nor bloated, and each tool contributes a distinct capability for the domain.

Completeness4/5

The tool surface covers listing all recipes, filtering by category, retrieving full details, and two levels of meal recommendations, which addresses the core workflow of finding and choosing recipes. A minor gap is the lack of a dedicated tool to list available categories, though they are enumerated in the getRecipesByCategory description.

Maintenance

ActivityInactive
ResponsivenessNo issues