TestRail MCP Server (valvacchs/PlayWright-MCP-Repo) is an MCP server listed on the M8ven Trust Index. It scores 47 out of 100, grade D. It declares 40 tools. No publisher has claimed this listing.

D
Caution
47/100

TestRail MCP Server

Enables management of TestRail projects, suites, test cases, runs, and results through natural language.

Caution. Specific findings reduced this grade. They are listed on the page. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

Code Verified⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

valvacchs

Source: Glama

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
🚨
Known vulnerabilities in dependencies: 1 critical, 1 high
Affects packages this MCP installs at runtime. Upgrade or remove the affected dependency.
⚠️
Tests do not pass
Either the test suite is broken or the code regressed. Either way the published behaviour can’t be verified by the publisher’s own tests.
🔐
You'll be asked for 1 credential: TESTRAIL_API_KEY
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// tools this server exposes40 tools

These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.

getCase

Retrieves complete details for a single test case including steps, expected results, and prerequisites. REQUIRED: caseId.

getCases

Retrieves test cases list with basic fields only (excludes steps/expected results for performance). REQUIRED: projectId, suiteId. OPTIONAL: createdBy, filter, limit (default 50), milestoneId, offset (default 0), priorityId, refs, sectionId, templateId, typeId, updatedBy, labelId. Use getCase for ful

addCase

Creates a new test case in TestRail. REQUIRED: sectionId, title. OPTIONAL: typeId, priorityId, templateId, customSteps, customExpected, customStepsSeparated, customFields, etc. Use getCaseTypes to find valid typeId values. NOTE: templateId=2 is required to use customStepsSeparated (array of step obj

updateCase

Updates an existing test case. REQUIRED: caseId. OPTIONAL: title, typeId, priorityId, templateId, customSteps, customExpected, customStepsSeparated, customFields, etc. Only specified fields will be updated. NOTE: templateId=2 is required to use customStepsSeparated (array of step objects with 'conte

deleteCase

Deletes a test case from TestRail / TestRailからテストケースを削除します

getCaseTypes

Retrieves all available test case types in TestRail / TestRailで利用可能な全テストケースタイプを取得します

getCaseFields

Retrieves all available test case fields in TestRail / TestRailで利用可能な全テストケースフィールドを取得します

copyToSection

Copies specified test cases to a target section while keeping the originals / 指定されたテストケースを対象のセクションにコピーし、元のケースは保持します

moveToSection

Moves specified test cases to a target section / 指定されたテストケースを対象のセクションに移動します

getCaseHistory

Retrieves the change history of a test case including updates to fields and custom fields / テストケースの変更履歴(フィールドとカスタムフィールドの更新を含む)を取得します

updateCases

Updates multiple test cases simultaneously with the same field values / 複数のテストケースを同じフィールド値で一括更新します. NOTE: templateId=2 is required to use customStepsSeparated (array of step objects with 'content' and 'expected' fields). For simple text steps, use customSteps and customExpected instead. Use customFi

addBdd

Imports/uploads a .feature file (Gherkin BDD scenario) into a TestRail section. Creates a new test case with BDD template (template_id=4) and populates the custom_testrail_bdd_scenario field. REQUIRED: sectionId, featureContent (raw Gherkin text including Feature:, Scenario:, Given/When/Then).

getBdd

Exports a BDD test case as a .feature file in Gherkin format. REQUIRED: caseId.

getMilestones

Retrieves all milestones for a specified TestRail project / 指定されたTestRailプロジェクトの全マイルストーンを取得します

getPlans

Retrieves all test plans for a specified TestRail project / 指定されたTestRailプロジェクトの全テストプランを取得します

addPlan

Creates a new test plan in a TestRail project / TestRailプロジェクトに新しいテストプランを作成します

addPlanEntry

Adds a new test plan entry to an existing test plan / 既存のテストプランに新しいテストプランエントリーを追加します

addRunToPlanEntry

Adds a new test run to an existing plan entry / 既存のプランエントリーに新しいテストランを追加します

getProjects

Retrieves all TestRail projects / すべてのTestRailプロジェクトを取得します

getProject

Retrieves details of a specific TestRail project by ID / 特定のTestRailプロジェクトの詳細をIDで取得します

getResults

Retrieves test results for a specific test / 特定のテストのテスト結果を取得します

getResultsForCase

Retrieves test results for a specific test case in a test run / テスト実行内の特定のテストケースのテスト結果を取得します

getResultsForRun

Retrieves all test results for a test run / テスト実行の全テスト結果を取得します

addResultForCase

Adds a test result for a specific test case in a test run / テスト実行内の特定のテストケースにテスト結果を追加します

addResultsForCases

Adds test results for multiple test cases in a test run / テスト実行内の複数のテストケースにテスト結果を追加します

getRuns

Retrieves all test runs for a specified TestRail project / 指定されたTestRailプロジェクトの全テスト実行を取得します

getRun

Retrieves details of a specific test run by ID / 特定のテスト実行の詳細をIDで取得します

addRun

Creates a new test run in a TestRail project / TestRailプロジェクトに新しいテスト実行を作成します

updateRun

Updates an existing test run / 既存のテスト実行を更新します

getSection

Retrieves details of a specific section by ID / 特定のセクションの詳細をIDで取得します

getSections

Retrieves sections for a specified project and suite. Supports pagination via limit and offset parameters (default: limit=250, offset=0). Use _links.next to determine if more pages are available. / 指定されたプロジェクトとスイートのセクションを取得します。limitとoffsetパラメータでページネーションをサポートします。

addSection

Creates a new section in a TestRail project / TestRailプロジェクトに新しいセクションを作成します

moveSection

Moves a section to a new position in the test hierarchy / テスト階層内の新しい位置にセクションを移動します

updateSection

Updates an existing section / 既存のセクションを更新します

deleteSection

Deletes a section / セクションを削除します

getSharedSteps

Retrieves all shared steps for a specified TestRail project / 指定されたTestRailプロジェクトの全共有ステップを取得します

getSuites

Retrieves all test suites for a specified TestRail project / 指定されたTestRailプロジェクトの全テストスイートを取得します

getSuite

Retrieves details of a specific test suite by ID / 特定のテストスイートの詳細をIDで取得します

addSuite

Creates a new test suite in the specified project / 指定されたプロジェクトに新しいテストスイートを作成します

updateSuite

Updates an existing test suite / 既存のテストスイートを更新します

// known CVEs in dependencies1 critical1 high

Disclosed vulnerabilities in this server's declared npm dependencies (via OSV). Whether each is reachable depends on the installed versions.

criticalform-data@4.0.0GHSA-fjxv-7rqg-78g4

form-data uses unsafe random function in form-data for choosing boundary

highform-data@4.0.0GHSA-hmw2-7cc7-3qxx

form-data: CRLF injection in form-data via unescaped multipart field names and filenames

Depend on this server? Get alerted when its CVEs change.Watch this server free →
// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
🔐 secretTESTRAIL_API_KEY"": "YOUR_API_KEY" // Replace with your TestRail API key
configTESTRAIL_URL"": "https://your-instance.testrail.io", // Replace with your TestRail URL
configTESTRAIL_USERNAME"": "your-email@example.com", // Replace with your TestRail username
// quality suggestions

Dependencies

14 dependencies, 3 flagged: @playwright/cli, @playwright/test, allure-playwright

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

40/40 tools missing one or more hints — getCase (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); getCases (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); addCase (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +37 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Tool inputs are validated

Only 19/40 tool handlers declare input schemas (48%)

Declare an inputSchema with zod/joi/yup on every tool definition.

Tool test coverage

31/40 tools referenced in tests (78%)

Write tests that reference each tool by name so every tool has at least one test.

Tests pass

npm test failed — tests do not pass

Make sure npm test runs cleanly. Common cause: missing build step or missing env vars.

Production dependencies are patched

1 critical, 1 high severity in production deps — form-data@4.0.0 (critical), form-data@4.0.0 (high)

Run npm audit fix, or upgrade the affected packages to a non-vulnerable version.

Domain consistency

npm scope @bun913 doesn't match GitHub owner valvacchs

Use the same org name across GitHub, npm, and your homepage so users can verify the publisher.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 7 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Verified](https://m8ven.ai/badge/mcp/valvacchs/playwright-mcp-repo?variant=verified)](https://m8ven.ai/mcp/valvacchs/playwright-mcp-repo)
Shows verification status without the grade. Want the grade badge instead? Remove ?variant=verified from the URL.
commit: 3d5ef76f49c5dcd3d6e70b747085533b2dfda9da
code hash: 9ea6f1827157d9a404763501596f7f3a310157b8c1d9ff1880e19293bdcef713
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client