mcpField
T
Travel Itinerary Backend System with MCP

Travel Itinerary Backend System with MCP

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

关于 Travel Itinerary Backend System with MCP

这是一个基于 FastAPI 的旅行行程后端系统,供 AI 助手或应用创建和查看行程。它结合 REST API、SQLAlchemy 数据模型和 MCP,并附有普吉岛与甲米的示例数据。

主要功能

  1. 01管理行程及相关数据模型
  2. 02通过 REST API 创建和查看行程
  3. 03包含普吉岛与甲米种子数据
  4. 04提供 2 至 8 晚推荐行程

适用场景

  1. 01通过对话查询推荐行程
  2. 02查看指定行程详情
  3. 03创建新的旅行计划

MCP 相关

该 MCP 服务通过 FastAPI 集成 MCP,向兼容客户端开放行程 API 操作;配置使用 SSE 连接本地 `/mcp` 端点。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

使用 MCP 的旅行行程后端系统

一个基于 FastAPI、用于管理旅行行程的后端系统。本项目实现了 Model Context Protocol (MCP),以便更好地与 AI 助手集成。

功能

  • 数据库架构:用于行程、住宿、接送和活动的 SQLAlchemy 模型
  • RESTful API:用于创建和查看旅行行程的端点
  • 种子数据:预置了普吉岛和甲米地区的真实数据
  • 推荐行程:提供 2 至 8 晚的示例行程
  • MCP 集成:全面支持 Model Context Protocol,适用于 AI 助手

安装

  1. 确保已安装 Python 3.8+

  2. 从此处安装 uv(快速 Python 包安装程序):

  3. 克隆此存储库并进入项目目录:

    git clone https://github.com/aryanranderiya/itinerary-mcp-server
    cd itinerary-mcp-server
    
  4. 创建虚拟环境并安装依赖项:

    uv venv
    uv sync
    
  5. 激活虚拟环境:

    在 Linux/macOS 上:

    source .venv/bin/activate
    

    在 Windows(命令提示符)上:

    .venv\Scripts\activate.bat
    

    在 Windows(PowerShell)上:

    .venv\Scripts\Activate.ps1
    

运行项目

开发模式

以开发模式运行服务并启用自动重新加载: 只有在需要编辑代码时,才以开发模式运行。

fastapi dev
生产模式

以生产模式运行服务:

fastapi start

API 可通过 http://localhost:8000 访问,API 文档位于 http://localhost:8000/docs。

使用 Model Context Protocol (MCP)

本项目实现了 Model Context Protocol (MCP),使 AI 助手能够直接与您的 API 交互。这意味着 AI 工具可以了解 API 的功能和数据结构,并代表您执行操作。

MCP 配置

本项目已完成必要的 MCP 配置:

  • fastapi_mcp 库:我们使用 fastapi_mcp 库将 MCP 功能集成到 FastAPI 中
  • mcp.json:配置位于 .vscode/mcp.json 文件中,其中定义了 MCP 服务设置:
    {
      "servers": {
        "stay-often-mcp1": {
          "type": "sse",
          "url": "http://localhost:8000/mcp"
        }
      }
    }
    
    此配置通过 Server-Sent Events (SSE) 连接到 http://localhost:8000/mcp 上的 MCP 端点。

无需进行其他设置即可使用 MCP 功能——该功能已内置于服务中,可直接使用。

支持的 MCP 客户端

您可以使用任何兼容 MCP 的客户端与此 API 交互。MCP 客户端包括:

如需了解 MCP 的更多信息,请访问 MCP 官方文档。

示例:与 GitHub Copilot 搭配使用

以下是使用 GitHub Copilot 与此 API 交互的方法:

  1. 启动服务:

    fastapi dev
    
  2. 在与 GitHub Copilot 的对话中,您可以请求执行如下操作:

    • 获取所有行程:

      Can you show me all the recommended itineraries for Phuket?
      
    • 获取特定行程:

      Show me the details for itinerary ID 3
      
    • 创建新行程:

      Create a new 5-night itinerary in Krabi with the following details: Name: "Krabi Adventure", day 1 at hotel 5 with activities 10 and 11, day 2 at hotel 5 with activity 12, etc.
      

GitHub Copilot 将理解这些请求,并通过 MCP 协议代表您执行相应的 API 调用。

Screenshots

Screenshot from 2025-04-30 02-25-34 Screenshot from 2025-04-30 02-27-45

Screenshot from 2025-04-30 02-49-00 Screenshot from 2025-04-30 02-34-12 Screenshot from 2025-04-30 02-34-33 Screenshot from 2025-04-30 02-36-44

评论

支持 Markdown

第一次接触 MCP?

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

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