项目简介
Scout APM 监控 MCP 服务器是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在将您的 Scout APM 监控数据直接提供给 AI 助手。通过此服务器,AI 助手能够以标准化的方式查询、分析和理解应用程序的性能瓶颈、错误详情、请求追踪以及如 N+1 查询、内存泄漏等深度洞察,从而辅助开发者更快定位并解决问题。
主要功能点
- 应用列表与指标: 查看所有在 Scout APM 上注册的应用程序,并获取其关键性能指标,如平均响应时间、吞吐量和错误率。
- 端点性能分析: 深入分析应用程序中各个端点的性能表现,识别加载缓慢、请求频繁的端点,并获取其聚合指标。
- 请求追踪: 检索特定应用程序或端点的最新请求追踪(Trace)数据,详细了解请求的执行路径、各个组件的耗时和依赖关系。
- 错误组管理: 获取应用程序的错误组列表,查看高频错误、最新错误详情、错误回溯信息,帮助快速诊断和修复问题。
- 性能洞察: 自动发现并报告常见的性能问题,例如 N+1 查询、内存膨胀和慢速数据库查询,提供数据以辅助 AI 助手给出优化建议。
安装步骤
- 获取 Scout APM API 密钥:
- 如果您是 Scout APM 用户,请访问 Scout APM 设置页面 获取您的 API 密钥。
- 如果您还不是用户,请先 注册 Scout APM 账户,然后前往设置页面获取 API 密钥。
- 请注意,这是一个只读的 "API Key",而非您的 "Agent Key"。
- 安装 Docker: 确保您的系统上已安装并运行 Docker。Scout APM MCP 服务器最推荐通过 Docker 容器运行。
- 运行 MCP 服务器:
- 推荐方式(由 AI 助手配置启动): 大多数 AI 助手客户端支持直接配置启动 MCP 服务器的命令。请参考下方“服务器配置”部分,将配置信息填入您的 AI 助手设置中。
- 手动运行 Docker 容器: 您也可以手动拉取并运行 Docker 镜像:
请将 'your_scout_api_key_here' 替换为您的实际 API 密钥。docker run -it --rm -e SCOUT_API_KEY=your_scout_api_key_here scoutapp/scout-mcp-local:latest - 本地开发运行: 如果您想进行本地开发或直接运行代码:
# 克隆仓库 git clone https://github.com/scoutapp/scout-mcp-local.git cd scout-mcp-local # 安装 Python 依赖 (推荐使用 uv) uv venv source .venv/bin/activate pip install -e . # 运行服务器 (确保设置了 SCOUT_API_KEY 环境变量) export SCOUT_API_KEY=your_scout_api_key_here python -m scout_mcp.main
服务器配置 (针对 MCP 客户端)
以下是典型的 MCP 客户端(如 Claude Code、Cursor、VS Code Copilot)所需配置 Scout APM MCP 服务器的 JSON 格式示例。请根据您使用的 AI 助手的具体配置界面,填入这些信息。
{ "mcpServers": { "scout-apm": { "command": "docker", "args": ["run", "--rm", "-i", "--env", "SCOUT_API_KEY", "scoutapp/scout-mcp-local:latest"], "env": { "SCOUT_API_KEY": "your_scout_api_key_here"} } } }
- '"scout-apm"': 这是您为该 MCP 服务器实例定义的名称,AI 助手会用此名称引用它。
- '"command": "docker"': 指定启动 MCP 服务器所使用的命令。
- '"args": [...]': 传递给 'docker' 命令的参数列表。
- '"run"': 运行 Docker 容器。
- '"--rm"': 容器退出时自动移除。
- '"-i"': 保持标准输入打开,这是 MCP 服务器通过 Stdio 协议通信所必需的。
- '"--env", "SCOUT_API_KEY"': 将宿主机环境中的 'SCOUT_API_KEY' 传递给 Docker 容器。
- '"scoutapp/scout-mcp-local:latest"': 要运行的 Docker 镜像名称及其标签。
- '"env": { "SCOUT_API_KEY": "your_scout_api_key_here"}': 设置环境变量 'SCOUT_API_KEY' 及其值。您的 AI 助手将使用此密钥来认证并访问 Scout APM 数据。请将 '"your_scout_api_key_here"' 替换为您的实际 API 密钥。
基本使用方法
一旦 Scout APM MCP 服务器配置并启动,您就可以通过 AI 助手与之进行自然语言交互,查询和分析您的应用程序性能数据。以下是一些您可以尝试的提示示例:
- "总结 Scout Monitoring MCP 中提供的所有工具的功能和用途。"
- "查找应用 'MyRailsApp' 在过去 7 天内响应时间最慢的端点。生成一个表格,包含端点名称、平均响应时间、P95 响应时间和总吞吐量。"
- "显示应用 'Foo' 在过去 24 小时内出现频率最高的错误。获取最新错误的详细信息,查看其回溯信息,并建议可能的修复方案。"
- "获取应用 'Bar' 的任何近期 N+1 查询洞察。拉取其中一个特定追踪(Trace)的完整数据,并根据回溯数据帮助我优化它。"
- "针对应用 'MyDjangoApp',获取 '/api/users' 端点在昨天和今天之间响应时间的变化趋势。"
信息
分类
开发者工具