Connects Claude to your TestDino test management platform so you can query test runs, debug failures, and manage test cases through conversation. You get 27 tools spanning automated test analysis (run history, case details, failure patterns) and manual testing workflows (create test cases and suites, plan releases, spin up manual runs, assign testers, record verdicts). The debug tool aggregates historical failure data across executions to surface patterns and error categories. The audit feature lets you analyze local test code quality without uploading files. Authentication uses a TestDino PAT that grants access across all your organizations and projects. Useful when you're triaging CI failures or coordinating manual test campaigns and want to skip the dashboard.
Public tool metadata for what this MCP can expose to an agent.
healthVerify your connection and validate your PAT. Shows account information, available organizations, and projects with access permissions.
Verify your connection and validate your PAT. Shows account information, available organizations, and projects with access permissions.
No parameter schema in public metadata yet.
list_testrunsBrowse test runs with filters (branch, time interval, author, commit, environment). Supports pagination and batch operations.
Browse test runs with filters (branch, time interval, author, commit, environment). Supports pagination and batch operations.
No parameter schema in public metadata yet.
get_run_detailsGet comprehensive details about a specific test run including statistics, test suites, test cases, and metadata. Supports batch operations (comma-separated IDs, max 20).
Get comprehensive details about a specific test run including statistics, test suites, test cases, and metadata. Supports batch operations (comma-separated IDs, max 20).
No parameter schema in public metadata yet.
list_testcaseList test cases with comprehensive filtering (by test run, status, browser, error category, branch, environment, commit, author, spec file, tags, runtime, artifacts, and more). Can filter by test run criteria or directly by test case properties.
List test cases with comprehensive filtering (by test run, status, browser, error category, branch, environment, commit, author, spec file, tags, runtime, artifacts, and more). Can filter by test run criteria or directly by test case properties.
No parameter schema in public metadata yet.
get_testcase_detailsGet detailed information about a specific test case including error messages, stack traces, test steps, console logs, and artifacts. Can identify by testcase_id alone or by testcase_name with testrun_id/counter.
Get detailed information about a specific test case including error messages, stack traces, test steps, console logs, and artifacts. Can identify by testcase_id alone or by testcase_name with testrun_id/counter.
No parameter schema in public metadata yet.
debug_testcaseDebug a test case by aggregating historical failure data across multiple executions. Returns failure patterns, error categories, common error messages, error locations, browser-specific issues, and a pre-formatted debugging prompt for AI analysis.
Debug a test case by aggregating historical failure data across multiple executions. Returns failure patterns, error categories, common error messages, error locations, browser-specific issues, and a pre-formatted debugging prompt for AI analysis.
No parameter schema in public metadata yet.
get_debug_evidenceOne call returns the flake verdict with per-attempt signatures, the regression boundary (last pass → first fail), and short-lived download links for every stored artifact (trace, screenshots, visual diff images). JSON or markdown.
One call returns the flake verdict with per-attempt signatures, the regression boundary (last pass → first fail), and short-lived download links for every stored artifact (trace, screenshots, visual diff images). JSON or markdown.
No parameter schema in public metadata yet.
get_flake_verdictCompare a test's retry attempts within one run and say whether the failure repeats: deterministic, flaky, or inconclusive.
Compare a test's retry attempts within one run and say whether the failure repeats: deterministic, flaky, or inconclusive.
No parameter schema in public metadata yet.
verify_fixAfter a new run lands, check whether a fix held against the run you saw the failure in: fixed, not_fixed, changed_failure, still_failing, unstable, no_runs_since_baseline, or baseline_not_found.
After a new run lands, check whether a fix held against the run you saw the failure in: fixed, not_fixed, changed_failure, still_failing, unstable, no_runs_since_baseline, or baseline_not_found.
No parameter schema in public metadata yet.
get_audit_reportFetch the audit context (server-curated prompt + top failing / flaky / slow tests for the branch) to start a new audit, browse historical reports, or retrieve one by reportId.
Fetch the audit context (server-curated prompt + top failing / flaky / slow tests for the branch) to start a new audit, browse historical reports, or retrieve one by reportId.
No parameter schema in public metadata yet.
submit_audit_reportSubmit a completed audit report (score, findings, recommendations, markdown) to TestDino.
Submit a completed audit report (score, findings, recommendations, markdown) to TestDino.
No parameter schema in public metadata yet.
show_audit_reportShow a saved audit as a scorecard: score and band, where the points were lost, the top issues, and a link to the report.
Show a saved audit as a scorecard: score and band, where the points were lost, the top issues, and a link to the report.
No parameter schema in public metadata yet.
list_manual_test_casesSearch and list manual test cases with comprehensive filtering (project, suite, status, priority, severity, type, layer, behavior, automation status, tags, flaky status).
Search and list manual test cases with comprehensive filtering (project, suite, status, priority, severity, type, layer, behavior, automation status, tags, flaky status).
No parameter schema in public metadata yet.
get_manual_test_caseGet detailed information about a specific manual test case including steps, custom fields, preconditions, postconditions, and all metadata.
Get detailed information about a specific manual test case including steps, custom fields, preconditions, postconditions, and all metadata.
No parameter schema in public metadata yet.
create_manual_test_caseCreate new manual test cases with steps, preconditions, postconditions, and metadata (priority, severity, type, layer, behavior).
Create new manual test cases with steps, preconditions, postconditions, and metadata (priority, severity, type, layer, behavior).
list_manual_test_suitesList test suite hierarchy to find suite IDs for organization. Supports filtering by parent suite.
List test suite hierarchy to find suite IDs for organization. Supports filtering by parent suite.
No parameter schema in public metadata yet.
create_manual_test_suiteCreate new test suite folders to organize test cases. Supports nested suites by providing parentSuiteId.
Create new test suite folders to organize test cases. Supports nested suites by providing parentSuiteId.
No parameter schema in public metadata yet.
list_automated_testsList the Playwright tests TestDino has seen for a project, the source of pwTestId + fullTitle for linking. Filter by spec file, suite, or free-text title.
List the Playwright tests TestDino has seen for a project, the source of pwTestId + fullTitle for linking. Filter by spec file, suite, or free-text title.
No parameter schema in public metadata yet.
get_test_case_linksShow which automated tests are linked to a manual test case, with their latest automation result.
Show which automated tests are linked to a manual test case, with their latest automation result.
No parameter schema in public metadata yet.
link_automated_testLink one Playwright test to a manual test case so its automation result shows on the case.
Link one Playwright test to a manual test case so its automation result shows on the case.
No parameter schema in public metadata yet.
unlink_automated_testRemove a link between a manual test case and a Playwright test.
Remove a link between a manual test case and a Playwright test.
No parameter schema in public metadata yet.
bulk_link_automated_testsLink up to 500 case/test pairs in one call, with per-item results so a partial failure is visible.
Link up to 500 case/test pairs in one call, with per-item results so a partial failure is visible.
No parameter schema in public metadata yet.
list_releasesBrowse releases for a project with filters (search, type, completion status, parent release). Releases group runs + sessions and can nest up to 3 levels deep.
Browse releases for a project with filters (search, type, completion status, parent release). Releases group runs + sessions and can nest up to 3 levels deep.
No parameter schema in public metadata yet.
get_releaseGet full details for one release including dates, status, parent/root hierarchy, and rolled-up progress stats across all runs in this release and its descendants. Accepts internal _id or counter-style ID like MS-12.
Get full details for one release including dates, status, parent/root hierarchy, and rolled-up progress stats across all runs in this release and its descendants. Accepts internal _id or counter-style ID like MS-12.
No parameter schema in public metadata yet.
create_releaseCreate a new release with name, type, dates, and optional parent for nesting.
Create a new release with name, type, dates, and optional parent for nesting.
No parameter schema in public metadata yet.
update_releaseModify an existing release — name, dates, completion flags, type, linked issues. Closed releases are still editable.
Modify an existing release — name, dates, completion flags, type, linked issues. Closed releases are still editable.
No parameter schema in public metadata yet.
list_manual_runsBrowse manual runs in a project. Filter by status, state, environment, release, tags, or free-text name search.
Browse manual runs in a project. Filter by status, state, environment, release, tags, or free-text name search.
No parameter schema in public metadata yet.
get_manual_runGet full details for one run — test stats (total/passed/failed/blocked/untested), contributors, attachments, linked release. Accepts internal _id or counter-style ID like RUN-12.
Get full details for one run — test stats (total/passed/failed/blocked/untested), contributors, attachments, linked release. Accepts internal _id or counter-style ID like RUN-12.
No parameter schema in public metadata yet.
create_manual_runCreate a new manual run. Choose selectionMode='all' for every case in the project, or 'selected' with suite/case IDs to scope it. Attach to a release with releaseId.
Create a new manual run. Choose selectionMode='all' for every case in the project, or 'selected' with suite/case IDs to scope it. Attach to a release with releaseId.
No parameter schema in public metadata yet.
update_manual_runModify run metadata — name, environment, state, release attachment, tags. Closed runs are read-only except for releaseId.
Modify run metadata — name, environment, state, release attachment, tags. Closed runs are read-only except for releaseId.
No parameter schema in public metadata yet.
list_run_test_casesGet the per-case execution rows inside a run — exactly what the UI shows in the run's test-case table. Each row includes the current assignee and current result. Filter by assignee (email or _id) or result.
Get the per-case execution rows inside a run — exactly what the UI shows in the run's test-case table. Each row includes the current assignee and current result. Filter by assignee (email or _id) or result.
No parameter schema in public metadata yet.
update_run_test_caseSet the assignee and/or result for one test case inside a run — same as clicking "Assign to" + the result pill in the UI. Works even on untested cases (auto-creates the per-case row on first edit). Accepts caseKey (TC-156), test case _id, or the internal tcm_rtc_… ID.
Set the assignee and/or result for one test case inside a run — same as clicking "Assign to" + the result pill in the UI. Works even on untested cases (auto-creates the per-case row on first edit). Accepts caseKey (TC-156), test case _id, or the internal tcm_rtc_… ID.
No parameter schema in public metadata yet.
list_sessionsBrowse exploratory sessions in a project. Filter by status, state, sessionType, assignee (email or _id), release, tags.
Browse exploratory sessions in a project. Filter by status, state, sessionType, assignee (email or _id), release, tags.
No parameter schema in public metadata yet.
get_sessionGet full details for one session — name, mission, status, assignee, linked release, findings. Accepts internal _id or counter-style ID like SES-12.
Get full details for one session — name, mission, status, assignee, linked release, findings. Accepts internal _id or counter-style ID like SES-12.
No parameter schema in public metadata yet.
create_sessionCreate a new exploratory session with mission/charter, sessionType, assignee, estimate, and optional release attachment.
Create a new exploratory session with mission/charter, sessionType, assignee, estimate, and optional release attachment.
get_run_error_clustersGroup a run's failing tests by error signature to triage at scale. Surfaces clusters of tests that share the same root-cause error, with an optional status filter (all, failed, flaky). Use it after list_testruns to understand why a run failed.
Group a run's failing tests by error signature to triage at scale. Surfaces clusters of tests that share the same root-cause error, with an optional status filter (all, failed, flaky). Use it after list_testruns to understand why a run failed.
No parameter schema in public metadata yet.
connect_integrationReturn an OAuth connect URL for a provider (Jira, Linear, Asana, monday.com, GitHub). Show the URL to the user to authorize; do not open it programmatically.
Return an OAuth connect URL for a provider (Jira, Linear, Asana, monday.com, GitHub). Show the URL to the user to authorize; do not open it programmatically.
No parameter schema in public metadata yet.
get_integration_statusReport whether a provider is connected for a project. Set includeCreateOptions to also fetch the fields available for issue creation. Call this before create_external_issue.
Report whether a provider is connected for a project. Set includeCreateOptions to also fetch the fields available for issue creation. Call this before create_external_issue.
No parameter schema in public metadata yet.
create_external_issueFile an issue in a connected tracker (Jira, Linear, Asana, monday.com) from a TestDino source entity such as a failing test case or run. Supports preview and idempotent retries via idempotencyKey.
File an issue in a connected tracker (Jira, Linear, Asana, monday.com) from a TestDino source entity such as a failing test case or run. Supports preview and idempotent retries via idempotencyKey.
No parameter schema in public metadata yet.
get_external_issueFetch previously created issues by their IDs or keys (one or many) and return their current status in the provider (Jira, Linear, Asana).
Fetch previously created issues by their IDs or keys (one or many) and return their current status in the provider (Jira, Linear, Asana).
No parameter schema in public metadata yet.
get_ai_insightsTestDino's AI analysis at three levels: project overview, run, and test case. Returns a disabled status when AI features are turned off for the project (Settings → AI).
TestDino's AI analysis at three levels: project overview, run, and test case. Returns a disabled status when AI features are turned off for the project (Settings → AI).
No parameter schema in public metadata yet.
get_trace_analysisResolve a failing test's hosted Playwright trace to a short-lived download URL and return a runbook for local trace-CLI debugging (open → actions → snapshot → close).
Resolve a failing test's hosted Playwright trace to a short-lived download URL and return a runbook for local trace-CLI debugging (open → actions → snapshot → close).
No parameter schema in public metadata yet.
get_rerun_selectionWork out which of a finished run's tests a re-run would execute — failed, flaky, both, or a hand-picked list — as the exact Playwright --test-list lines plus the CLI command that runs them locally. Also returns rerun_mechanism. Read-only; nothing runs.
Work out which of a finished run's tests a re-run would execute — failed, flaky, both, or a hand-picked list — as the exact Playwright --test-list lines plus the CLI command that runs them locally. Also returns rerun_mechanism. Read-only; nothing runs.
No parameter schema in public metadata yet.
rerun_testStart the re-run in CI. Needs confirm: true after the user says yes, and needs mode — same-commit or latest. There is no default mode; an omitted one is refused. Every refusal happens before anything is dispatched.
Start the re-run in CI. Needs confirm: true after the user says yes, and needs mode — same-commit or latest. There is no default mode; an omitted one is refused. Every refusal happens before anything is dispatched.
No parameter schema in public metadata yet.
list_test_controlsList the tests under Test Controls as the Test Controls page shows them: quarantined, critical, the tests you watch, or flaky candidates for quarantine.
List the tests under Test Controls as the Test Controls page shows them: quarantined, critical, the tests you watch, or flaky candidates for quarantine.
No parameter schema in public metadata yet.
get_test_controlsOne test's assignee, critical flag, watch state and active quarantine, plus the runs a quarantine kept from failing in the last 90 days.
One test's assignee, critical flag, watch state and active quarantine, plus the runs a quarantine kept from failing in the last 90 days.
No parameter schema in public metadata yet.
get_quarantineOne quarantine with its full history and the runs it covered.
One quarantine with its full history and the runs it covered.
No parameter schema in public metadata yet.
quarantine_testsQuarantine 1–100 tests until an end date, with a required reason; dry_run shows what would happen first.
Quarantine 1–100 tests until an end date, with a required reason; dry_run shows what would happen first.
No parameter schema in public metadata yet.
update_quarantineExtend a quarantine, change its assignee or note, or link a ticket.
Extend a quarantine, change its assignee or note, or link a ticket.
A Model Context Protocol (MCP) server that connects TestDino to AI agents. This server enables you to interact with your TestDino test data directly through natural language commands.
Quick Start
Add this to your MCP client config (~/.cursor/mcp.json for Cursor), then restart the client: