🍽️ MCP餐厅订购API服务器
欢迎来到 MCP-兼容餐厅API 使用Django+Django REST框架构建。
从虚拟餐厅菜单中模拟客户订单并跟踪他们的 状态 实时。 非常适合与任何MCP服务器集成。
______________________________________________________________________
🧠 为什么选择MCP服务器?
我们称之为 MCP服务器 因为它遵循 模型上下文协议 图案:
- 模型 → The
Order模型定义了数据结构(项、状态、时间)。 - 上下文 → 最近的查询,如
/recent/?hours=2提供背景见解(例如过去2小时)。 - 协议 → RESTful API定义了一种结构化的通信协议。
把它想象成一个美食广场的人工智能助手:
🍔 模型 =菜单上有什么
⏰ 上下文 =现在的趋势是什么
📡 协议 =如何与您沟通(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框架
- 📁 SQLite(开发数据库)
- 📦 python dotenv
______________________________________________________________________
🏁 路线图(想法)
- 🔐 基于令牌的用户身份验证(可选)
- 📊 订单分析仪表板
- 📥 Webhook或异步订单处理模拟
- 🧠 OpenAI GPT集成,用于动态菜单或聊天
______________________________________________________________________
📸 截图
______________________________________________________________________
📩 联系
| 名称 | 详细信息 |
|---|---|
| 👨💻 开发者 | 萨钦·阿罗拉 |
| 📧 电子邮件 | sachnaror@gmail.com |
| 📍 位置 | 诺伊达,印度 |
| 📂 GitHub | |
| 🌐 网站 | https://about.me/sachin-arora |
| 📱 电话 | +91 9560330483 |
______________________________________________________________________
