
TestRail
STDIOMCP server for TestRail integration with standardized protocol access to test entities.
MCP server for TestRail integration with standardized protocol access to test entities.
A Model Context Protocol (MCP) server for TestRail that allows interaction with TestRail's core entities through a standardized protocol.
To install testrail-mcp for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @sker65/testrail-mcp --client claude
Clone this repository:
git clone https://github.com/yourusername/testrail-mcp.git cd testrail-mcp
Create and activate a virtual environment:
python -m venv .venv source .venv/bin/activate # On Windows: .venv\Scripts\activate
Install dependencies:
pip install -e .
The TestRail MCP server requires specific environment variables to authenticate with your TestRail instance. These must be set before running the server.
Create a .env
file in the root directory of the project:
TESTRAIL_URL=https://your-instance.testrail.io
[email protected]
TESTRAIL_API_KEY=your-api-key
Important Notes:
TESTRAIL_URL
should be the full URL to your TestRail instance (e.g., https://example.testrail.io
)TESTRAIL_USERNAME
is your TestRail email address used for loginTESTRAIL_API_KEY
is your TestRail API key (not your password)
Verify that the configuration is loaded correctly:
uvx testrail-mcp --config
This will display your TestRail configuration information, including your URL, username, and the first few characters of your API key for verification.
If you're using this server with a client like Claude Desktop or Cursor, make sure the environment variables are accessible to the process running the server. You may need to set these variables in your system environment or ensure they're loaded from the .env
file.
The server can be run directly using the installed script:
uvx testrail-mcp
This will start the MCP server in stdio mode, which can be used with MCP clients that support stdio communication.
In Claude Desktop, add a new server with the following configuration:
{ "mcpServers": { "testrail": { "command": "uvx", "args": [ "testrail-mcp" ], "env": { "TESTRAIL_URL": "https://your-instance.testrail.io", "TESTRAIL_USERNAME": "[email protected]", "TESTRAIL_API_KEY": "your-api-key" } } } }
In Cursor, add a new custom tool with the following configuration:
{ "name": "TestRail MCP", "command": "uvx", "args": [ "testrail-mcp" ], "env": { "TESTRAIL_URL": "https://your-instance.testrail.io", "TESTRAIL_USERNAME": "[email protected]", "TESTRAIL_API_KEY": "your-api-key" } }
In Windsurf, add a new tool with the following configuration:
{ "name": "TestRail MCP", "command": "uvx", "args": [ "testrail-mcp" ], "env": { "TESTRAIL_URL": "https://your-instance.testrail.io", "TESTRAIL_USERNAME": "[email protected]", "TESTRAIL_API_KEY": "your-api-key" } }
For testing and debugging, you can use the MCP Inspector:
npx @modelcontextprotocol/inspector \ -e TESTRAIL_URL=<your-url> \ -e TESTRAIL_USERNAME=<your-username> \ -e TESTRAIL_API_KEY=<your-api-key> \ uvx testrail-mcp
This will open a web interface where you can explore and test all the available tools and resources.
This server is built using:
MIT