Scout Monitoring MCP

ทางการ

ท่อ MCP อย่างเป็นทางการของ Scout ส่งข้อมูลข้อผิดพลาด ร่องรอย และเมตริกจากระบบผลิตไปยังเอเจนต์ AI ของคุณ

คุณทำอะไรได้บ้างด้วย Scout Monitoring MCP?

  • แสดงรายการแอปที่ถูกตรวจสอบ — แสดงรายการแอปพลิเคชัน Scout APM ที่มีอยู่ โดยอาจกรองตามวันที่ใช้งานล่าสุด
  • ตรวจสอบเมตริกของแอป — ดึงข้อมูลเมตริกแต่ละรายการ เช่น เวลาตอบสนองหรือปริมาณงานสำหรับแอปพลิเคชันที่ระบุ
  • ตรวจดู endpoints — รับ endpoints ทั้งหมดของแอปพร้อมเมตริกประสิทธิภาพแบบรวม หรือเมตริกแบบอนุกรมเวลาสำหรับ endpoint เดียว
  • ตรวจสอบ traces — ดึง traces ล่าสุดสำหรับ endpoint หรือดึง trace เดียวพร้อม spans ทั้งหมดและรายละเอียดการทำงาน
  • คัดแยกข้อผิดพลาด — รับกลุ่มข้อผิดพลาดล่าสุดสำหรับแอป โดยอาจกรองตาม endpoint
  • แสดงข้อมูลเชิงลึกด้านประสิทธิภาพ — ดึงข้อมูลเชิงลึก รวมถึง N+1 queries, memory bloat และ slow queries

เอกสาร

Scout Monitoring MCP

Scout Monitoring MCP server

MCP Badge

ที่เก็บโค้ดนี้มีโค้ดสำหรับรัน MCP server ในเครื่องที่สามารถเข้าถึงข้อมูล Scout Monitoring ผ่าน API ของ Scout เราให้บริการ Docker image ที่คุณสามารถดึงและรันได้โดย AI Assistant ของคุณเพื่อเข้าถึงข้อมูล Scout Monitoring

สิ่งนี้จะนำข้อมูลประสิทธิภาพและข้อผิดพลาดของ Scout Monitoring มาสู่มือของคุณโดยตรงผ่าน AI Assistant สำหรับ Rails, Django, FastAPI, Laravel และอื่นๆ ใช้เพื่อรับ traces และ errors พร้อมข้อมูลบรรทัดของโค้ด ที่ AI สามารถใช้เพื่อแก้ไขได้ตรงใน editor และ codebase ของคุณ N+1 queries, endpoints ที่ช้า, queries ที่ช้า, memory bloat, ปัญหา throughput - ปัญหาประสิทธิภาพที่คุณพบเจอบ่อยทั้งหมดจะถูกเปิดเผย และอธิบายตรงจุดที่คุณกำลังทำงานอยู่

ถ้าสิ่งนี้ทำให้ชีวิตคุณดีขึ้นนิดหน่อย ทำไมไม่ :star: ซะล่ะ?!

Setup Wizard

วิธีที่ง่ายที่สุดในการกำหนดค่าและเริ่มใช้ Scout MCP คือการใช้ setup wizard แบบอินเทอร์แอกทีฟของเรา ซึ่งจะจัดการข้อกำหนดเบื้องต้นและขั้นตอนการติดตั้งทั้งหมดให้คุณ

รันผ่าน npx:

npx @scout_apm/wizard

สร้างและรันจากซอร์ส:

cd ./wizard
npm install
npm run build
node dist/wizard.js

wizard จะแนะนำคุณผ่านขั้นตอนต่างๆ:

  • เลือกแพลตฟอร์มเขียนโค้ดด้วย AI ของคุณ (Cursor, Claude Code, Claude Desktop)
  • ป้อน Scout API key ของคุณ
  • กำหนดค่าการตั้งค่า MCP server โดยอัตโนมัติ

แพลตฟอร์มที่รองรับ

wizard รองรับการตั้งค่าสำหรับ:

  • Cursor - กำหนดค่าการตั้งค่า MCP โดยอัตโนมัติ
  • Claude Code (CLI) - ให้คำสั่งที่ถูกต้องสำหรับการรัน
  • Claude Desktop - อัปเดตไฟล์การกำหนดค่าสำหรับ Windows/Mac

สำหรับแพลตฟอร์มอื่นๆ ทั้งหมด จะแสดง JSON ที่คุณสามารถคัดลอก/วางลงในการกำหนดค่า MCP ของ AI Assistant ได้

ข้อกำหนดเบื้องต้น

Wizard เป็นวิธีที่ดีในการเริ่มต้น แต่คุณยังสามารถตั้งค่าด้วยตนเองได้ คุณจะต้องมีหรือสร้างบัญชี Scout Monitoring และรับ API key

  1. สมัคร สมาชิก
  2. ติดตั้ง Scout Agent ในแอปพลิเคชันของคุณและส่งข้อมูล Scout!
    • Ruby
    • Python
    • PHP
    • หากคุณกำลังลองใช้ในเครื่อง ตรวจสอบให้แน่ใจว่าได้ตั้งค่า monitor: true, errors_enabled: true ไว้ในการกำหนดค่าของคุณเพื่อประสบการณ์ที่ดีที่สุด
  3. เยี่ยมชม settings เพื่อรับหรือสร้าง API key
    • นี่คือ ไม่ใช่ "Agent Key" ของคุณ แต่เป็น "API Key" ที่สามารถสร้างได้ใน หน้า Settings
    • นี่คือ key แบบอ่านอย่างเดียวที่สามารถเข้าถึงข้อมูลในบัญชีของคุณได้เท่านั้น
  4. ติดตั้ง Docker คำแนะนำด้านล่างถือว่าคุณสามารถเริ่ม Docker container ได้

MCP server จะไม่เริ่มทำงานในปัจจุบันหากไม่ได้ตั้งค่า API key ไม่ว่าจะใน environment หรือผ่าน command-line argument ตอนเริ่มต้น

การติดตั้ง

เราแนะนำให้ใช้ Docker image ที่ให้มาเพื่อรัน MCP server มันถูกออกแบบมาให้เริ่มโดย AI Assistant ของคุณและกำหนดค่าด้วย Scout API key ของคุณ ไคลเอนต์ในเครื่องหลายตัวอนุญาตให้ระบุคำสั่งสำหรับรัน MCP server ในตำแหน่ง ใดตำแหน่งหนึ่ง ตัวอย่างบางส่วนมีให้ด้านล่าง

Docker image มีให้บริการบน Docker Hub

แน่นอน คุณสามารถโคลน repo นี้และรัน MCP server โดยตรงได้เสมอ แนะนำให้ใช้ uv หรือ เครื่องมือจัดการ environment อื่นๆ

กำหนดค่าไคลเอนต์ในเครื่อง (เช่น Claude/Cursor/VS Code Copilot)

หากคุณต้องการกำหนดค่า MCP ด้วยตนเอง โดยปกติแล้วหมายถึงการระบุคำสั่งสำหรับรัน MCP server พร้อม API key ของคุณใน environment ในการกำหนดค่าของ AI Assistant นี่คือรูปแบบของ 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
Cursor

Install MCP Server

ตรวจสอบให้แน่ใจว่าได้อัปเดตค่า SCOUT_API_KEY เป็น api key จริงของคุณใน Arguments ใน Cursor Settings > MCP

VS Code Copilot
Claude Desktop

เพิ่มสิ่งต่อไปนี้ในไฟล์ config ของ 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

MCP ของ Scout ถูกออกแบบมาเพื่อนำข้อมูลข้อผิดพลาดและประสิทธิภาพมาสู่... มือ? ของ AI Assistant ของคุณ ใช้เพื่อรับ traces และ errors พร้อมข้อมูลบรรทัดของโค้ดที่ AI สามารถใช้เพื่อแก้ไข ได้ตรงใน editor ของคุณ

assistant ส่วนใหญ่จะแสดงทั้งการเรียกเครื่องมือแบบดิบและทำการวิเคราะห์ assistant บนเดสก์ท็อป สามารถสร้างแอปพลิเคชัน JS แบบกำหนดเองเพื่อสำรวจข้อมูลที่คุณต้องการได้อย่างง่ายดาย assistant ที่ผสานรวมใน code editor สามารถใช้ข้อมูล trace และ error backtrace เพื่อแก้ไข ได้ตรงใน codebase ของคุณ

รวม MCP ของ Scout กับเครื่องมืออื่นๆ ของ AI Assistant เพื่อ:

  • สร้าง GitHub/GitLab issues ที่สมบูรณ์จากข้อมูลข้อผิดพลาดและประสิทธิภาพ
  • ทำให้ JIRA สนุก - ให้ AI Assistant สร้างตั๋วพร้อมรายละเอียดทั้งหมด
  • สร้าง PR ที่แก้ไขข้อผิดพลาดและปัญหาประสิทธิภาพเฉพาะเจาะจง

เครื่องมือ

Scout MCP มีเครื่องมือต่อไปนี้สำหรับเข้าถึงข้อมูล Scout APM:

  • list_apps - แสดงรายการแอปพลิเคชัน Scout APM ที่มีอยู่ พร้อมตัวกรองตามวันที่ใช้งานล่าสุด
  • get_app_metrics - รับข้อมูลเมตริกแต่ละรายการ (response_time, throughput ฯลฯ) สำหรับแอปพลิเคชันเฉพาะ
  • get_app_endpoints - รับ endpoints ทั้งหมดสำหรับแอปพลิเคชันพร้อมเมตริกประสิทธิภาพแบบรวม
  • get_endpoint_metrics - รับเมตริก timeseries สำหรับ endpoint เฉพาะในแอปพลิเคชัน
  • get_app_endpoint_traces - รับ traces ล่าสุดสำหรับแอปที่กรองตาม endpoint เฉพาะ
  • get_app_trace - รับ trace แต่ละรายการพร้อม spans ทั้งหมดและข้อมูลการดำเนินการโดยละเอียด
  • get_app_error_groups - รับกลุ่มข้อผิดพลาดล่าสุดสำหรับแอป พร้อมตัวกรองตาม endpoint ได้
  • get_app_insights - รับข้อมูลเชิงลึกด้านประสิทธิภาพ รวมถึง N+1 queries, memory bloat และ slow queries

ทรัพยากร

Scout MCP มีเทมเพลตการกำหนดค่าเป็นทรัพยากรที่ AI assistant ของคุณสามารถอ่านและนำไปใช้ได้:

  • scoutapm://config-resources/{framework} - คำแนะนำการตั้งค่าสำหรับ framework หรือไลบรารีที่รองรับ (rails, django, flask, fastapi)
  • scoutapm://config-resources/list - แสดงรายการเทมเพลตการกำหนดค่าที่มีอยู่ทั้งหมด
  • scoutapm://metrics - รายการเมตริกทั้งหมดที่มีสำหรับ Scout APM

Prompts ที่มีประโยชน์

การตั้งค่าและการกำหนดค่า

  • "ช่วยฉันตั้งค่า Scout monitoring สำหรับแอปพลิเคชัน Rails ของฉัน"
  • "สร้างไฟล์ config Scout APM สำหรับโปรเจกต์ Django ของฉันด้วย key ABC123"

ประสิทธิภาพและการตรวจสอบ

  • "สรุปเครื่องมือที่มีอยู่ใน Scout Monitoring MCP"
  • "ค้นหา endpoints ที่ช้าที่สุดสำหรับแอป my-app-name ใน 7 วันที่ผ่านมา สร้างตาราง พร้อมผลลัพธ์รวมถึงเวลา response เฉลี่ย, throughput และเวลา response P95"
  • "แสดงข้อผิดพลาดที่เกิดบ่อยที่สุดสำหรับแอป Foo ใน 24 ชั่วโมงที่ผ่านมา รับ รายละเอียดข้อผิดพลาดล่าสุด ตรวจสอบ backtrace และแนะนำวิธีแก้ไข"
  • "รับข้อมูลเชิงลึก n+1 ล่าสุดสำหรับแอป Bar ดึง trace เฉพาะตาม id และช่วยฉัน ปรับแต่งตามข้อมูล backtrace"

การใช้ Token

ปัจจุบันเราให้ความสนใจกับการขยายข้อมูลที่มีอยู่มากกว่าการควบคุม ขนาด response จากเครื่องมือ MCP ของเราอย่างเคร่งครัด หาก AI Assistant ของคุณมีขีดจำกัด token ที่กำหนดค่าได้ (เช่น Claude Code export MAX_MCP_OUTPUT_TOKENS=50000) เราแนะนำให้ ตั้งค่าให้สูงอย่างใจกว้าง เช่น 50,000 tokens

การพัฒนาในเครื่อง

เราใช้ uv และ taskipy เพื่อจัดการ environment และรันงานสำหรับโปรเจกต์นี้

รันด้วย Inspector

uv run task dev

เชื่อมต่อภายใน inspector เพื่อเพิ่ม API key ตั้งค่าเป็น STDIO transport

สร้าง Docker image

docker build -t scout-mcp-local .

การเผยแพร่

  1. สร้าง branch และเพิ่มเวอร์ชันด้วย uv run python bump_versions.py
  2. รวมการเปลี่ยนแปลงนั้น
  3. สร้าง GitHub release ด้วยเวอร์ชันใหม่ (gh release create v2025.11.3 --generate-notes --draft)

การเผยแพร่ release จะ push แท็ก v* และ CI จะเผยแพร่ Docker image, แพ็กเกจ PyPI และจากนั้น รายการ MCP Registry:

  • server.json → com.scoutapm/scout-mcp-local (server นี้; เวอร์ชันของมันถูกเพิ่มโดย bump_versions.py)
  • server.remote.json → com.scoutapm/scout-monitoring (server ที่โฮสต์ที่ https://scoutapm.com/mcp) เพิ่ม version ด้วยตนเองเมื่อคุณเปลี่ยน metadata ของมัน เวอร์ชันที่ไม่เปลี่ยนแปลงจะถูกข้าม

คีย์ MCP Registry

registry ตรวจสอบว่าเราเป็นเจ้าของ namespace com.scoutapm/* ผ่าน DNS TXT record ที่ scoutapm.com apex ซึ่งเก็บ public key แบบ Ed25519 CI ลงชื่อเข้าใช้ด้วย private key ที่ตรงกันจาก repository secret MCP_REGISTRY_PRIVATE_KEY หากต้องการหมุนเวียน:

openssl genpkey -algorithm Ed25519 -out key.pem
# Public key for the TXT record: replace the existing v=MCPv1 record, don't add a second one
echo "v=MCPv1; k=ed25519; p=$(openssl pkey -in key.pem -pubout -outform DER | tail -c 32 | base64)"
# Private key (hex) for the MCP_REGISTRY_PRIVATE_KEY secret
openssl pkey -in key.pem -noout -text | grep -A3 "priv:" | tail -n +2 | tr -d ' :\n'

สำหรับ bots:

mcp-name: com.scoutapm/scout-mcp-local