Scout Monitoring MCP Server
공식Scout의 공식 MCP는 프로덕션의 오류, 트레이스 및 메트릭 데이터를 AI 에이전트로 전송합니다.
문서
Scout Monitoring MCP
이 저장소는 Scout의 API를 통해 https://www.scoutapm.com 데이터에 접근할 수 있는 MCP 서버를 로컬에서 실행하기 위한 코드를 포함합니다. AI 어시스턴트가 Scout Monitoring 데이터에 접근할 수 있도록 풀(pull)하여 실행할 수 있는 Docker 이미지를 제공합니다.
이를 통해 Scout Monitoring의 성능 및 오류 데이터를 AI 어시스턴트가 직접 활용할 수 있습니다. Rails, Django, FastAPI, Laravel 등을 지원합니다. 트레이스와 오류 정보를 코드 라인 수준에서 얻어 AI가 편집기와 코드베이스에서 바로 수정 대상을 찾을 수 있도록 합니다. N+1 쿼리, 느린 엔드포인트, 느린 쿼리, 메모리 블로트, 처리량 문제 등 여러분이 겪는 모든 성능 문제를 작업 중인 환경에서 바로 찾아내고 설명해 줍니다.
이 도구가 여러분의 삶을 조금이라도 더 편하게 만든다면, 별표 :star: 를 눌러 주세요!
설정 마법사
Scout MCP를 구성하고 사용하기 시작하는 가장 간단한 방법은 대화형 설정 마법사를 이용하는 것입니다. 모든 사전 요구 사항과 설치 단계를 자동으로 처리해 줍니다.
npx를 통해 실행:
npx @scout_apm/wizard
소스에서 빌드 및 실행:
cd ./wizard
npm install
npm run build
node dist/wizard.js
마법사가 다음 과정을 안내합니다:
- AI 코딩 플랫폼 선택 (Cursor, Claude Code, Claude Desktop)
- Scout API 키 입력
- MCP 서버 설정 자동 구성
지원 플랫폼
현재 마법사는 다음 플랫폼의 설정을 지원합니다:
- Cursor - MCP 설정을 자동으로 구성
- Claude Code (CLI) - 실행할 올바른 명령어 제공
- Claude Desktop - Windows/Mac용 구성 파일 업데이트
그 외의 경우에는 AI 어시스턴트의 MCP 구성에 복사/붙여넣기 할 수 있는 JSON을 출력합니다.
사전 요구 사항
마법사를 사용하는 것이 시작하기 좋은 방법이지만, 수동으로 설정할 수도 있습니다. Scout Monitoring 계정을 보유하거나 생성하고 API 키를 발급받아야 합니다.
- https://scoutapm.com/users/sign_up?utm_source=github&utm_medium=github&utm_campaign=scout-mcp-local
- 애플리케이션에 Scout Agent를 설치하고 Scout 데이터를 전송하세요!
- 설정 페이지에서 API 키를 발급받거나 생성하세요.
- 이것은 "Agent Key"가 아니라 설정 페이지에서 생성할 수 있는 "API Key"입니다.
- 이 키는 읽기 전용이며 계정의 데이터에만 접근할 수 있습니다.
- Docker를 설치하세요. 아래 지침은 Docker 컨테이너를 시작할 수 있다고 가정합니다.
현재 MCP 서버는 환경 변수나 시작 시 명령줄 인수로 API 키가 설정되지 않으면 시작되지 않습니다.
설치
제공된 Docker 이미지를 사용하여 MCP 서버를 실행하는 것을 권장합니다. 이 이미지는 AI 어시스턴트에 의해 시작되도록 설계되었으며, Scout API 키로 구성됩니다. 많은 로컬 클라이언트에서 특정 위치에 MCP 서버를 실행하는 명령어를 지정할 수 있습니다. 몇 가지 예시가 아래에 제공됩니다.
Docker 이미지는 Docker Hub에서 이용할 수 있습니다.
물론, 이 저장소를 클론하여 MCP 서버를 직접 실행할 수도 있으며, uv 또는 기타 환경 관리 도구를 사용하는 것이 좋습니다.
로컬 클라이언트 구성 (예: Claude/Cursor/VS Code Copilot)
MCP를 수동으로 구성하려면, 일반적으로 AI 어시스턴트의 구성에 API 키를 환경 변수로 포함하여 MCP 서버를 실행하는 명령어를 제공하기만 하면 됩니다. JSON의 기본 형태는 다음과 같습니다 (최상위 키는 다를 수 있음):
{
"mcpServers": {
"scout-apm": {
"command": "docker",
"args": ["run", "--rm", "-i", "--env", "SCOUT_API_KEY", "scoutapp/scout-mcp-local"],
"env": { "SCOUT_API_KEY": "your_scout_api_key_here"}
}
}
}
Claude Code
claude mcp add scoutmcp -e SCOUT_API_KEY=your_scout_api_key_here -- docker run --rm -i -e SCOUT_API_KEY scoutapp/scout-mcp-local
VS Code Copilot
- VS Code Copilot 문서
- "작업 영역에 MCP 서버 추가" 옵션을 권장합니다.
Claude Desktop
Claude 구성 파일에 다음을 추가하세요:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"scout-apm": {
"command": "docker",
"args": ["run", "--rm", "-i", "--env", "SCOUT_API_KEY", "scoutapp/scout-mcp-local"],
"env": { "SCOUT_API_KEY": "your_scout_api_key_here"}
}
}
}
Scout Monitoring MCP 사용하기
Scout의 MCP는 오류 및 성능 데이터를 AI 어시스턴트의... 손에? 직접 전달하기 위한 것입니다. 트레이스와 오류 정보를 코드 라인 수준에서 얻어 AI가 편집기에서 바로 수정 대상을 찾을 수 있도록 합니다.
대부분의 어시스턴트는 원시 도구 호출과 분석을 모두 보여줍니다. 데스크톱 어시스턴트는 원하는 데이터를 탐색하기 위한 사용자 정의 JS 애플리케이션을 쉽게 만들 수 있습니다. 코드 편집기에 통합된 어시스턴트는 트레이스 데이터와 오류 백트레이스를 사용하여 코드베이스에서 바로 수정할 수 있습니다.
Scout의 MCP와 AI 어시스턴트의 다른 도구를 결합하여 다음을 수행할 수 있습니다:
- 오류 및 성능 데이터를 기반으로 풍부한 GitHub/GitLab 이슈 생성
- JIRA를 재미있게 만들기 - AI 어시스턴트가 모든 세부 정보를 포함한 티켓을 생성하도록 하기
- 특정 오류 및 성능 문제를 수정하는 PR 생성
도구
Scout MCP는 Scout APM 데이터에 접근하기 위한 다음 도구를 제공합니다:
list_apps- 사용 가능한 Scout APM 애플리케이션 목록을 마지막 활성 날짜로 선택적 필터링하여 조회get_app_metrics- 특정 애플리케이션의 개별 메트릭 데이터(response_time, throughput 등) 조회get_app_endpoints- 애플리케이션의 모든 엔드포인트를 집계된 성능 메트릭과 함께 조회get_endpoint_metrics- 애플리케이션의 특정 엔드포인트에 대한 시계열 메트릭 조회get_app_endpoint_traces- 특정 엔드포인트로 필터링된 앱의 최근 트레이스 조회get_app_trace- 모든 스팬과 상세 실행 정보가 포함된 개별 트레이스 조회get_app_error_groups- 앱의 최근 오류 그룹을 엔드포인트로 선택적 필터링하여 조회get_app_insights- N+1 쿼리, 메모리 블로트, 느린 쿼리 등 성능 인사이트 조회
리소스
Scout MCP는 AI 어시스턴트가 읽고 적용할 수 있는 구성 템플릿을 리소스로 제공합니다:
scoutapm://config-resources/{framework}- 지원되는 프레임워크 또는 라이브러리(rails, django, flask, fastapi)에 대한 설정 지침scoutapm://config-resources/list- 사용 가능한 모든 구성 템플릿 목록scoutapm://metrics- Scout APM에서 사용 가능한 모든 메트릭 목록
유용한 프롬프트
설정 및 구성
- "내 Rails 애플리케이션에 Scout 모니터링을 설정하도록 도와줘"
- "키 ABC123을 사용하여 내 Django 프로젝트용 Scout APM 구성 파일을 생성해 줘"
성능 및 모니터링
- "Scout Monitoring MCP에서 사용 가능한 도구를 요약해 줘."
- "지난 7일 동안 앱
my-app-name의 가장 느린 엔드포인트를 찾아줘. 평균 응답 시간, 처리량, P95 응답 시간을 포함한 결과를 표로 생성해 줘." - "지난 24시간 동안 앱
Foo에서 가장 빈도가 높은 오류를 보여줘. 최신 오류 세부 정보를 가져와서 백트레이스를 검토하고 수정 사항을 제안해 줘." - "앱
Bar에 대한 최근 N+1 인사이트를 가져와 줘. ID로 특정 트레이스를 가져와서 백트레이스 데이터를 기반으로 최적화하도록 도와줘."
토큰 사용량
현재 우리는 MCP 도구의 응답 크기를 엄격하게 제어하는 것보다 사용 가능한 정보를 확장하는 데 더 관심이 있습니다. AI 어시스턴트에 구성 가능한 토큰 제한(예: Claude Code export MAX_MCP_OUTPUT_TOKENS=50000)이 있는 경우, 50,000 토큰과 같이 넉넉하게 높게 설정하는 것이 좋습니다.
로컬 개발
이 프로젝트의 환경 관리 및 작업 실행에는 uv 와 taskipy 을 사용합니다.
Inspector로 실행
uv run task dev
Inspector 내에서 연결하여 API 키를 추가하고 STDIO 전송으로 설정하세요.
Docker 이미지 빌드
docker build -t scout-mcp-local .
릴리스
uv run python bump_versions.py로 브랜치를 만들고 버전을 올립니다.- 병합합니다.
- 새 버전으로 GitHub 릴리스를 생성합니다 (
gh release create v2025.11.3 --generate-notes --draft).
봇을 위한 정보:
mcp-name: com.scoutapm/scout-mcp-local