mcpField
🌴
🌴 Travel Itinerary - FastAPI Project

🌴 Travel Itinerary - FastAPI Project

本地服务
github.com/ThasnimaShereef媒体与设计078 周前更新

关于 🌴 Travel Itinerary - FastAPI Project

基于 FastAPI 和 SQLAlchemy 的后端,用于创建和查看按天安排的旅行行程。它还可按旅行时长推荐行程,并预置了普吉岛和甲米的数据。

主要功能

  1. 01创建按天安排的行程
  2. 02浏览和查询已存行程
  3. 03按旅行时长推荐行程
  4. 04预置普吉岛和甲米数据
  5. 05提供 Swagger 和 ReDoc API 文档

适用场景

  1. 01构建旅行行程 API
  2. 02按旅行时长查找行程方案
  3. 03通过交互式 API 文档测试接口

MCP 相关

MCP 服务可根据旅行时长推荐行程。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

🌴 旅行行程 - FastAPI 项目

这是一个使用 FastAPI 和 SQLAlchemy 管理旅行行程的后端系统,提供用于创建和查看行程的 RESTful API,以及一个根据旅行时长推荐行程的 MCP 服务。


🚀 在线演示

🌐 在线网址: https://travel-itinerary-fdwd.onrender.com/docs


🧰 技术栈

  • Python 3.11+
  • FastAPI
  • SQLAlchemy
  • SQLite(用于开发;可切换为 PostgreSQL)
  • Uvicorn
  • Render(用于部署)
  • Pydantic(用于输入验证)

📦 功能

  • 创建包含完整逐日安排的新行程
  • 查看所有已存储的行程
  • MCP(最小成本路径)服务,根据晚数推荐行程
  • 预置泰国 Phuket 和 Krabi 的数据
  • 可用于测试端点的交互式 Swagger UI

📁 文件夹结构

travel-itinerary-backend/
│
├── app/                        # Main application package
│   ├── __init__.py            # Makes the app a Python package
│   ├── main.py                # Entry point of FastAPI app
│   ├── models.py              # SQLAlchemy models
│   ├── database.py            # DB connection setup
│   ├── schemas.py             # Pydantic schemas for validation
│   ├── seed_data.py           # Predefined itinerary data
│   └── routes/                # API route definitions
│       ├── itineraries.py       # CRUD routes for itineraries
│       
├── requirements.txt           # Project dependencies
├── README.md                  # Project documentation
├── .gitignore                 # Files to ignore in Git
└── start.sh                   # (Optional) Start script for deployment

⚙️ 功能

  • ✅ 创建包含酒店、接送和游览数据的旅行行程
  • ✅ 获取适用于 2 至 8 晚行程的推荐方案
  • ✅ 使用 FastAPI、SQLAlchemy 和 SQLite 编写模块化代码
  • ✅ 自动生成 Swagger 和 ReDoc API 文档
  • ✅ 使用 Render 在线部署

🚀 开始使用

📦 1. 克隆仓库
git clone https://github.com/ThasnimaShereef/Travel-Itinerary.git
cd Travel-Itinerary
🧪 2. 创建虚拟环境
python -m venv venv
# For Windows:
venv\Scripts\activate
# For macOS/Linux:
source venv/bin/activate
📥 3. 安装依赖项
pip install -r requirements.txt
▶️ 4. 运行开发服务器
uvicorn app.main:app --reload

现在访问:http://127.0.0.1:8000/docs,打开 Swagger UI。


🧪 API 端点

方法端点描述
POST/itineraries/创建新行程
GET/itineraries/获取所有行程
GET/itineraries/{id}根据 id 获取行程
GET/recommendations/{duration}根据时长获取推荐行程

📸 截图

📘 Swagger UI

Swagger UI

🔍 GET /itenararies 的行程 JSON 响应 - 所有行程

示例响应

🔍 GET /itenararies/{id} 的行程 JSON 响应 - 根据 id 获取行程

示例响应

🔍 POST /itenararies 的行程 JSON 响应 - 创建新行程

示例响应

🔍 GET /recommendations{duration} 的行程 JSON 响应 - 根据时长推荐行程

示例响应


🌍 在 Render 上部署

🔁 1. 推送到 GitHub
git init
git remote add origin https://github.com/ThasnimaShereef/Travel-Itinerary.git
git add .
git commit -m "Initial backend commit"
git push -u origin main --force
🚀 2. 通过 Render 部署
  • 访问 https://render.com
  • 创建一个新的 Web 服务
  • 连接你的 GitHub 仓库
  • 将构建命令设置为:
    pip install -r requirements.txt
    
  • 将启动命令设置为:
    uvicorn app.main:app --host 0.0.0.0 --port 10000
    
  • 将端口设置为 10000
  • ✅ 部署并等待在线链接!

评论

支持 Markdown

第一次接触 MCP?

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

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