航班查询服务

一个基于MCP协议的Amadeus航班查询服务,为LLM代理提供实时航班预订信息查询工具。

  • by EEGRCENEM
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 eegrcenem/amadeus-agent

使用说明

旅行代理商

Amadeus的简单概念验证MCP服务器,使基于LLM的代理能够将Amadeus用作工具。 服务器为LLM提供工具,以直接查询世界各地的实时航班预订信息, 包括:

  • 特定旅程最便宜的票。
  • 特定机场的所有目的地。
  • 航空公司的所有航线。

什么是MCP?

模型上下文协议(MCP)是LLM代理与工具、资源交互的客户端-服务器协议 以及提示。你可以把它看作是代理的HTTP。MCP服务器托管了一堆代理工具 可用于为用户执行任务。

Amadeus是什么?

Amadeus是一个全球分销系统(GDS),本质上是一个大型企业使用的预订和预订系统 全球旅行社的数量。它允许查询航班和预订信息 可直接提供给旅行社和其他经销商。

结构

- agent
--- resources   <- static data
--- services    <- service layer for tool logic
--- tools       <- actual tools provided to llm
server.py       <- main server endpoint

安装

这个项目依赖于Python uv 项目经理 紫外线 这使得 易于依赖管理和分发。一旦你有 uv 安装后,您可以创建虚拟环境 包含运行项目所需的所有依赖项。

uv install

source .venv/bin/activate

安装后,您需要提供Amadeus以在 .env 项目根目录中的文件。 这 Amadeus开发人员页面向您展示了如何获取此类密钥.一旦你有了钥匙和秘密,但他们在一个 .env 文件如下:

AMADEUS_ENV="test"
AMADEUS_KEY=<YOUR-KEY>
AMADEUS_SECRET=<YOUR-SECRET>

跑步

安装完成后,您可以启动 FastMCP 服务器

python server.py

然后,它准备好接受来自LLM代理的请求。

连接到克劳德桌面

Claude Desktop内置了与MCP服务器交互的支持。要启用它,您需要打开Claude 桌面开发人员面板,编辑claude_Desktop_config.json以启动服务器。

{
  "mcpServers": {
    "AmadeusServer": {
      "command": "<PATH-TO-PROJECT>/.venv/bin/python",
      "args": [
        "<PATH-TO-PROJECT>/server.py"
      ]
    }
  }
}

然后重新启动Claude Desktop,开始新的对话。写入之前,从配置面板中选择AmadeusServer 在文本输入下方。

克劳德现在应该发现你的工具,并用它们来解决你的任务。