TestRail MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TESTRAIL_URL | Yes | The URL of your TestRail instance (e.g., https://your-instance.testrail.io) | |
| TESTRAIL_API_KEY | Yes | Your TestRail API key | |
| TESTRAIL_USERNAME | Yes | Your TestRail username (e.g., your-email@example.com) |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| getSuitesB | Retrieves all test suites for a specified TestRail project / 指定されたTestRailプロジェクトの全テストスイートを取得します |
| getSuiteA | Retrieves details of a specific test suite by ID / 特定のテストスイートの詳細をIDで取得します |
| addSuiteB | Creates a new test suite in the specified project / 指定されたプロジェクトに新しいテストスイートを作成します |
| updateSuiteC | Updates an existing test suite / 既存のテストスイートを更新します |
| getProjectsB | Retrieves all TestRail projects / すべてのTestRailプロジェクトを取得します |
| getProjectA | Retrieves details of a specific TestRail project by ID / 特定のTestRailプロジェクトの詳細をIDで取得します |
| getCaseA | Retrieves complete details for a single test case including steps, expected results, and prerequisites. REQUIRED: caseId. |
| getCasesA | 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 full details. |
| addCaseA | 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 objects with 'content' and 'expected' fields). For simple text steps, use customSteps and customExpected instead. Use customFields for any additional custom fields (e.g., {custom_case_security_score: 'high'}). |
| updateCaseA | 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 'content' and 'expected' fields). For simple text steps, use customSteps and customExpected instead. Use customFields for any additional custom fields (e.g., {custom_case_security_score: 'high'}). |
| deleteCaseB | Deletes a test case from TestRail / TestRailからテストケースを削除します |
| getCaseTypesB | Retrieves all available test case types in TestRail / TestRailで利用可能な全テストケースタイプを取得します |
| getCaseFieldsB | Retrieves all available test case fields in TestRail / TestRailで利用可能な全テストケースフィールドを取得します |
| copyToSectionA | Copies specified test cases to a target section while keeping the originals / 指定されたテストケースを対象のセクションにコピーし、元のケースは保持します |
| moveToSectionC | Moves specified test cases to a target section / 指定されたテストケースを対象のセクションに移動します |
| getCaseHistoryB | Retrieves the change history of a test case including updates to fields and custom fields / テストケースの変更履歴(フィールドとカスタムフィールドの更新を含む)を取得します |
| updateCasesA | 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 customFields for any additional custom fields (e.g., {custom_case_security_score: 'high'}). |
| addBddA | 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). |
| getBddB | Exports a BDD test case as a .feature file in Gherkin format. REQUIRED: caseId. |
| getSectionA | Retrieves details of a specific section by ID / 特定のセクションの詳細をIDで取得します |
| getSectionsA | 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パラメータでページネーションをサポートします。 |
| addSectionC | Creates a new section in a TestRail project / TestRailプロジェクトに新しいセクションを作成します |
| moveSectionC | Moves a section to a new position in the test hierarchy / テスト階層内の新しい位置にセクションを移動します |
| updateSectionC | Updates an existing section / 既存のセクションを更新します |
| deleteSectionC | Deletes a section / セクションを削除します |
| getRunsC | Retrieves all test runs for a specified TestRail project / 指定されたTestRailプロジェクトの全テスト実行を取得します |
| getRunC | Retrieves details of a specific test run by ID / 特定のテスト実行の詳細をIDで取得します |
| addRunB | Creates a new test run in a TestRail project / TestRailプロジェクトに新しいテスト実行を作成します |
| updateRunC | Updates an existing test run / 既存のテスト実行を更新します |
| getTestsA | Retrieves a list of tests for a test run / テスト実行に含まれるテスト一覧を取得します |
| getTestA | Retrieves complete details for a single test, including all fields such as status, type, and results / 単一のテストの完全な詳細(ステータス、タイプ、結果などのすべてのフィールドを含む)を取得します |
| getResultsC | Retrieves test results for a specific test / 特定のテストのテスト結果を取得します |
| getResultsForCaseA | Retrieves test results for a specific test case in a test run / テスト実行内の特定のテストケースのテスト結果を取得します |
| getResultsForRunC | Retrieves all test results for a test run / テスト実行の全テスト結果を取得します |
| addResultForCaseC | Adds a test result for a specific test case in a test run / テスト実行内の特定のテストケースにテスト結果を追加します |
| addResultsForCasesB | Adds test results for multiple test cases in a test run / テスト実行内の複数のテストケースにテスト結果を追加します |
| getPlansC | Retrieves all test plans for a specified TestRail project / 指定されたTestRailプロジェクトの全テストプランを取得します |
| addPlanA | Creates a new test plan in a TestRail project / TestRailプロジェクトに新しいテストプランを作成します |
| addPlanEntryC | Adds a new test plan entry to an existing test plan / 既存のテストプランに新しいテストプランエントリーを追加します |
| addRunToPlanEntryB | Adds a new test run to an existing plan entry / 既存のプランエントリーに新しいテストランを追加します |
| getMilestonesB | Retrieves all milestones for a specified TestRail project / 指定されたTestRailプロジェクトの全マイルストーンを取得します |
| getSharedStepsC | Retrieves all shared steps for a specified TestRail project / 指定されたTestRailプロジェクトの全共有ステップを取得します |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/bun913/mcp-testrail'
If you have feedback or need assistance with the MCP directory API, please join our Discord server