mcpField
E
easygroupflights

easygroupflights

远程服务
easygroupflights.com地图与出行02 周前更新

关于 easygroupflights

easygroupflights 是用于安排团体航空出行并查询小型团体普通票价的 MCP 服务。它会整理需人工处理的团体报价询问,也可为 9 人及以下的团体搜索可预订票价。

主要功能

  1. 01准备并提交团体报价询问
  2. 02核对团体预订要求
  3. 03搜索最多 9 人的实时票价
  4. 04获取票价详情和预订链接
  5. 05提供旅行指南和行程提示词

适用场景

  1. 01为 10 人及以上团体申请协商票价
  2. 02为人数较少的团体查找可预订航班
  3. 03整理学校旅行或运动队行程信息

MCP 相关

该服务通过 Streamable HTTP 向 MCP 客户端提供航班询问和票价工具、引导提示词及旅行资源。团体询问须先准备并取得确认令牌,之后才能提交。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.easygroupflights.com/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

5
参数类型必填说明
marketenum否要介绍的市场。默认为 en。en | pl | at

详细介绍

easygroupflights MCP

一个面向 easygroupflights.com 的 Model Context Protocol 服务,提供经 IATA 认证的团体航空旅行服务,汇集了 500 多家航空公司的协商票价。

它让 AI 助手能够执行网站上的操作:判断行程是否属于团体预订,收集代理人报价所需的信息,并将询价转交给人工处理;如果人数不足以组成团体,则查找可正常预订的票价。

为什么团体需要专门的工具

团体票价由航空公司直接协商,不通过任何公开的预订引擎销售,因此没有搜索 API 能返回团体票价。此服务会提交完整、结构化的询价,并如实告知旅客后续流程:专员通常会在约 2 小时内通过电子邮件回复,复杂航线最多需要 24 小时。

分界线是 10 名占座旅客。未满 2 岁、不占座的婴儿不计入人数。

工具

工具功能
egf_get_service_info介绍团体预订的运作方式、人数门槛、报价费用和所需时间。不提交任何内容。
egf_prepare_group_quote适用于 10 人及以上。检查询价信息,并准确返回将要发送的内容及确认令牌。不发送任何内容。
egf_request_group_quote将准备好的询价发送给团体专员。只接受令牌。返回确认信息,而非价格。
egf_search_flights适用于 9 人及以下。返回实时票价、承运航空公司和中转信息,每项票价都带有一个 offer_id。
egf_get_offer根据 offer_id 获取单项票价:价格、航班、预订链接和 valid_until。

只有设置了 PELIKAN_MCP_URL,两个票价工具才会出现在 tools/list 中——无法运行的已公布工具,还不如不提供。

egf_get_service_info 会列出各市场的人工联系方式,包括网站、电子邮件、电话和 WhatsApp,方便 Agent 将用户转接给工作人员。

每个工具都会:

  • 明确设置全部四项注释(readOnlyHint、destructiveHint、 idempotentHint、openWorldHint)。只有 egf_request_group_quote 会写入数据,且不会执行任何破坏性操作。
  • 声明 outputSchema,并在返回文本的同时返回 structuredContent。
  • 使用 snake_case 输入。

写入操作分为两步,因为并非每个客户端都会在写入前征求用户同意。准备工具会返回摘要和 confirmation_token,该令牌由 CONFIRM_SECRET 签名,有效期为 15 分钟。写入操作只接受该令牌,因此不会发送摘要中未显示的任何内容。

它接受可选的 idempotency_key。如果不提供,则令牌本身会用作键,因此每项准备好的写入最多只会执行一次。键会按 Cloudflare 数据中心保存 24 小时。

使用 bearer token GATEWAY_TOKEN 的调用方是 Tripdesk 网关:

  • 它们有独立的速率限制,每分钟 1,200 次;其他调用方则按地址限制为每分钟 60 次。
  • 它们的预订链接不会添加标记。直接调用方的链接会添加 utm_source=mcp。

每次工具调用都会在 28 秒内返回结果。

egf_search_flights 使用 limit(默认值为 10,最大值为 20)和 cursor 分页。每项票价都带有一个不透明的 offer_id,有效期为 30 分钟。egf_get_offer 只需此 ID 即可。搜索结果不包含预订链接,也不包含会话或行程 ID。

在 2.1 中移除

egf_prepare_flight_offer 和 egf_send_flight_offer(1.x 中的 send_flight_offer)已移除。它们会调用票价服务面向代理人的报价邮件功能,该功能会将品牌邮件连同调用方自定义文本发送给任意地址。目录审核对此提出了警示;egf_get_offer 现在会改为返回预订链接。

从 1.x 升级

2.0 将工具重命名为带有 egf_ 前缀的名称,并将输入改为 snake_case。 1.x 中大多数有效功能仍然可用:

  • 旧名称(request_group_quote,……)仍会得到响应,但不再列出。
  • camelCase 参数(departureDate、fareId,……)会按其 snake_case 名称读取。
  • 1.x 中一步完成的写入操作会被拒绝,并提示先调用哪个准备工具。

隐私

服务器会接收哪些信息、信息会发送到哪里以及保留多久:easygroupflights.com/mcp-privacy/。数据控制方是 pelicantravel.com s.r.o.;隐私相关问题请发送至 [email protected]。

提示词

引导式需求说明。在 Claude Desktop 和 claude.ai 中,依次点击 + → Connectors → Add from Easygroupflights 即可找到;在 Claude Code 中,它们的名称格式为 /mcp__easygroupflights__<name>。 每个提示词都会引导用户提供服务台所需的信息,以及此类行程特有的问题,并且仅在用户确认后提交。

提示词适用对象
school-trip学校和大学:分别统计学生和教职员工人数、提供用于确定监督比例的年龄,以及说明同意书仍在收集
wedding-guests海外婚礼:来自多个城市的宾客、最晚抵达时间、付款方
sports-team俱乐部和运动队:首场比赛时间、器材、赛程风险
company-offsite团队外出活动、奖励旅游、会议:固定的周次、舱位组合、单张发票
pilgrimage教区和信仰团体:参与者的付款方式、无障碍需求

每个提示词都接受可选的 market(en、pl、at),以及已知的任何信息:origin、destination、dates、travellers。

资源

Agent 可以引用而非依赖回忆的资料;每项资料均以 Markdown 格式通过其公开 URL 提供,因此引用的资源本身就是读者可以访问的链接。

  • 指南:三个市场网站上的所有内容页面(每个网站 16 页,分别提供英语、波兰语和德语版本),从各网站发布的 /mcp-resources.json 读取。
  • 研究报告:已发布的 EGF Data Desk 研究报告,提供英语和波兰语版本,从各博客的 Ghost Content API 读取。表格会保留为表格。

两类资料均按需获取并缓存一小时,因此无需重新部署服务器,新内容就能送达 Agent。

使用方法

claude mcp add --transport http easygroupflights https://mcp.easygroupflights.com/mcp

在 Claude Desktop 或 claude.ai 中:依次点击 Settings → Connectors → Add custom connector,然后粘贴 https://mcp.easygroupflights.com/mcp。

或者,在任何其他 MCP 客户端的配置中:

{
  "mcpServers": {
    "easygroupflights": {
      "type": "http",
      "url": "https://mcp.easygroupflights.com/mcp"
    }
  }
}

传输方式为 streamable HTTP。服务器无状态——不会发放会话 ID,也不需要 Durable Objects,因为每次工具调用都是独立完整的。

配置

公开值保存在 wrangler.toml 中:

变量含义
SITE_URL面向用户的网站,显示在工具输出和落地页中
GROUP_MIN_PASSENGERS达到此人数的团体即视为团体预订。默认值为 10
FARE_CURRENCY票价服务报价所用的货币。默认值为 EUR

使用 wrangler secret put 设置三个密钥:

密钥含义
AUTOPILOT_URL团体询价受理地址。它属于基础设施,而非凭据;由于此仓库是公开的,因此将其设为密钥
AUTOPILOT_API_KEY作为 X-API-Key 发送至受理端点。如果两者任一未设置,egf_request_group_quote 会拒绝请求,而不会静默失败
PELIKAN_MCP_URLPelikan MCP 服务的 streamable HTTP 端点,用于为小型团体定价。可选;未设置时,其工具会保持隐藏

许可证

MIT。参见 LICENSE。

询价会归属到不带路径的市场域名。Autopilot 只会处理它能识别的来源,因此不得在其后附加任何内容。

开发

npm install
npm run dev        # wrangler dev on :8787
npm test           # unit tests, no network
npm run typecheck
npm run deploy     # wrangler deploy

将本地密钥放在 .dev.vars 中(已加入 gitignore)。不设置 AUTOPILOT_API_KEY 是端到端测试 egf_request_group_quote 的安全方式:它会验证所有内容,并在接收边界处停止,不会创建真实线索。

手动运行:

curl -s localhost:8787/mcp -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

GET / 提供人类可读的页面,/health 提供状态探测,/.well-known/mcp.json 提供目录清单。

市场

每个市场对应一个站点;市场决定由哪个品牌处理咨询,以及将线索归属到哪个域名。

market站点语言
eneasygroupflights.com英语
plgrupoweloty.pl波兰语
atgruppenfluege.at德语

评论

支持 Markdown

第一次接触 MCP?

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

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