Currents

官方

讓 AI 代理修復回報給 Currents 的 Playwright 測試失敗。

你可以用 Currents MCP 做什麼?

  • 診斷失敗的測試 — 透過 currents-get-context 詢問失敗的 CI 執行背後的錯誤、步驟和檔案,直接解決問題。
  • 檢視測試效能 — 使用 currents-get-project-insights 取得專案在指定日期範圍內的彙總執行與測試指標。
  • 管理隔離規則 — 列出、建立、更新、啟用或停用影響測試的動作,例如隔離不穩定的規格。
  • 收集測試證據 — 使用 currents-get-test-evidence 從 CI 執行中擷取螢幕截圖、影片、追蹤和附件,用於除錯或示範。
  • 外部共享結果 — 建立一個公開且限時的測試結果連結,讓任何人無需登入即可檢視,透過 currents-create-share-link 達成。
  • 與 Jira 整合 — 使用您組織的 Jira 整合,直接從失敗的執行測試中建立或連結 Jira 問題。

文件

Currents MCP Server

Unit Tests

讓您的 AI 編碼代理程式完整掌握 CI 測試結果。Currents MCP Server 可將 Cursor 和 Claude 等工具直接連接到您的 Currents 儀表板,讓代理程式能診斷不穩定的測試、 pinpoint 失敗原因,並根據真實執行資料採取行動——無需離開您的編輯器。

  • 查詢 CI 中的執行、規格檔案和個別測試結果
  • 呈現測試套件中的錯誤趨勢和效能指標
  • 以程式化方式管理隔離規則、Webhook 和專案設定
  • 讓代理程式使用實際測試輸出(而非猜測)來修復問題

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列出在指定日期範圍內,受專案動作(隔離、跳過、標籤)影響的測試。
currents-get-affected-test-executions以測試為鍵:列出在指定日期範圍內,某動作套用至單一測試的執行記錄,並包含每次執行的執行序、分支與提交。
currents-get-action-executions以動作為鍵:列出在指定日期範圍內,某規則套用至所有受影響測試的執行記錄。
currents-get-projects擷取 Currents 平台中可用的專案。
currents-get-project依 ID 取得單一專案。
currents-get-project-insights取得指定日期範圍內專案的彙總執行序與測試指標。
currents-list-pull-requests列出專案的拉取請求卡片(依 meta.pr.id 分組的執行序)。
currents-list-project-terms列出單一類型(標籤、分支、作者名稱等)的游標分頁專案詞彙。
currents-create-jira-issue使用組織的 Jira 整合,從執行測試建立 Jira 問題。
currents-link-jira-issue使用組織的 Jira 整合,將現有 Jira 問題連結至執行測試。
currents-list-jira-projects列出組織整合可用的 Jira 專案。
currents-list-jira-issue-types列出 Jira 專案的問題類型與自訂欄位。
currents-get-runs擷取特定專案的執行序清單,並可選擇性篩選。
currents-get-run-details擷取特定測試執行序的詳細資料。
currents-find-run依查詢參數尋找執行序。
currents-cancel-run取消進行中的執行序。
currents-reset-run重設執行序中失敗的規格檔案,以允許重新執行。
currents-delete-run刪除執行序及其所有關聯資料。
currents-cancel-run-github-ci依 GitHub Actions 工作流程執行 ID 與嘗試編號取消執行序。
currents-get-spec-instance依 instanceId 擷取特定測試規格檔案執行的除錯資料。
currents-get-spec-files-performance擷取指定日期範圍內特定專案的規格檔案效能指標。
currents-get-tests-performance擷取指定日期範圍內特定專案的彙總測試指標。
currents-get-tests-signatures根據專案、規格檔案路徑與測試標題產生唯一的測試簽章。
currents-get-test-results擷取特定測試簽章的歷史測試執行結果。
currents-get-context用於修復在 CI 中失敗的測試:回傳執行、規格檔(實例)或單一測試中失敗測試的錯誤、步驟與檔案——與 Currents 儀表板中的「Fix」內容相同。
currents-get-errors-explorer取得專案在指定日期範圍內的彙總錯誤指標。
currents-get-test-evidence收集 CI 執行中測試所產生的證據工件(螢幕截圖、影片、追蹤、附件),並提供按測試分組的簽署下載 URL。
currents-create-evidence-links建立可分享的連結,指向測試嘗試的證據,內容由其 Playwright 追蹤提供,並包含指向其上的 URL:該嘗試做了什麼及失敗原因的精簡 Markdown 摘要、影片條帶、動畫螢幕錄影、DOM 快照、網路請求與附件。
currents-create-session將您驅動的瀏覽器工作階段記錄為 Currents 執行,使其證據能像 CI 執行一樣被讀取與分享。
currents-list-webhooks列出專案的所有 Webhook。
currents-create-share-link建立測試結果的公開連結,任何人在無需登入的情況下即可開啟,直到連結過期為止。用途「fix」是失敗情境,供將修復測試的代理程式使用——與 currents-get-context 內容相同,並包含標記為不穩定的 flaky 測試。用途「report」則列出每個測試及其嘗試與檔案,供人員檢視。
currents-create-webhook為專案建立新的 Webhook。
currents-get-webhook依 ID 取得單一 Webhook。
currents-update-webhook更新現有的 Webhook。
currents-delete-webhook刪除 Webhook。

技能

教導 AI 代理執行多步驟 Currents 工作流程的代理技能。

技能說明
browser-evidence實驗性。
collect-evidence展示您實作的工作確實有效,或進行示範,透過 Currents 在 CI 中執行的測試 — 一個追蹤連結,其摘要、影片片段和無障礙快照可在評論中閱讀,加上螢幕截圖、附件和影片。
fix-failing-tests修復在 CI 中失敗的測試,使用 Currents 記錄的結果 — 錯誤、步驟、追蹤、螢幕截圖和主控台輸出。

伺服器將每個技能發布為 MCP 資源,因此已連線的代理可以 列出並讀取它們,無需本機副本:

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

僅從磁碟載入技能的代理仍需要一份副本 — 將技能 目錄放在代理的技能位置(例如 Claude Code 的 .claude/skills/)。

設定

API 金鑰

依照此處的說明取得 Currents API 金鑰。

與 Cursor 搭配使用

  1. 前往 Cursor 設定 > MCP > 啟用
  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

新增以下內容以在 Claude Desktop 上啟用 Currents MCP(編輯 claude_desktop_config.json 檔案):

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

遠端(託管)MCP 端點

除了上述本機 stdio 傳輸之外,同一伺服器也可以作為託管的 Streamable HTTP 端點(例如 https://mcp.currents.dev/mcp)執行,用於搭配 遠端連接器(例如 Claude 網頁/行動應用程式)使用。

託管伺服器本身不執行任何驗證。每個請求必須攜帶 您的 Currents API 金鑰作為 Bearer 權杖,該權杖會傳遞至 Currents API:

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 和公開網域在 容器前方的反向代理 / 負載平衡器終止。提供 GET /healthz 端點 用於存活檢查。

⚠️ 注意事項

透過將 AI 工具(例如透過 MCP)連線至 Currents,您即授予它們存取您的 API 金鑰、測試結果和 CI 中繼資料的權限。您有責任審查您使用的任何 AI 代理或服務,並確保它們安全地處理您的資料。

參考資料