modelscope·nieli0724/FlightTicketMCPMCPAgentChallenge1
一个基于模型上下文协议(MCP)的航空机票查询服务器。该服务器为AI助手提供标准化的航班实时动态查询功能接口,作为AI助手与航空服务系统之间的桥梁。服务器采用模块化架构,将核心功能、工具和实用程序分离,使其具有高度的可维护性和可扩展性。
一个基于模型上下文协议(MCP)的航空机票查询服务器。该服务器为AI助手提供标准化的航班实时动态查询功能接口。
Flight Ticket MCP Server 实现了供航空机票相关查询操作的工具和资源。它作为AI助手与航空服务系统之间的桥梁,专注于航班实时动态查询功能。
该服务器采用模块化架构,将核心功能、工具和实用程序分离,使其具有高度的可维护性和可扩展性。
flight_search_tools.py) - 航班路线查询功能flight_transfer_tools.py) - 多段航程和中转查询flight_info_tools.py) - 根据航班号查询详细信息simple_opensky_tools.py) - 基于OpenSky Network的实时航班跟踪weather_tools.py) - 基于经纬度和城市的天气查询date_tools.py) - 日期时间获取和处理cities_dict.py) - 282个城市和机场代码映射validators.py) - 输入参数验证和格式检查date_utils.py) - 日期格式化和时区处理api_client.py) - HTTP请求封装和错误处理本服务器支持三种传输协议:
# 使用pip安装
pip install flight-ticket-mcp-server
# 或使用uvx直接运行(无需安装)
uvx flight-ticket-mcp-server
# 或使用uvx安装后运行
uvx --install flight-ticket-mcp-server
# 克隆或下载项目
cd FlightTicketMCP
# 安装依赖
pip install -r requirements.txt
# 或从本地源码安装
pip install -e .
uvx 是一个现代的Python包运行工具,可以直接运行PyPI包而无需先安装到系统环境:
# 安装uv(包含uvx工具)
pip install uv
# 直接运行MCP服务器(无需安装)
uvx flight-ticket-mcp-server
# 使用最新版本(推荐)
uvx flight-ticket-mcp-server@latest
# 带参数运行
uvx flight-ticket-mcp-server --help
# 指定版本运行
uvx flight-ticket-mcp-server==1.0.1
# 强制重新安装最新版本
uvx flight-ticket-mcp-server@latest --help
uvx 的优势:
# 使用主启动文件(默认启动SSE模式,监听127.0.0.1:8000)
python flight_ticket_server.py
# 或者直接运行main.py
python main.py
# 启用调试模式,会输出详细日志
set MCP_DEBUG=true
python flight_ticket_server.py
# Linux/macOS
export MCP_DEBUG=true
python flight_ticket_server.py
# 直接启动,使用默认SSE配置(127.0.0.1:8000)
python flight_ticket_server.py
# Windows
set MCP_TRANSPORT=stdio
python flight_ticket_server.py
# Linux/macOS
export MCP_TRANSPORT=stdio
python flight_ticket_server.py
# Windows
set MCP_TRANSPORT=streamable-http
set MCP_HOST=127.0.0.1
set MCP_PORT=8000
python flight_ticket_server.py
# Linux/macOS
export MCP_TRANSPORT=streamable-http
export MCP_HOST=127.0.0.1
export MCP_PORT=8000
python flight_ticket_server.py
项目提供了 .env.example 文件作为配置模板:
复制配置模板:
# 复制配置模板
cp .env.example .env
编辑配置文件:
打开 .env 文件,根据需要修改配置值:
# MCP服务器配置
MCP_TRANSPORT=sse
MCP_HOST=127.0.0.1
MCP_PORT=8000
MCP_SSE_PATH=/sse
# 日志配置
LOG_LEVEL=INFO
LOG_FILE_PATH=logs/flight_server.log
LOG_MAX_SIZE=10
LOG_BACKUP_COUNT=5
# 开发配置
MCP_DEBUG=false
配置说明:
.env 文件包含敏感配置,不会被提交到版本控制.env.example 是安全的模板文件,可以提交到Git如果不使用 .env 文件,也可以直接设置环境变量:
支持的环境变量:
| 变量名 | 描述 | 默认值 | 可选值 |
|---|---|---|---|
MCP_TRANSPORT | 传输协议类型 | sse | stdio, sse, streamable-http |
MCP_HOST | 服务器主机地址 | 127.0.0.1 | 任何有效IP地址 |
MCP_PORT | 服务器端口 | 8000 | 1-65535 |
MCP_PATH | HTTP路径 | /mcp | 任何有效路径 |
MCP_SSE_PATH | SSE路径 | /sse | 任何有效路径 |
MCP_DEBUG | 调试模式 | false | true, false, 1, 0 |
LOG_LEVEL | 日志级别 | INFO | DEBUG, INFO, WARNING, ERROR, CRITICAL |
LOG_FILE_PATH | 日志文件路径 | logs/flight_server.log | 任何有效路径 |
LOG_MAX_SIZE | 日志文件最大大小(MB) | 10 | 正整数 |
LOG_BACKUP_COUNT | 日志备份数量 | 5 | 正整数 |
FASTMCP_LOG_LEVEL | FastMCP日志级别 | INFO | DEBUG, INFO, WARNING, ERROR |
启动成功后,您会看到类似输出:
Transport: sse
Logging enabled - logs will be saved to logs/ directory
Flight Ticket MCP Server starting...
Transport: sse
All tools registered successfully
Starting SSE transport on 127.0.0.1:8000/sse
服务器启动后会在 logs/ 目录下生成以下日志文件:
flight_server.log - 一般日志(INFO级别及以上)flight_server_error.log - 错误日志(ERROR级别)flight_server_debug.log - 调试日志(仅在调试模式下生成)Ctrl+C 停止Ctrl+C 或发送SIGTERM信号使用uvx运行MCP服务器,无需预先安装,简洁优雅:
{
"mcpServers": {
"flight-ticket-server": {
"command": "uvx",
"args": ["flight-ticket-mcp-server@latest"]
}
}
}
uvx配置的优势:
如果已通过pip安装,可以直接使用命令行工具…
快递100 MCP Server提供快递信息查询、快递运费预估比价、快递时效查询(含发货前时效查询与在途动态时效查询)等功能。
暂无描述。
一个提供网页开发工具的MCP服务器,例如屏幕捕捉功能,可以让AI代理获取并处理用户屏幕的截图。
一个从网站提取有意义内容并将HTML转换为高质量Markdown的MCP服务器,使用Mozilla的Readability引擎。
一种模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页交互,而无需使用视觉模型或截图。
桌面通知、个性化声音、ntfy 手机应用通知、邮件通知和 API 推送,减少 AI 任务等待焦虑,舒适地享用一杯咖啡。