🌴 Travel Itinerary - FastAPI Project

by ThasnimaShereef

360 downloads Not rated yet
GitHub

About

This is a backend system for managing travel itineraries using FastAPI and SQLAlchemy, featuring RESTful APIs to create and view itineraries and an MCP server to recommend itineraries based on trip duration.

Explore

- Create new itineraries with full day-wise breakdown
- View all stored itineraries
- MCP (Minimum Cost Path) server for recommending itineraries based on nights
- Pre-seeded data for Phuket and Krabi, Thailand
- Interactive Swagger UI for testing endpoints

---

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name 🌴 Travel Itinerary - FastAPI Project
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

``bash
python -m venv venv

`bash
pip install -r requirements.txt


- Go to https://render.com
- Create a New Web Service
- Connect your GitHub repo
- Set the Build Command to:
bash
pip install -r requirements.txt
`
- Set the Start Command to:
`bash
uvicorn app.main:app --host 0.0.0.0 --port 10000
`
- Set Port to
10000`
- βœ… Deploy and wait for the live link!

---

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "\ud83c\udf34 travel itinerary - fastapi project": {
            "Travel-Itinerary": {
                "command": "python",
                "args": [
                    "-m",
                    "venv",
                    "venv"
                ]
            }
        }
    }
}

McpServers

{
    "Travel-Itinerary": {
        "command": "python",
        "args": [
            "-m",
            "venv",
            "venv"
        ]
    }
}
This is a backend system for managing travel itineraries using FastAPI and SQLAlchemy, featuring RESTful APIs to create and view itineraries and an MCP server to recommend itineraries based on trip duration. ---

πŸš€ Live Demo

🌐 Live URL: https://travel-itinerary-fdwd.onrender.com/docs ---

🧰 Tech Stack

- Python 3.11+ - FastAPI - SQLAlchemy - SQLite (for development; switchable to PostgreSQL) - Uvicorn - Render (for deployment) - Pydantic (for input validation) ---

πŸ“¦ Features

- Create new itineraries with full day-wise breakdown - View all stored itineraries - MCP (Minimum Cost Path) server for recommending itineraries based on nights - Pre-seeded data for Phuket and Krabi, Thailand - Interactive Swagger UI for testing endpoints ---

πŸ“ Folder Structure

`` 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 ` ---

βš™οΈ Features

- βœ… Create travel itineraries with hotel, transfer, and excursion data - βœ… Get recommended itineraries for 2 to 8-night durations - βœ… Modular code with FastAPI, SQLAlchemy, and SQLite - βœ… Auto-generated Swagger and ReDoc API docs - βœ… Deployed live using Render ---

πŸš€ Getting Started

πŸ“¦ 1. Clone the Repository

`bash git clone https://github.com/ThasnimaShereef/Travel-Itinerary.git cd Travel-Itinerary `

πŸ§ͺ 2. Create a Virtual Environment

``bash python -m venv venv
No reviews yet β€” be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.