MCP Recipe Server

MCP数据服务

提供方 ajayindfw

数据服务 stdio · 本地进程 无需鉴权 社区 / 第三方 Claude DesktopClaudeVS Code
查看接入方式

一个基于.NET 8的模型上下文协议(MCP)服务器实现,提供对TheMealDB API中食谱数据的访问,包含完整的烹饪工具、资源和提示功能。

一句话选型结论

按资料字段整理

MCP Recipe Server 属于数据服务类 MCP 服务器,stdio · 本地进程,无需鉴权,可直接接入 Claude Desktop、Claude、VS Code,有可直接执行的安装命令。接入前先确认权限范围;涉及写入、删除或付款的操作,建议先在测试环境验证。

分类数据服务 传输方式stdio · 本地进程 鉴权无需鉴权 部署方式本地部署
GitHub 星标 0 仓库热度,无公开仓库时显示未标注
工具数 7 暴露给模型的工具数量
资源 / 提示词 0 / 0 资源与提示词模板数量
维护方 社区 / 第三方 核验等级 仅资料核对

工具与能力

数据服务
数量来自来源目录的标注,具体工具清单以官方文档为准
工具数量7暴露给模型可调用的工具个数
资源数量0可读取的资源条目
提示词数量0内置提示词模板数量

能力标签

支持客户端

适用场景

食谱搜索C#本地部署餐饮规划烹饪工具API集成数据服务

安装与配置

stdio · 本地进程 无需鉴权
客户端在本机拉起子进程,数据不出本机
docker run -p 8080:8080 recipe-mcp-server

这条命令只是入口,具体启动参数请按官方文档补齐,不要直接照搬到别的服务器。

  1. 1
    准备运行环境

    stdio 服务在本地起进程,需要先装好 Docker,再按安装命令拉取依赖。

  2. 2
    安装服务

    复制上面的安装命令执行;命令里带占位符的位置,换成自己的密钥或路径。

  3. 3
    写入客户端配置

    在客户端的 MCP 配置里填好启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4
    验证是否可用

    连接成功后客户端会列出约 7 个工具,随便调一个只读工具确认能返回结果。

典型使用场景

3 类
按分类与标签整理的常见用法,具体以官方文档为准
数据库查询

用自然语言查库、取数,不用手写 SQL。

数据同步与清洗

把多来源数据拉到一处做整理。

报表取数

按口径快速拉出统计结果。

选择建议

选之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 资料标注 7 个工具,职责相对集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已适配 Claude Desktop、Claude、VS Code,换客户端不用重新研究配置。
  • 资料标注无需鉴权,装好就能连。

先想清楚的地方

  • stdio 方式要求本地装好运行时(如 Node.js),换机器要重新装一遍。
  • 版本更新与行为细节以官方仓库为准。

更适合

  • 需要在数据服务场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop、Claude 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地或自有环境跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
MCP 服务器工具数传输方式部署方式安装命令最后核验
MCP Recipe Server当前 7 stdio · 本地进程 本地部署 有 2026-05-17
Memory 9d25f64e 9 未标注 未标注 无 2026-05-17
Getzep MCP 9 stdio · 本地进程 本地部署 有 2026-05-17
anything-llm 未标注 stdio · 本地进程 本地部署 有 2026-04-11
Prisma MCP Server 未标注 stdio · 本地进程 本地部署 有 2026-05-17
Astr Bot 未标注 stdio · 本地进程 本地部署 有 2026-05-17

服务器档案

数据服务
字段来自项目仓库与公开索引,中文说明由本站标注
提供方ajayindfw上游标注的维护方 ajayindfw
分类数据服务本站按上游分类展示
连接方式stdio · 本地进程客户端在本机拉起子进程,数据不出本机
鉴权方式无需鉴权远程服务建议用最小权限凭据
维护方社区 / 第三方核验等级 仅资料核对
包名 / 运行时未标注 · Docker本地安装时用到的包标识与运行时
部署类型本地部署上游给出的部署形态
最近核验2026-05-17上游最后核验时间

详细介绍

7.5 KB
来自项目仓库与上游目录的原文,未做删改

配方MCP服务器 - .NET 8实现

一个基于.NET 8的全面模型上下文协议(MCP)服务器实现,提供对TheMealDB API食谱数据的访问。该服务器提供了一整套以烹饪为中心的工具、资源和提示,用于美食探索和餐食规划。

特点/特性

🔧 工具

  • 搜索食谱按菜品名称搜索食谱,并可自定义结果数量
  • 获取食谱详情通过ID检索特定食谱的详细信息
  • 创建饮食计划根据选定的食谱生成有条理的饮食计划
  • 按首字母搜索查找以特定字母开头的食谱
  • 获取随机食谱发现随机食谱以获取灵感
  • 测试文件系统验证文件系统操作和权限
  • 获取系统信息显示系统和环境信息

📚 资源

  • 食谱:{菜系}探索特定的美食收藏

💡 提示

  • 生成食谱搜索提示创建美食探索提示
  • 生成膳食规划提示生成全面的膳食计划指南
  • 生成烹饪课程提示设计结构化的烹饪课程
  • 生成食材探索提示创建以食材为中心的分析提示
  • 生成文化美食提示生成探索文化美食的提示

先决条件

  • .NET 8.0 SDK 或之后
  • 用于访问TheMealDB API的互联网连接

安装与设置

1. 克隆或下载```bash

If cloning from a repository

git clone
cd mcp-recipe-final

Or download and extract the source files


### 2. 恢复依赖项```bash
dotnet restore

3. 构建应用程序```bash

dotnet build


### 4. 配置(可选)

编辑 `appsettings.json` 自定义设置:```json
{
"Logging": {
"LogLevel": {
"Default": "Information"
}
},
"Server": {
"Host": "0.0.0.0",
"Port": 8000
},
"RecipeService": {
"ApiBaseUrl": "https://www.themealdb.com/api/json/v1/1",
"RequestTimeoutSeconds": 10
}
}

使用方法

命令行选项```bash

dotnet run -- [options]

Options:
--port Port to run the server on (default: 8000)
--host Host to bind the server to (default: 0.0.0.0)
--transport Transport method - stdio or http (default: stdio)
--help Show help information


### 运行服务器

#### 📡(天线/卫星天线/广播信号发射器) **STDIO 模式(本地 MCP 客户端)**```bash
dotnet run -- --transport stdio

VS Code 和本地 MCP 客户端的默认模式。```bash
dotnet run -- --transport http --port 8080 --host localhost


启用HTTP API以实现远程访问和网页客户端功能。

1. 将代码推送到GitHub
1. 将存储库连接到 渲染
1. 使用自动部署渲染 `render.yaml` 并且 `Dockerfile`
1. 访问方式: `https://your-app.onrender.com/mcp````bash
docker build -t recipe-mcp-server .
docker run -p 8080:8080 recipe-mcp-server

HTTP 端点(当使用 --transport http 时)

  • POST /mcp - 主MCP协议端点
  • GET /health - 健康检查
  • GET / - 服务器信息

示例用法

搜索食谱```bash

Search for Italian recipes

search_recipes("pasta", 5)

Get specific recipe details

get_recipe_details("52771")


#### 制定饮食计划```bash
create_meal_plan(["52771", "52772", "52773"], "Weekly Italian Menu")

探索资源```bash

View all available cuisines

recipes://cuisines

Explore Italian recipes

recipes://italian

Check meal plans

recipes://meal-plans


## 项目结构```
RecipeServer/
├── Models/
│   ├── Mcp/                    # MCP protocol models
│   │   └── McpModels.cs
│   └── Recipe/                 # Recipe data models
│       └── RecipeModels.cs
├── Services/
│   ├── Interfaces/
│   │   └── IServices.cs        # Service interface definitions
│   ├── McpServer.cs           # Core MCP message handling
│   ├── RecipeApiService.cs    # TheMealDB API integration
│   ├── ToolService.cs         # MCP tools implementation
│   ├── ResourceService.cs     # MCP resources implementation
│   └── PromptService.cs       # MCP prompts implementation
├── .vscode/                   # VS Code configuration
│   ├── launch.json           # Debug configurations
│   └── tasks.json            # Build tasks
├── Program.cs                 # Application entry point
├── appsettings.json          # Configuration file
├── RecipeServer.csproj       # Project file
├── build.sh                  # Build script
└── README.md                 # This documentation

数据存储

服务器自动创建一个 recipes/ 存储目录:

  • 食谱集锦按菜系/菜品类型组织
  • 饮食计划已保存的餐食计划数据
  • 搜索结果按字母缓存的搜索结果

目录结构示例:```
recipes/
├── italian/
│ └── recipes_info.json
├── pasta/
│ └── recipes_info.json
├── meal_plans/
│ ├── weekly_italian_menu.json
│ └── dinner_ideas.json
└── by_letter/
└── letter_a_search.json


## API集成

这台服务器与……集成 TheMealDB API:

- **按名称搜索**: `/search.php?s={dish_name}`
- **按首字母搜索**: `/search.php?f={letter}`
- **随机食谱**: `/random.php`
- **按ID查找食谱**: `/lookup.php?i={recipe_id}`

## 发展

### 添加新工具

1. 定义工具模式(或工具架构)于 `ToolService.GetToolsListAsync()`
1. 在(相应位置)实现工具逻辑 `ToolService.CallToolAsync()`
1. 添加任何所需的辅助方法

### 添加新资源

1. 在(某处)添加资源定义 `ResourceService.GetResourcesListAsync()`
1. 实现资源读取逻辑于 `ResourceService.ReadResourceAsync()`

### 添加新提示

1. 定义提示模式(或提示框架)在 `PromptService.GetPromptsListAsync()`
1. 在(系统/程序中)实现提示生成 `PromptService.GetPromptAsync()`

## 错误处理

该服务器包含全面的错误处理机制:

- **网络故障**优雅的API超时处理
- **文件系统错误**权限和访问错误管理
- **JSON解析**数据保护格式错误
- **MCP协议**符合标准的错误响应

## 记录日志

结构化日志记录是通过配置实现的 `appsettings.json`:

- **信息**一般操作日志
- **警告**非关键问题
- **错误**异常和故障日志

## 性能考量

- **Async/await(异步/等待)**所有的输入/输出操作都是异步的
- **HTTP客户端重用**共享的HttpClient实例
- **文件缓存**搜索结果已本地缓存
- **内存效率**尽可能采用流式JSON处理

## 兼容性

### .NET 版本

- **主要的,重要的**。.NET 8.0
- **兼容的**。.NET 6.0+(带有一些小修改)

### 操作系统

- **Windows**全面支持
- **macOS(发音为“Mac OS”)**全面支持
- **Linux(发音为“利尼斯”)**全力支持

### MCP 客户端

- 兼容任何MCP 2024-11-05协议客户端
- 已在Claude Desktop及其他MCP兼容应用程序上进行了测试

## 故障排除

### 常见问题

#### “权限被拒绝”错误```bash
# Ensure write permissions for recipes directory
chmod 755 recipes/

“网络超时”错误

  • 检查网络连接
  • 验证TheMealDB API的可用性
  • 调整超时设置 appsettings.json

“端口已被使用”```bash

Use a different port

dotnet run -- --port 8001
```

做出贡献

  1. 为仓库创建分支(或:克隆仓库)
  2. 创建一个特性分支
  3. 做出你的更改
  4. 如适用,请添加测试
  5. 提交一个拉取请求

许可证

此项目遵循MIT许可证授权——详情请参阅LICENSE文件。

致谢

  • TheMealDB 集成全面的食谱数据库,支持本地缓存
  • 模型上下文协议Anthropic的MCP规范
  • .NET 社区框架和生态系统支持

常见问题

8 问
答案由本站依据条目字段整理,不引用上游原文
MCP Recipe Server 怎么安装?

在客户端按下面的安装命令接入:docker run -p 8080:8080 recipe-mcp-server。装完在客户端配置里引用同一个包或端点。

MCP Recipe Server 怎么在 Claude Desktop、Claude、VS Code 里配置?

它的传输方式是stdio · 本地进程,在客户端的 MCP 配置里填好启动命令和参数,保存后完全退出客户端再打开,配置才会生效。

MCP Recipe Server 收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

MCP Recipe Server 需要 API Key 吗?

资料标注为无需认证,装好就能连;如果实际调用时报鉴权错误,按官方文档补上凭据。

MCP Recipe Server 支持哪些客户端?

资料标注支持 Claude Desktop、Claude、VS Code;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

MCP Recipe Server 能提供哪些能力?

资料显示约 7 个工具;能力标签包括 C#、Claude、数据分析。具体工具清单以官方文档为准。

MCP Recipe Server 需要什么运行环境?

运行时为 Docker;属于本地进程,需要在本机装好运行环境。

MCP Recipe Server 是本地还是远程?

它是本地进程(stdio),由客户端在本机拉起。传输方式为stdio · 本地进程。

热门专题

按标签挑服务器
全部专题 →

服务器信息以作者仓库与官方文档为准;分类、传输方式与鉴权方式的中文说明为中文整理,最近核验 2026-05-17。