Currents

ทางการ

เปิดให้ AI Agents สามารถแก้ไขข้อผิดพลาดของ Playwright test ที่รายงานไปยัง Currents ได้

GitHub
20
ลองใช้ MCP นี้ผู้สนับสนุน

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

  • วินิจฉัยการทดสอบที่ล้มเหลว — ขอข้อมูลข้อผิดพลาด ขั้นตอน และไฟล์ที่อยู่เบื้องหลังการรัน CI ที่ล้มเหลวผ่าน currents-get-context เพื่อแก้ไขปัญหาโดยตรง
  • ตรวจสอบประสิทธิภาพการทดสอบ — รับข้อมูลสรุปการรันและเมตริกการทดสอบสำหรับโปรเจกต์ภายในช่วงวันที่โดยใช้ currents-get-project-insights
  • จัดการกฎการกักกัน — แสดงรายการ สร้าง อัปเดต เปิดใช้งาน หรือปิดใช้งานการดำเนินการที่ส่งผลต่อการทดสอบ เช่น การกักกันสเปกที่ไม่เสถียร
  • รวบรวมหลักฐานการทดสอบ — ดึงภาพหน้าจอ วิดีโอ เทรซ และไฟล์แนบจากการรัน CI ด้วย currents-get-test-evidence เพื่อใช้ในการดีบักหรือสาธิต
  • แชร์ผลลัพธ์ภายนอก — สร้างลิงก์สาธารณะที่หมดอายุได้ไปยังผลการทดสอบสำหรับผู้ที่ต้องการดูโดยไม่ต้องเข้าสู่ระบบผ่าน currents-create-share-link
  • ผสานรวมกับ Jira — สร้างหรือเชื่อมโยงปัญหาของ Jira โดยตรงจากการทดสอบที่ล้มเหลวในการรัน โดยใช้การผสานรวม Jira ขององค์กรของคุณ

เอกสาร

เซิร์ฟเวอร์ MCP ของ Currents

Unit Tests

มอบความสามารถในการมองเห็นผลการทดสอบ CI ของคุณอย่างเต็มรูปแบบให้กับเอเจนต์เขียนโค้ด AI ของคุณ เซิร์ฟเวอร์ MCP ของ Currents เชื่อมต่อเครื่องมืออย่าง Cursor และ Claude เข้ากับแดชบอร์ด Currents โดยตรง เพื่อให้เอเจนต์สามารถวินิจฉัยการทดสอบที่ไม่เสถียร ระบุจุดที่ล้มเหลว และดำเนินการกับข้อมูลการทำงานจริงได้ -- โดยไม่ต้องออกจากโปรแกรมแก้ไขของคุณ

  • ค้นหาข้อมูลรัน ไฟล์สเปก และผลการทดสอบรายบุคคลจาก CI
  • แสดงแนวโน้มข้อผิดพลาดและตัวชี้วัดประสิทธิภาพทั่วทั้งชุดการทดสอบของคุณ
  • จัดการกฎการกักกัน เว็บฮุค และการตั้งค่าโปรเจกต์โดยใช้โปรแกรม
  • ให้เอเจนต์แก้ไขสิ่งที่เสียหายโดยใช้ผลลัพธ์การทดสอบจริง ไม่ใช่การคาดเดา

Install MCP Server

เครื่องมือ

เครื่องมือคำอธิบาย
currents-list-actionsแสดงรายการแอ็กชันทั้งหมดสำหรับโปรเจกต์ พร้อมตัวกรองตามต้องการ
currents-create-actionสร้างแอ็กชันใหม่สำหรับโปรเจกต์
currents-get-actionดึงแอ็กชันเดียวตาม ID
currents-update-actionอัปเดตแอ็กชันที่มีอยู่
currents-delete-actionลบ (เก็บถาวร) แอ็กชัน
currents-enable-actionเปิดใช้งานแอ็กชันที่ถูกปิดใช้งาน
currents-disable-actionปิดใช้งานแอ็กชันที่ทำงานอยู่
currents-list-affected-testsแสดงรายการเทสต์ที่ได้รับผลกระทบจากแอ็กชัน (quarantine, skip, tag) สำหรับโปรเจกต์ภายในช่วงวันที่
currents-get-affected-test-executionsอ้างอิงตามเทสต์: แสดงรายการการรันของเทสต์หนึ่งที่แอ็กชันนำไปใช้ ภายในช่วงวันที่ พร้อม run, branch และ commit ของแต่ละรายการ
currents-get-action-executionsอ้างอิงตามแอ็กชัน: แสดงรายการการรันเทสต์ที่กฎหนึ่งถูกนำไปใช้ ครอบคลุมทุกเทสต์ที่กฎนั้นเกี่ยวข้อง ภายในช่วงวันที่
currents-get-projectsดึงข้อมูลโปรเจกต์ที่พร้อมใช้งานในแพลตฟอร์ม Currents
currents-get-projectดึงโปรเจกต์เดียวตาม ID
currents-get-project-insightsดึงเมตริกรวมของ run และเทสต์สำหรับโปรเจกต์ภายในช่วงวันที่
currents-list-pull-requestsแสดงรายการการ์ด pull-request สำหรับโปรเจกต์ (run ที่จัดกลุ่มตาม meta.pr.id)
currents-list-project-termsแสดงรายการเงื่อนไขโปรเจกต์แบบแบ่งหน้าด้วย cursor สำหรับหนึ่งประเภท (tag, branch, authorName, ฯลฯ)
currents-create-jira-issueสร้าง Jira issue จาก run test โดยใช้การผสานรวม Jira ขององค์กร
currents-link-jira-issueเชื่อมโยง Jira issue ที่มีอยู่กับ run test โดยใช้การผสานรวม Jira ขององค์กร
currents-list-jira-projectsแสดงรายการโปรเจกต์ Jira ที่พร้อมใช้งานสำหรับการผสานรวมขององค์กร
currents-list-jira-issue-typesแสดงรายการประเภท Jira issue และฟิลด์ที่กำหนดเองสำหรับโปรเจกต์ Jira
currents-get-runsดึงรายการ run สำหรับโปรเจกต์เฉพาะ พร้อมตัวกรองตามต้องการ
currents-get-run-detailsดึงรายละเอียดของ run เทสต์เฉพาะ
currents-find-runค้นหา run ด้วยพารามิเตอร์การค้นหา
currents-cancel-runยกเลิก run ที่กำลังดำเนินการอยู่
currents-reset-runรีเซ็ตไฟล์ spec ที่ล้มเหลวใน run เพื่อให้สามารถรันใหม่ได้
currents-delete-runลบ run และข้อมูลที่เกี่ยวข้องทั้งหมด
currents-cancel-run-github-ciยกเลิก run ด้วย GitHub Actions workflow run ID และหมายเลขครั้งที่พยายาม
currents-get-spec-instanceดึงข้อมูลการดีบักจากการรันเฉพาะของไฟล์ spec เทสต์ตาม instanceId
currents-get-spec-files-performanceดึงเมตริกประสิทธิภาพของไฟล์ spec สำหรับโปรเจกต์เฉพาะภายในช่วงวันที่
currents-get-tests-performanceดึงเมตริกเทสต์แบบรวมสำหรับโปรเจกต์เฉพาะภายในช่วงวันที่
currents-get-tests-signaturesสร้างลายเซ็นเทสต์ที่ไม่ซ้ำกันตามโปรเจกต์, พาธไฟล์ spec และชื่อเทสต์
currents-get-test-resultsดึงผลการดำเนินการทดสอบในอดีตสำหรับลายเซ็นการทดสอบที่ระบุ
currents-get-contextใช้เพื่อแก้ไขการทดสอบที่ล้มเหลวใน CI: คืนค่าข้อผิดพลาด ขั้นตอน และไฟล์ของการทดสอบที่ล้มเหลวของการรัน ไฟล์ spec (อินสแตนซ์) หรือการทดสอบหนึ่งรายการ — เนื้อหาเดียวกันกับ Fix ในแดชบอร์ด Currents
currents-get-errors-explorerรับเมตริกข้อผิดพลาดแบบรวมสำหรับโปรเจกต์ภายในช่วงวันที่
currents-get-test-evidenceรวบรวมอาร์ติแฟกต์หลักฐาน (ภาพหน้าจอ วิดีโอ เทรซ ไฟล์แนบ) ที่สร้างโดยการทดสอบในการรัน CI พร้อม URL ดาวน์โหลดที่ลงนามแล้วซึ่งจัดกลุ่มตามการทดสอบ
currents-create-evidence-linksสร้างลิงก์ที่แชร์ได้ไปยังหลักฐานของความพยายามทดสอบ ซึ่งให้บริการจากเทรซ Playwright และ URL ที่ชี้ไปยังลิงก์นั้น: สรุปแบบ markdown ของสิ่งที่ความพยายามทำและสิ่งที่ล้มเหลว แถบฟิล์ม วิดีโอ screencast แบบเคลื่อนไหว ภาพรวม DOM คำขอเครือข่าย และไฟล์แนบ
currents-create-sessionบันทึกเซสชันเบราว์เซอร์ที่คุณขับเคลื่อนเป็นการรัน Currents เพื่อให้สามารถอ่านและแชร์หลักฐานได้เหมือนกับการรัน CI
currents-list-webhooksแสดงรายการ webhook ทั้งหมดสำหรับโปรเจกต์
currents-create-share-linkสร้างลิงก์สาธารณะไปยังผลการทดสอบที่ใครก็ตามสามารถเปิดได้โดยไม่ต้องเข้าสู่ระบบ จนกว่าลิงก์จะหมดอายุ จุดประสงค์ "fix" คือบริบทของความล้มเหลว สำหรับเอเจนต์ที่จะแก้ไขการทดสอบ — เนื้อหาเดียวกันกับ currents-get-context โดยรวมการทดสอบที่ flaky และทำเครื่องหมายว่า flaky จุดประสงค์ "report" แสดงรายการการทดสอบทุกครั้งพร้อมความพยายามและไฟล์ สำหรับบุคคล
currents-create-webhookสร้าง webhook ใหม่สำหรับโปรเจกต์
currents-get-webhookรับ webhook เดี่ยวตาม ID
currents-update-webhookอัปเดต webhook ที่มีอยู่
currents-delete-webhookลบ webhook

ทักษะ

ทักษะของเอเจนต์ที่สอนเวิร์กโฟลว์ Currents แบบหลายขั้นตอนให้กับเอเจนต์ AI

ทักษะคำอธิบาย
browser-evidenceทดลองใช้
collect-evidenceแสดงว่างานที่คุณ implement ทำงานจริง หรือสาธิตมัน จากเทสต์ที่รันใน CI ผ่าน Currents — ลิงก์ trace ที่ digest, filmstrip และ accessibility snapshots อ่านได้ในคอมเมนต์ พร้อม screenshots, attachments และวิดีโอ
fix-failing-testsแก้ไขเทสต์ที่ล้มเหลวใน CI โดยใช้ผลลัพธ์ที่ Currents บันทึกไว้ — errors, steps, traces, screenshots และ console output

เซิร์ฟเวอร์เผยแพร่ทุกทักษะเป็นทรัพยากร MCP ดังนั้นเอเจนต์ที่เชื่อมต่อสามารถ แสดงรายการและอ่านได้โดยไม่ต้องมีสำเนาในเครื่อง:

skill://currents/collect-evidence/SKILL.md
skill://currents/collect-evidence/references/instrumentation.md

เอเจนต์ที่โหลดทักษะจากดิสก์เท่านั้นยังต้องมีสำเนา — วางไดเรกทอรีทักษะ ในตำแหน่งทักษะของเอเจนต์ (เช่น .claude/skills/ สำหรับ Claude Code)

การตั้งค่า

คีย์ API

รับคีย์ API ของ Currents โดยทำตาม คำแนะนำที่นี่

การใช้งานกับ Cursor

  1. ไปที่ Cursor Settings > MCP > Enable
  2. เพิ่มสิ่งต่อไปนี้ลงใน mcp.json ของคุณ
{
  "mcpServers": {
    "currents": {
      "command": "npx",
      "args": ["-y", "@currents/mcp"],
      "env": {
        "CURRENTS_API_KEY": "your-api-key"
      }
    }
  }
}

Claude

รันคำสั่งนี้เพื่อเพิ่ม Currents MCP ลงใน Claude Code

claude mcp add --transport stdio currents --env CURRENTS_API_KEY=<KEY> -- npx -y @currents/mcp

เพิ่มสิ่งต่อไปนี้เพื่อเปิดใช้งาน Currents MCP บน Claude Desktop (แก้ไขไฟล์ claude_desktop_config.json):

{
  "mcpServers": {
    "currents": {
      "command": "npx",
      "args": ["-y", "@currents/mcp"],
      "env": {
        "CURRENTS_API_KEY": "your-api-key"
      }
    }
  }
}

ปลายทาง MCP ระยะไกล (โฮสต์)

นอกเหนือจาก transport stdio ในเครื่องด้านบน เซิร์ฟเวอร์เดียวกันสามารถรันเป็น ปลายทาง Streamable HTTP ที่โฮสต์ (เช่น https://mcp.currents.dev/mcp) สำหรับใช้กับ ตัวเชื่อมต่อระยะไกล เช่น แอป Claude เว็บ/มือถือ

เซิร์ฟเวอร์ที่โฮสต์ไม่มีการตรวจสอบสิทธิ์ของตัวเอง แต่ละคำขอต้องมี คีย์ API ของ Currents ของคุณเป็น Bearer token ซึ่งจะถูกส่งต่อไปยัง API ของ Currents:

Authorization: Bearer <your-currents-api-key>

ตัวอย่างการกำหนดค่าไคลเอนต์ (ตัวเชื่อมต่อระยะไกล):

{
  "mcpServers": {
    "currents": {
      "url": "https://mcp.currents.dev/mcp",
      "headers": {
        "Authorization": "Bearer your-api-key"
      }
    }
  }
}

การรันเซิร์ฟเวอร์ HTTP ด้วยตัวเอง:

# from the mcp-server package
npm run build && PORT=3000 npm run start:http
# or via Docker (serves /mcp, exposes the configured PORT)
docker build -t currents-mcp . && docker run -p 3000:3000 currents-mcp

เซิร์ฟเวอร์ Node พูด HTTP ธรรมดา; TLS และโดเมนสาธารณะสิ้นสุดที่ reverse proxy / load balancer ด้านหน้าคอนเทนเนอร์ มีปลายทาง GET /healthz สำหรับการตรวจสอบความมีชีวิต

⚠️ ประกาศ

โดยการเชื่อมต่อเครื่องมือ AI (เช่น ผ่าน MCP) เข้ากับ Currents คุณกำลังให้สิทธิ์เข้าถึงคีย์ API ผลการทดสอบ และข้อมูลเมตา CI ของคุณ เป็นความรับผิดชอบของคุณในการตรวจสอบเอเจนต์หรือบริการ AI ที่คุณใช้ และตรวจสอบให้แน่ใจว่าพวกเขาจัดการข้อมูลของคุณอย่างปลอดภัย

เอกสารอ้างอิง