LangGraph聊天机器人开发套件

一个基于LangGraph的多阶段任务规划聊天机器人开发套件,包含React前端、FastAPI后端和MCP工具调用支持,适用于构建智能对话系统。

  • by jaskaransinghsidana
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 jaskaransinghsidana/mcp_test

使用说明

代理MCP Monorepo

此存储库包含一个完整的本地堆栈 由LangGraph驱动的聊天机器人 使用现代React UI和MCP工具调用支持 FastMCP 对于客户端和服务器。

Monorepo结构

  • apps/api:FastAPI后端、LangGraph代理编排、FastMCP客户端工具调用。
  • apps/web:带有计划/任务可视化的React+Vite聊天机器人UI。
  • services/mcp-server:FastMCP服务器公开工具示例。
  • docker-compose.yml:一个命令本地环境。

特性

  • LangGraph工作流程包含3个图形阶段:
    1. Planner节点生成面向工具的任务计划。
    2. 执行器节点通过MCP工具运行任务。
    3. 响应者节点根据任务结果生成最终答案。
  • MCP示例工具服务器,具有:
    • weather_lookup(city)
    • kb_search(query)
    • summarize_text(text)
  • 现代聊天用户体验,显示助手响应和执行计划。
  • 环境变量集中在 .env.

环境变量

所有环境变量都存储在存储库根目录中 .env:

  • OPENAI_API_KEY
  • OPENAI_MODEL
  • API_HOST
  • API_PORT
  • WEB_PORT
  • MCP_SERVER_HOST
  • MCP_SERVER_PORT
  • MCP_SERVER_URL
  • BACKEND_URL
  • VITE_API_URL

在本地运行

docker compose up --build

然后打开:

  • UI: http://localhost:5173
  • API运行状况: http://localhost:8000/health
  • MCP端点: http://localhost:9001/mcp

后端API

POST /chat

{
  "message": "Plan a weather-aware day in London",
  "history": []
}

退货:

  • answer:助理最终答复
  • plan:已执行的任务,包括状态、工具名称和输出

备注

  • 替换 OPENAI_API_KEY 在 .env 在运行完整的代理流之前。
  • MCP工具有意简单地充当可扩展的启动模板。