mcpField
🍽
🍽️ MCP Restaurant Ordering API Server

🍽️ MCP Restaurant Ordering API Server

本地服务
github.com/sachnaror开发工具073 周前更新

关于 🍽️ MCP Restaurant Ordering API Server

MCP Restaurant Ordering API Server 是一个基于 Django REST Framework 的餐厅订单示例 API,适合测试 API 与 MCP 集成。它围绕虚构菜单提供订单创建、查询、更新及状态追踪等功能。

主要功能

  1. 01创建和管理订单
  2. 02查询订单详情与历史
  3. 03按时间范围筛选近期订单
  4. 04追踪成功或失败状态

适用场景

  1. 01测试餐厅订单 API 集成
  2. 02查看指定时间段内的订单
  3. 03模拟订单成功与失败流程

MCP 相关

项目将 RESTful API 描述为符合 MCP 模式的示例,但 README 未说明具体提供给 MCP 客户端的工具或连接方式。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

🍽️ MCP 餐厅点餐 API 服务

Python Django License Build

欢迎使用基于 Django + Django REST Framework 构建的 兼容 MCP 的餐厅 API。

模拟顾客从虚拟餐厅菜单点餐,并实时跟踪订单状态。 非常适合与任何 MCP 服务集成。


🧠 为什么称为 MCP 服务?

我们称之为 MCP 服务,因为它遵循 Model-Context-Protocol 模式:

  • 模型 → Order 模型定义数据结构(菜品、状态、时间)。
  • 上下文 → /recent/?hours=2 等近期查询可提供上下文信息(例如,最近 2 小时的数据)。
  • 协议 → RESTful API 定义了结构化的通信协议。

可以把它想象成美食广场里的 AI 助手:

🍔 模型 = 菜单上有什么

⏰ 上下文 = 现在什么最受欢迎

📡 协议 = 它如何与你通信(API)

这使它非常适合接入更大型的 AI/自动化流水线,在这些场景中,结构化数据、时间上下文和简洁的 API 都至关重要。

📁 项目目录

├── mcp_server/
│   ├── requirements.txt
│   ├── db.sqlite3
│   ├── README.md
│   ├── .env
│   ├── manage.py
│   ├── orders/
│   │   ├── models.py
│   │   ├── serializers.py
│   │   ├── apps.py
│   │   ├── admin.py
│   │   ├── tests.py
│   │   ├── urls.py
│   │   └── views.py
│   ├── mcp_server/
│   │   ├── asgi.py
│   │   ├── settings.py
│   │   ├── urls.py
│   │   └── wsgi.py

🚀 快速开始

# 1. Clone the repo
git clone https://github.com/sachnaror/restaurant-mcp-server.git
cd restaurant-mcp-server

# 2. Setup environment
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt

# 3. Add secrets to `.env`
echo "SECRET_KEY=your_django_secret_key" > .env
echo "DEBUG=True" >> .env

# 4. Run DB & server
python manage.py migrate
python manage.py runserver


🧪 使用示例(cURL)


# Create a new order
curl -X POST http://localhost:8000/api/orders/ \
     -H "Content-Type: application/json" \
     -d '{"item_name": "Biryani", "status": "success"}'

# Get recent orders in last 2 hours
curl http://localhost:8000/api/orders/recent/?hours=2


🔌 API 端点

基础 URL:http://localhost:8000/api/

方法端点描述示例负载
POST/api/orders/📝 创建新订单{ "item_name": "Pizza", "status": "success" }
GET/api/orders/📋 列出所有订单–
GET/api/orders/{id}/🔍 按 ID 获取单个订单–
PUT/api/orders/{id}/✏️ 更新订单{ "item_name": "Burger", "status": "failed" }
DELETE/api/orders/{id}/🗑️ 删除订单–
GET/api/orders/recent/?hours=2⏱️ 获取最近 2 小时的订单–

🧠 技术栈

  • 🐍 Python 3.11+
  • 🧱 Django 5.x
  • 🌐 Django REST Framework
  • 📁 SQLite(开发数据库)
  • 📦 python-dotenv

🏁 路线图(构想)

  • 🔐 基于令牌的用户身份验证(可选)
  • 📊 订单分析仪表板
  • 📥 Webhook 或异步订单处理模拟
  • 🧠 集成 OpenAI GPT,动态生成菜单或聊天

📸 截图

README 配图 README 配图

📩 联系方式

姓名详情
👨‍💻 开发者Sachin Arora
📧 电子邮箱[email protected]
📍 所在地印度诺伊达
📂 GitHubgithub.com/sachnaror
🌐 网站https://about.me/sachin-arora
📱 电话+91 9560330483

评论

支持 Markdown

第一次接触 MCP?

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

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