Token导航 LogoToken导航TokenDH.com
PM Counter Monitoring MCP Server logo
数据服务stdio官方级别未说明来源级核验

PM Counter Monitoring MCP Server

MCP Server

一个用于从远程SFTP服务器获取、存储和查询性能监控(PM)XML数据的完整系统。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
性能监控自然语言查询PythonAPI集成

安装说明

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

作者 / 组织

ApoorvBrooklyn

提供方

ApoorvBrooklyn

最后核验

2026/5/17 20:22

运行时

Python

快速接入

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

命令预览

python main.py

详细介绍

PM数据管道系统

用于从远程SFTP服务器获取、存储和查询性能监控(PM)XML数据的完整系统。

建筑

SFTP Server → Job Server (scheduled fetcher) → PostgreSQL → MCP Server → REST API → Streamlit Chatbot

组件

  1. 作业服务器:定时SFTP文件提取器和XML解析器
  2. PostgreSQL数据库:存储所有PM计数器数据
  3. MCP服务器:具有自然语言处理功能的查询引擎
  4. REST API:FastAPI服务器公开查询端点
  5. 流线型前端:用于查询数据的聊天机器人界面

快速开始

先决条件

  • Docker和Docker Compose

设置

  1. 克隆仓库
  1. 复制 env.example.env:
   cp env.example .env
  1. .env 文件已为docker compose中包含的示例SFTP服务器配置:
   SFTP_HOST=sftp_server
   SFTP_USERNAME=sftpuser
   SFTP_PASSWORD=password
   SFTP_PORT=22
   SFTP_REMOTE_PATH=/home/sftpuser/uploads
  1. 启动所有服务(包括示例SFTP服务器):
   docker-compose up -d
  1. 将示例XML文件上传到SFTP服务器:
   ./scripts/upload_sample_files.sh
  1. 访问前端 http://localhost:8501

使用自己的SFTP服务器

如果您有自己的SFTP服务器,请更新 .env 使用您的凭据文件:

SFTP_HOST=your-sftp-host.com
SFTP_USERNAME=your-username
SFTP_PASSWORD=your-password
SFTP_PORT=22
SFTP_REMOTE_PATH=/path/to/xml/files/

然后只启动应用程序服务(不包括示例SFTP服务器):

docker-compose up -d postgres job_server api_server frontend

用法

Streamlit聊天机器人

打开Streamlit前端,用自然语言提问:

  • “2024-01-16下午2:10的ifUtilizationIn值是多少?”
  • “显示所有界面”
  • “有哪些可用的计数器?”

API终点

  • GET /api/query?q= -查询数据
  • GET /api/interfaces -列出接口
  • GET /api/counters -列出计数器
  • GET /api/alerts -获取警报
  • GET /api/config/fetch-interval -获取获取间隔
  • POST /api/config/fetch-interval -更新获取间隔

配置

提取间隔可以更改:

  • 通过Streamlit UI侧栏
  • 通过REST API
  • 作业服务器将自动获取新的间隔

数据库模式

系统存储:

  • 文件元数据和校验和
  • 网元信息
  • 测量间隔
  • 接口计数器
  • IP/TCP/系统计数器
  • BGP对等数据
  • 阈值警报
  • 数据质量指标

发展

运行个人服务

# Job Server
cd job_server
python main.py

# API Server
cd api_server
uvicorn main:app --reload

# Frontend
cd frontend
streamlit run app.py

环境变量

.env.example 对于所有可用的配置选项。

使用示例SFTP服务器进行测试

docker compose包含一个用于测试的示例SFTP服务器。它使用 atmoz/sftp 图像,并配置有:

  • 用户名: sftpuser
  • 密码: password
  • 端口: 2222 (映射到集装箱港口22)
  • 上传目录: /home/sftpuser/uploads

手动SFTP连接

您可以手动连接到示例SFTP服务器:

# From your host machine
sftp -P 2222 sftpuser@localhost

# Or from within Docker network
docker exec -it pm_sftp_server sftp sftpuser@localhost

上传文件

  1. 使用上传脚本 (推荐):
   ./scripts/upload_sample_files.sh
  1. 通过Docker手动上传:
   docker cp example_1.xml pm_sftp_server:/home/sftpuser/uploads/
   docker cp example_2.xml pm_sftp_server:/home/sftpuser/uploads/
  1. 通过SFTP客户端手动上传:
   sftp -P 2222 sftpuser@localhost
   # Then in SFTP prompt:
   put example_1.xml /home/sftpuser/uploads/
   put example_2.xml /home/sftpuser/uploads/

许可证

麻省理工学院

目录标签

目录标签

性能监控自然语言查询PythonAPI集成本地部署SFTP数据处理XML解析PostgreSQLRESTAPI

接入字段

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

stdio

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

none

运行时(runtime,运行环境)

Python

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdiononeremote-capable

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

安装前确认

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

来源信息

继续浏览同类 MCP