Token导航 LogoToken导航TokenDH.com
Appdynamics MCP Server logo
运维云端未说明官方级别未说明来源级核验

Appdynamics MCP Server

MCP Server

AppDynamics MCP Server 是一个为LLM客户端提供全面访问AppDynamics监控数据的服务,支持创建和管理仪表盘及健康规则。

工具数

30

提示词数

0

GitHub Stars

3

资源数

0
TypeScriptClaude云端部署Claude DesktopClaudeCursor

安装说明

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

作者 / 组织

asafkiv

提供方

asafkiv

最后核验

2026/5/17 20:23

快速接入

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

详细介绍

AppDynamics MCP服务器

A. 模型上下文协议 服务器,为LLM客户端(Cursor、Claude Desktop等)提供对AppDynamics监控数据的完全访问权限,以及创建和管理仪表板和健康规则的能力。

特性

30工具 分为8类:

  • 发现:按名称列出和搜索应用程序
  • 健康监测:完整的健康规则CRUD、违规和异常检测
  • 应用性能:业务事务、服务端点及其度量
  • 基础设施:层、节点和后端/远程服务依赖关系
  • 诊断:事务快照和错误事件
  • 根本原因分析:所有信号类型的自动复合诊断
  • 指标:浏览指标树并使用汇总支持查询任何指标
  • 仪表盘:完整CRUD--列表、查看、创建、更新、添加小部件、克隆、删除、导出、导入、自动构建、按规则运行状况小部件

关键能力

  • 自然语言友好:接受应用程序名称,而不仅仅是ID
  • 度量树浏览器:以交互方式发现可用指标,包括自定义/机器代理指标
  • 卷起控制:时间序列视图与聚合度量视图的每个小部件汇总
  • 仪表板自动生成器:从单个提示创建完整的多部分仪表板
  • HealthListWidget范围:每个小部件都可以固定到特定的健康规则(不是“所有规则”)
  • 健康规则CRUD:创建、更新、启用/禁用和删除健康规则,包括特定层或节点范围内的自定义指标
  • 智能默认值:合理的时间范围和开箱即用的结果限制

快速开始

1.安装依赖项

npm install

2.配置环境

复制 .env.example.env 并填写您的凭据:

cp .env.example .env

所需变量:

变量描述
APPD_URL控制器基URL(例如。, https://mycompany.saas.appdynamics.com)
APPD_CLIENT_NAMEOAuth客户端名称或API密钥
APPD_CLIENT_SECRETOAuth客户端密钥
APPD_ACCOUNT_NAME帐户名(用于 clientName@accountName 格式)

3.添加到您的MCP客户端

光标 (~/.cursor/mcp.json):

{
  "mcpServers": {
    "appdynamics": {
      "command": "npx",
      "args": ["tsx", "src/index.ts"],
      "cwd": "/path/to/appdynamics-mcp-server",
      "env": {
        "APPD_URL": "https://your-controller.saas.appdynamics.com",
        "APPD_CLIENT_NAME": "your-client-name",
        "APPD_CLIENT_SECRET": "your-client-secret",
        "APPD_ACCOUNT_NAME": "your-account-name"
      }
    }
  }
}

克劳德桌面版 (claude_desktop_config.json):

{
  "mcpServers": {
    "appdynamics": {
      "command": "npx",
      "args": ["tsx", "/path/to/appdynamics-mcp-server/src/index.ts"],
      "env": {
        "APPD_URL": "https://your-controller.saas.appdynamics.com",
        "APPD_CLIENT_NAME": "your-client-name",
        "APPD_CLIENT_SECRET": "your-client-secret",
        "APPD_ACCOUNT_NAME": "your-account-name"
      }
    }
  }
}

工具参考

发现

工具说明
appd_get_applications列出所有受监视的应用程序(带可选名称过滤器)

健康监测

工具说明
appd_get_health_rules列出健康规则或获取特定规则的详细信息
appd_create_health_rule创建带有警告和/或危急情况的新健康规则。支持 OVERALL_APPLICATION_PERFORMANCE, BUSINESS_TRANSACTION_PERFORMANCE, TIER_NODE_HEALTH,以及 CUSTOM 实体类型。使用 affectedTieraffectedNode 将规则范围限定到特定层/节点,以获得自定义指标。
appd_update_health_rule更新现有健康规则的名称、条件、阈值或范围
appd_delete_health_rule永久删除健康规则
appd_enable_health_rule启用或禁用健康规则
appd_get_health_violations获取一个或所有应用程序的健康规则违规
appd_get_anomalies获取异常事件(默认情况下仅打开)

应用性能

工具说明
appd_get_business_transactions列出应用程序的BT
appd_get_bt_performance获取BT的响应时间、吞吐量和错误
appd_get_service_endpoints列出服务终结点(API级粒度)
appd_get_service_endpoint_performance获取服务端点的性能指标

基础设施

工具说明
appd_get_tiers_and_nodes获取包含节点(代理、机器、IP)的层
appd_get_backends列出后端依赖关系(数据库、API、缓存、队列)

诊断

工具说明
appd_get_snapshots获取事务快照(深度诊断捕获)
appd_get_errors获取错误和异常事件

根本原因分析

工具说明
appd_diagnose_issue自动根本原因分析——并行获取违规、异常、错误事件和快照,然后返回排名的候选者、合并的时间线、错误细分和调查步骤

指标

工具说明
appd_browse_metric_tree浏览度量层次结构以发现可用的度量,包括自定义机器代理度量
appd_get_metric_data按路径查询任何指标。支持 rollup 控制: true 返回单个聚合值, false 返回单个时间序列数据点

仪表盘

工具说明
appd_get_dashboards列出所有自定义仪表板
appd_get_dashboard使用小部件获取完整的仪表板定义
appd_create_dashboard使用可选小部件创建新的仪表板
appd_update_dashboard更新仪表板属性和/或小部件
appd_add_widget_to_dashboard添加单个小部件而不替换现有小部件
appd_clone_dashboard用新名称克隆仪表板
appd_delete_dashboard删除仪表板(永久)
appd_export_dashboard将仪表板导出为可移植JSON
appd_import_dashboard从保存的JSON定义创建新的仪表板
appd_save_dashboard_file在本地构建一个完整的仪表板JSON文件,而无需在AppDynamics中创建任何内容——即可编辑和导入
appd_auto_build_dashboard自动发现层、BT和健康规则,然后一次性创建一个完整的多部分仪表板

仪表板小部件类型

小部件类型描述
TIMESERIES_GRAPH一个或多个指标的时间序列折线图
METRIC_VALUE单个聚合数(标尺瓦片)
GAUGE仪表刻度盘
PIE饼图
HEALTH_LIST健康规则状态列表。集 healthRuleIds: [id] 将小部件固定到特定的健康规则,而不是显示应用程序的所有规则。
TEXT静态文本/标签

对话示例

“我的生产应用程序的运行状况如何?” → Uses appd_get_applications + appd_get_health_violations + appd_get_anomalies

“显示订单应用程序最慢的业务交易” → Uses appd_get_business_transactions + appd_get_bt_performance

“支付服务连接到哪些数据库?” → Uses appd_get_backends typeFilter=“JDBC”

“创建一个健康规则,当WebTier上的自定义指标|RequestCount>1000时触发” → Uses appd_create_health_rule 受影响实体类型=“TIER_NODE_HEALTH”,受影响层级=“WebTier”,度量路径=“自定义度量|请求计数”

“为Checkout应用程序创建一个包含响应时间和错误率的仪表板” → Uses appd_get_applicationsappd_browse_metric_treeappd_create_dashboard

“为订单应用程序构建一个完整的监控仪表板” → Uses appd_auto_build_dashboard --自动发现所有层、BT和健康规则,一次性创建完整的仪表板

为每个URL监视器服务创建一个健康小部件,每个小部件都有自己的规则 → Uses appd_create_health_rule (每次服务一个)+ appd_create_dashboard 随着 healthRuleIds 在每一个 HEALTH_LIST 小部件

“克隆生产监控仪表板以进行暂存” → Uses appd_get_dashboardsappd_clone_dashboard

“为什么我的支付应用程序速度慢?诊断最后一个小时” → Uses appd_diagnose_issue 当application=“Payment”,durationInMins=60时,返回排名的根本原因候选者、合并的事件时间线、错误类别细分和逐步调查指南

“现在订单应用程序中是否出现任何错误?” → Uses appd_diagnose_issue 应用程序=“订单”,焦点=“错误”

健康规则——自定义指标

机器代理报告的自定义指标按节点存储在以下位置:

Application Infrastructure Performance|{Tier}|Individual Nodes|{Node}|Custom Metrics|{MetricName}

为自定义指标创建健康规则时,请使用 affectedEntityType=TIER_NODE_HEALTH 并提供 相对的 度量路径(不是完整的绝对路径):

affectedEntityType: "TIER_NODE_HEALTH"
affectedNode: "my-server-hostname"          # scope to specific node
metricPath: "Custom Metrics|MyMetric"       # relative path only

建筑

src/
├── index.ts              # Entry point, registers all tools
├── types.ts              # TypeScript interfaces
├── constants.ts          # Shared constants
├── services/
│   ├── auth.ts           # OAuth2 token management
│   └── api-client.ts     # Authenticated HTTP client
├── utils/
│   ├── error-handler.ts  # Error → MCP response
│   ├── app-resolver.ts   # App name → ID resolution
│   └── formatting.ts     # Response formatting
└── tools/                # One file per tool domain
    ├── applications.ts
    ├── health-rules.ts        # CRUD + enable/disable
    ├── health-violations.ts
    ├── anomalies.ts
    ├── business-transactions.ts
    ├── bt-performance.ts
    ├── service-endpoints.ts
    ├── tiers-nodes.ts
    ├── backends.ts
    ├── snapshots.ts
    ├── errors.ts
    ├── metrics.ts             # browse + query with rollup
    ├── dashboards.ts          # full CRUD + auto-build + HealthListWidget scoping
    └── root-cause.ts

发展

# Run in dev mode (auto-reload)
npm run dev

# Build TypeScript
npm run build

# Run built version
npm start

认证

服务器支持两种身份验证模式:

  1. OAuth2客户端凭据 (推荐):设置 APPD_CLIENT_NAME, APPD_CLIENT_SECRET,并且可选 APPD_ACCOUNT_NAME服务器自动获取并缓存令牌。
  1. API密钥:仅设置 APPD_CLIENT_NAME (作为API密钥)。不需要秘密。

许可证

ISC

目录标签

目录标签

TypeScriptClaude云端部署应用性能监控本地部署仪表盘管理健康规则管理根因分析自动化诊断

支持客户端

Claude DesktopClaudeCursor

接入字段

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

未说明

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

oauth

工具数量(toolCount,工具数)

30

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明oauth部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP