Token导航 LogoToken导航TokenDH.com
MCP Agent Transport logo
地图位置stdio官方级别未说明来源级核验

MCP Agent Transport

MCP Server

一个基于多智能体LangGraph系统的旅行规划工具,提供行程生成和交通优化两大功能,适用于旅行规划和路线优化场景。

工具数

22

提示词数

0

GitHub Stars

1

资源数

0
旅行规划PythonClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

luizlzg

提供方

luizlzg

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install -r requirements.txt

详细介绍

行程生成器

一个多代理LangGraph系统,具有两个基于人工智能的旅行规划解决方案:

  • 行程生成器 --将景点列表转换为专业格式的每日PDF行程,包括地图、图像、官方门票链接和成本估算
  • 传输优化器 --对话式路线规划器,比较交通方式,研究实际成本和支付方式,并生成PDF摘要

Python LangChain LangGraph License

______________________________________________________________________

架构——行程生成器

User Input
    │
    ▼
Coordinate Finder Agent  ← Google Places (Serper)
    │
    ▼
Day Organizer Agent      ← classify → configure → finalize → approval loop
    │
    ▼
Attraction Researcher    ← parallel (1 agent/day)
Agents
    │
    ▼
PDF Builder              ← ReportLab, route map, costs

架构——传输优化器

User (chat)
    │
    ▼
Route Collector Agent    ← Google Places (Serper)
    │
    ▼
Transport Researcher     ← Google Maps Directions API
Agent
    │
    ▼
Cost Calculator Agent    ← Web search (Serper)
    │
    ▼
PDF Builder

______________________________________________________________________

功能--行程生成器

  • 智能分类:隔离/偏好/灵活/专属日
  • K表示地理集群,可选择每天的最小/最大值
  • 路线优化:每天内最近的邻居,可配置的起点/终点
  • 交互式审批流(CLI中断)
  • 平行吸引力研究(每天一名代理人)
  • 图像搜索,过滤30+水印域+URL验证
  • 仅限官方门票链接(11个以上经销商域名被屏蔽)
  • 重复吸引力检测(多日发生)
  • 复合景点(单独研究的子地点)
  • 仅限免费的偏好检测
  • 多语言输出(pt-br、en、es、fr)
  • 带目录、路线图、图像、可点击链接、成本汇总的PDF
  • 可选电子邮件投递(SMTP/Gmail)

功能--传输优化器

  • 通过自然聊天定义对话路线
  • 多模式比较:步行、交通、驾驶(谷歌地图方向API)
  • 智能偏好规则(例如,“如果不到20分钟,请始终步行”)
  • 通过源链接进行真实定价研究
  • 付款方式利弊分析
  • 长会话会话会话摘要(80k令牌阈值)
  • PDF:路线表、成本、价格解释、付款方式

______________________________________________________________________

快速开始

# 1. Clone and install dependencies
git clone 
cd itinerary-generator
pip install -r requirements.txt

# 2. Configure environment
cp .env.example .env
# Edit .env with your API keys (see Configuration below)

# 3. Run the CLI
python main.py

______________________________________________________________________

配置

创建一个 .env 文件包含以下内容:

# OpenRouter API (required) - https://openrouter.ai/keys
OPENROUTER_API_KEY=sk-or-...

# Model Configuration — per-agent or global fallback
# Browse models at: https://openrouter.ai/models
COORDINATE_FINDER_MODEL=anthropic/claude-sonnet-4-20250514
DAY_ORGANIZER_MODEL=anthropic/claude-sonnet-4-20250514
ATTRACTION_RESEARCHER_MODEL=anthropic/claude-sonnet-4-20250514
MODEL_NAME=anthropic/claude-sonnet-4-20250514

# Serper API (required — Google Places + Google Search) - https://serper.dev
SERPER_API_KEY=...

# Tavily API (required — web search + image retrieval) - https://tavily.com
TAVILY_API_KEY=tvly-...

# Google Maps API (required for Transport Optimizer)
GOOGLE_MAPS_API_KEY=...

# Email delivery (optional)
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your-email@gmail.com
SMTP_PASS=your-app-password

# Observability (optional)
LANGSMITH_TRACING=false
LANGSMITH_API_KEY=lsv2_pt_...
LANGSMITH_PROJECT=itinerary-generator

______________________________________________________________________

日程安排——三步工作流程

Day Organizer在请求用户批准之前运行一个结构化的3步流程:

  1. classify_attributions (必填)--将每个景点分为独立、偏好、灵活或专属,并在适用的情况下指定固定日期
  2. 配置路由优化 (可选)--设置路线订购每天的起点和终点
  3. 配置_日期_约束 (可选)——设置K-means聚类每天的最小和最大吸引力计数
  4. finalize_day_organization (必填)--对灵活的景点执行K-means聚类,并在每天内应用最近邻排序
  5. 请求_临时_批准 --显示结果并等待用户批准或修订

______________________________________________________________________

用户首选项类型

类型示例行为
孤立的“迪士尼乐园需要一整天”专属日,不添加其他景点
偏好“埃菲尔铁塔第一天”固定日期,可以与他人分享
独家“第3天仅适用于X和Y”固定设置,不接受灵活添加
灵活的仅列出景点K表示地理分组

______________________________________________________________________

项目结构

itinerary-generator/
├── main.py
├── requirements.txt
├── .env.example
├── src/
│   ├── itinerary_generator/
│   │   ├── graph.py
│   │   ├── state.py
│   │   ├── agent_definition.py
│   │   ├── tools.py
│   │   ├── prompts.py
│   │   └── other_nodes.py
│   ├── transport_optimizer/
│   │   ├── graph.py
│   │   ├── state.py
│   │   ├── agent_definition.py
│   │   ├── tools.py
│   │   └── prompts.py
│   ├── processor/
│   │   └── pdf_processor.py      # ReportLab PDF generation
│   ├── middleware/
│   │   ├── structured_output_validator.py
│   │   ├── summarization_middleware.py
│   │   └── handoff_tool_validator.py
│   ├── mcp_client/
│   │   └── tavily_client.py
│   └── utils/
└── .results/

______________________________________________________________________

工具参考

行程生成器

代理工具目的
坐标查找器search_place_address谷歌地点搜索+商店坐标
坐标查找器return_invalid_input_error处理无效输入
日组织者classify_attractions对所有景点进行分类(步骤1)
日组织者configure_route_optimization设置每天的开始/结束点(可选)
日组织者configure_day_constraints设置每天的最小/最大值(可选)
日组织者finalize_day_organization执行K-means+最近邻排序(步骤3)
日组织者request_itinerary_approval暂停以供用户查看
日组织者update_itinerary_organization应用用户更改
吸引力研究员search_attraction_info在网上搜索详细信息、工作时间、费用
吸引力研究员search_attraction_images使用水印过滤的图像搜索(Tavily)
吸引力研究员search_ticket_link仅限官方门票网址

传输优化器

代理工具目的
路线收集器search_place_coordinates查找并验证位置坐标
路线收集器register_route_pair店铺来源→目的地配对
路线收集器confirm_route_pairs最终确定路线清单并移交
交通研究员get_transport_options谷歌地图方向API
交通研究员register_user_preference每条路线的存储模式选择
交通研究员finish_transport_research交给成本计算器
成本计算器search_transport_information通过网络搜索进行研究定价
成本计算器route_reasoning分析简单路线与复合路线
成本计算器register_route_cost每条路线的存储成本及说明
成本计算器register_payment_methods商店支付选项的优缺点
成本计算器finish_interaction触发PDF生成

______________________________________________________________________

API要求

服务目的注意事项
OpenRouterLLM访问(Claude、GPT-4、Gemini等)按令牌付费
Serper谷歌地点+谷歌搜索开始2500次搜索
Tavily网络搜索+图像检索每月1000次搜索
谷歌地图路线API(交通优化程序)按请求付费

______________________________________________________________________

技术栈

  • LangChain 1.0/LangGraph --代理编排和工作流管理
  • 开放路由 --多提供商LLM访问(Claude、GPT-4、Gemini等)
  • 瑟珀 --谷歌地点和谷歌搜索
  • 塔维利 --网络搜索与图像检索
  • 谷歌地图方向API --运输方式比较
  • scikit-learn/k-means约束 --具有可选大小约束的地理聚类
  • 报告实验室 --PDF生成
  • GeoPandas/Matplotlib --路线图可视化

______________________________________________________________________

许可证

MIT许可证-免费使用和修改

目录标签

目录标签

旅行规划PythonClaude本地部署智能体系统路线优化PDF生成多语言支持

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

22

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP