使用说明
弹性apm-mcp服务器
通过Kibana API查询APM数据(服务列表、事务性能、错误和运行时度量)的MCP服务器。
要求
- Node.js 18或更高版本
- Kibana 8.x(使用Kibana内部端点,行为可能因版本而异)
设置
在Claude Desktop或Claude Code设置中添加以下内容:无需单独安装 npx直接运行到。
克劳德代码
直接添加到CLI(API Key认证,推荐):
claude mcp add elastic-apm \
-e KIBANA_URL=http://your-kibana-host:5601 \
-e KIBANA_API_KEY=your-base64-encoded-api-key \
-- npx -y elastic-apm-mcp-server
要使用ID/PW身份验证,请:
claude mcp add elastic-apm \
-e KIBANA_URL=http://your-kibana-host:5601 \
-e KIBANA_USERNAME=your-username \
-e KIBANA_PASSWORD=your-password \
-- npx -y elastic-apm-mcp-server
或者 ~/.claude/settings.json直接添加到:
{
"mcpServers": {
"elastic-apm": {
"command": "npx",
"args": ["-y", "elastic-apm-mcp-server"],
"env": {
"KIBANA_URL": "http://your-kibana-host:5601",
"KIBANA_API_KEY": "your-base64-encoded-api-key"
}
}
}
}
克劳德桌面
~/Library/Application Support/Claude/claude_desktop_config.json 以相同的格式添加到(MacOS)。
环境变量
| 环境变量 | 必需 | 说明 |
|---|---|---|
KIBANA_URL |
O | Kibana连接URL |
KIBANA_API_KEY △Kibana/Elasticsearch API Key(base64编码的键值)。设置时优先使用此方法 |
||
KIBANA_USERNAME △Kibana用户名(未使用API Key时需要) |
||
KIBANA_PASSWORD △Kibana密码(未使用API Key时需要) |
认证可选择两种方式之一。
KIBANA_API_KEY设置,或KIBANA_USERNAME+KIBANA_PASSWORD请设置。如果两者都有,则API Key优先。
交付工具
| 工具 | 说明 |
|---|---|
list_services |
查看APM中注册的服务列表 |
get_service_overview |
查看特定服务的事务性能和错误摘要 |
get_transactions |
查看特定服务的事务性能统计信息 |
get_errors |
查看特定服务的错误组 |
get_service_metrics |
查询特定服务的运行时度量,如CPU/内存(按代理类型) |
get_jvm_memory_pools |
按pool(Eden/Survivor/Old Gen)查询JVM堆的时间序列(仅Java)。按pool提供used/commited/max+floor/avg/peak |
get_transaction_samples |
查看特定事务的示例跟踪(traceId),可过滤较慢的事务 |
get_trace |
使用trace ID查看事务的完整span(水球)以确定瓶颈区域 |
使用示例
设置MCP后,用自然语言向Claude请求即可。
- “请出示APM服务列表”
- “请查询auth-service最近1小时的错误”
- “检查payment-service事务性能”
- “payment-service中最慢的一个请求,让我看看你在哪里花时间。”
- “让我看看payment-service的工作时间(09~18点)Old Gen使用量比自己max的多少。”
许可证
国际学生委员会
