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-domain.testrail.io) | |
| TESTRAIL_API_KEY | Yes | Your TestRail API key (can be generated from My Settings > API Keys) | |
| TESTRAIL_USERNAME | Yes | Your TestRail email address |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_projectsB | Get all TestRail projects |
| get_projectC | Get a specific project by ID |
| get_suitesC | Get all test suites for a project |
| get_suiteC | Get a specific test suite by ID |
| add_suiteC | Create a new test suite |
| update_suiteC | Update an existing test suite |
| get_sectionsC | Get all sections for a project/suite |
| get_sectionC | Get a specific section by ID |
| add_sectionC | Create a new section |
| update_sectionC | Update an existing section |
| delete_sectionC | Delete a section |
| move_sectionC | Move a section to another parent or position |
| get_casesC | Get test cases for a project/suite |
| get_caseC | Get a specific test case by ID |
| add_caseC | Create a new test case |
| update_caseC | Update an existing test case |
| delete_caseC | Delete a test case |
| get_case_typesB | Get all available test case types |
| get_case_fieldsB | Get all available test case fields |
| get_history_for_caseC | Get the edit history for a test case |
| copy_cases_to_sectionC | Copy test cases to another section |
| move_cases_to_sectionC | Move test cases to another section |
| delete_casesC | Delete multiple test cases |
| get_runsB | Get test runs for a project |
| get_runB | Get a specific test run by ID |
| add_runC | Create a new test run |
| update_runC | Update an existing test run |
| close_runC | Close a test run |
| delete_runC | Delete a test run |
| get_testsC | Get tests for a test run |
| get_testC | Get a specific test by ID |
| get_resultsC | Get results for a test |
| get_results_for_caseC | Get results for a test case in a run |
| get_results_for_runC | Get results for a test run |
| add_resultC | Add a test result |
| add_result_for_caseC | Add a test result for a specific case in a run |
| add_results_for_casesC | Add multiple test results for cases in a run |
| add_resultsC | Add multiple test results by test IDs |
| get_plansC | Get test plans for a project |
| get_planB | Get a specific test plan by ID |
| add_planC | Create a new test plan |
| add_plan_entryC | Add test runs to a test plan |
| add_run_to_plan_entryC | Add a test run to an existing plan entry |
| update_planC | Update an existing test plan |
| update_plan_entryC | Update a test plan entry |
| update_run_in_plan_entryC | Update a test run inside a plan entry |
| close_planC | Close a test plan |
| delete_planC | Delete a test plan |
| delete_plan_entryC | Delete a test plan entry |
| delete_run_from_plan_entryC | Delete a test run from a plan entry |
| get_milestonesC | Get milestones for a project |
| get_milestoneC | Get a specific milestone by ID |
| add_milestoneC | Create a new milestone |
| update_milestoneC | Update an existing milestone |
| delete_milestoneC | Delete a milestone |
| get_userC | Get a user by ID |
| get_current_userB | Get the current authenticated user |
| get_user_by_emailB | Get a user by email address |
| get_usersC | Get all users (optionally filtered by project) |
| get_statusesB | Get all available test result statuses |
| get_case_statusesB | Get all available test case statuses (Enterprise) |
| get_prioritiesB | Get all available test case priorities |
| get_templatesC | Get all templates for a project |
| get_configsC | Get all configurations for a project |
| get_result_fieldsB | Get all available result custom fields |
| add_attachment_to_caseC | Add an attachment to a test case |
| add_attachment_to_resultC | Add an attachment to a test result |
| add_attachment_to_runC | Add an attachment to a test run |
| add_attachment_to_planC | Add an attachment to a test plan |
| add_attachment_to_plan_entryC | Add an attachment to a test plan entry |
| get_attachmentC | Get/download an attachment by ID |
| get_attachments_for_caseC | Get all attachments for a test case |
| get_attachments_for_testC | Get all attachments for a test |
| get_attachments_for_runB | Get all attachments for a test run |
| get_attachments_for_planC | Get all attachments for a test plan |
| get_attachments_for_plan_entryC | Get all attachments for a test plan entry |
| delete_attachmentC | Delete an attachment |
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
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/TenBarrel6/testrail-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server