Token导航 LogoToken导航TokenDH.com
Fastapi MCP Sre logo
AI代理未说明官方级别未说明来源级核验

Fastapi MCP Sre

MCP Server

一个轻量级的AI助手概念验证,用于从Grafana MCP获取健康快照、处理值班事件并通过聊天界面回答值班问题。

工具数

7

提示词数

0

GitHub Stars

0

资源数

0
聊天界面PythonAI代理

安装说明

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

作者 / 组织

jackyuncc

提供方

jackyuncc

最后核验

2026/5/17 20:23

快速接入

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

详细介绍

值班人工智能助理(PoC)

从以下位置提取数据的随叫随到助手的轻量级概念验证:

  • Grafana MCP:返回服务的健康快照(用JSON模拟)。
  • FastAPI MCP(随叫随到):从一个简单的夹具中列出/acks事件。
  • 聊天界面:浏览器UI,显示Dify LLM/聊天模式如何调用MCP回答值班问题。

目的是演示接线;准备就绪后,将模拟的数据源与真实的端点交换。

在本地运行

  1. 安装Python 3.11+并创建一个venv(推荐)。
  2. 随着 pip: pip install -r requirements.txt\

随着 uv: uv venv .venv && source .venv/bin/activate && uv pip install -r requirements.txt

  1. uvicorn app.main:app --reload
  2. 打开http://127.0.0.1:8000并询问诸如“检查订单的延迟”或“付款的任何事件”之类的问题。

或者使用辅助脚本:

  • 单个进程(默认为 all 在端口8000上): ./start.sh [all|web|grafana|oncall|k8s]
  • 多进程(默认情况下为单独的端口8000/8011/8012/8013): ./start.sh multi

分别运行组件(模拟不同的服务器):

  • 仅限Grafana MCP: APP_MODE=grafana HOST=127.0.0.1 PORT=8011 ./start.sh
  • 仅限随叫随到的MCP: APP_MODE=oncall HOST=127.0.0.1 PORT=8012 ./start.sh
  • 仅限K8s MCP: APP_MODE=k8s HOST=127.0.0.1 PORT=8013 ./start.sh
  • 仅限网络聊天: APP_MODE=web HOST=127.0.0.1 PORT=8000 GRAFANA_MCP_URL=http://127.0.0.1:8011/api/mcp/grafana ONCALL_MCP_URL=http://127.0.0.1:8012/api/mcp/oncall K8S_MCP_URL=http://127.0.0.1:8013/api/mcp/k8s ./start.sh
  • 同时启动所有四个: PROFILE=multi ./start.sh (默认情况下使用端口8000/8011/8012/8013;用\*\_HOST/PORT变量覆盖)

聊天端点的LLM(OpenAI兼容)配置:

  • OPENAI_API_KEY (必填)
  • OPENAI_MODEL (可选,默认 gpt-4o-mini)
  • OPENAI_BASE_URL (可选;指向自托管的OpenAI兼容端点时使用)
  • 当web与MCP分开运行时,将工具指向远程服务器:

- GRAFANA_MCP_URL (例如。, http://127.0.0.1:8011/api/mcp/grafana) - ONCALL_MCP_URL (例如。, http://127.0.0.1:8012/api/mcp/oncall) - K8S_MCP_URL (例如。, http://127.0.0.1:8013/api/mcp/k8s) - MCP_HTTP_TIMEOUT (可选,默认8秒)

网络聊天端点:

  • /api/web/chat (基于规则)
  • /api/web/chat-llm (LLM与MCP的工具调用)

您可以将MCP端点注册为工具:

  • Grafana MCP: GET /api/mcp/grafana/services, GET /api/mcp/grafana/{service}
  • 随叫随到的MCP: GET /api/mcp/oncall/incidents?service=..., POST /api/mcp/oncall/incidents/ack
  • K8s MCP: GET /api/mcp/k8s/overview, GET /api/mcp/k8s/pods?namespace=..., POST /api/mcp/k8s/pods/restart

传统前端路径仍然有效: /api/services, /api/grafana/{service}, /api/incidents, /api/incidents/ack.

过程模式(设置 APP_MODE):

  • all (默认)提供一切; web 服务聊天+传统; grafana, oncall, k8s 仅暴露这些MCP。

里面是什么

  • app/main.py:FastAPI应用程序在下面公开网络聊天 /api/web/* (基于规则 /chatLLM /chat-llm)Grafana MCP /api/mcp/grafana/*,随叫随到的MCP /api/mcp/oncall/*,K8s MCP下 /api/mcp/k8s/*,加上前端使用的遗留端点(/api/services, /api/grafana/{service}, /api/incidents, /api/incidents/ack).服务于前端。
  • app/mcp/grafana.py:Grafana MCP立面阅读 data/metrics.json.
  • app/mcp/oncall.py:随叫随到的MCP外观读/写 data/incidents.json (acks持续存在)。
  • app/mcp/k8s.py:K8s MCP立面读/写 data/k8s.json (吊舱重启持续)。
  • app/orchestrator.py:调用两个MCP并组成响应的最小“代理”。
  • static/:HTML/CSS/JS聊天界面。
  • data/:指标、事件和k8s集群状态的夹具数据。

与Dify一起使用(LLM聊天模式)

此PoC展示了您可以在Dify工作流中注册为工具的HTTP端点:

  • 工具1(Grafana MCP): GET /api/grafana/{service} → 返回延迟/错误/CPU/RPS+Grafana面板链接。
  • 工具2(随叫随到MCP): GET /api/incidents?service=orders-service → 活跃事件; POST /api/incidents/ack 承认。
  • 工具3(编排器): POST /api/chat → 单个呼叫助手已经链接了两个MCP。

建议的Dify设置:

  1. 在您的Dify应用程序中,为上述端点添加HTTP工具,并简要说明(“从Grafana MCP获取健康状况”、“列出活动事件”、“确认事件”)。
  2. 在聊天流中,允许模型调用这些工具;使用来自的服务名称为系统提示符添加种子 /api/services 并提醒它选择最接近的匹配项(例如,“订单”→ “订单服务”)。
  3. 用真实数据替换JSON夹具(更新 data/metrics.jsondata/incidents.json,或将MCP外观指向真实API)。

自定义PoC

  • 在中添加更多服务或指标 data/metrics.json.
  • 预加载更多事件或调整严重程度 data/incidents.json.
  • 扩展 app/orchestrator.py 包括更多的信号(日志、发布信息、SLO)或以不同的方式调用工具。

目录标签

目录标签

聊天界面PythonAI代理AI助手本地部署值班管理健康监控事件处理

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

7

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP