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. 05Swagger と ReDoc の API ドキュメント

活用シーン

  1. 01旅行プラン API の構築
  2. 02旅行日数に合うプランの検索
  3. 03対話型 API ドキュメントでのテスト

MCP 対応

MCP サーバーは旅行日数に応じてプランを推薦します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

🌴 旅行の旅程 - FastAPI プロジェクト

FastAPI と SQLAlchemy を使用した、旅行の旅程を管理するバックエンドシステムです。旅程の作成・表示用の RESTful API と、旅行日数に基づいて旅程をおすすめする MCP サーバーを備えています。


🚀 ライブデモ

🌐 ライブ URL: 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

Swagger UI は http://127.0.0.1:8000/docs で確認できます。


🧪 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 にアクセスします
  • New Web Service を作成します
  • GitHub リポジトリを接続します
  • Build Command に次を設定します:
    pip install -r requirements.txt
    
  • Start Command に次を設定します:
    uvicorn app.main:app --host 0.0.0.0 --port 10000
    
  • Port を 10000 に設定します
  • ✅ デプロイして、ライブリンクが表示されるまで待ちます!

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。