Testmo MCP Server
Enables AI assistants to interact with Testmo test management platform for creating, reading, updating, and deleting test cases, managing folders, and organizing test runs through natural language.
README
Testmo MCP Server
A Model Context Protocol (MCP) server that provides seamless integration with Testmo test management platform. Built with FastMCP, this server enables AI assistants to interact directly with your Testmo instance for test case management.
Features
- 📋 Test Case Management - Create, read, update, and delete test cases
- 📁 Folder Organization - Create and manage folders to organize test cases
- 🔍 Project Discovery - List projects, templates, and milestones
- ✅ Step-by-Step Tests - Create detailed test cases with steps and expected results
- 🏃 Test Run Support - List and manage test runs
- 🔧 Debug Tools - Built-in API debugging capabilities
Prerequisites
- Python 3.10+
- A Testmo account with API access
- API token from your Testmo instance
Installation
1. Clone the Repository
git clone https://github.com/filipljoljic/Testmo-MCP.git
cd Testmo-MCP
2. Create Virtual Environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
3. Install Dependencies
pip install -r requirements.txt
4. Configure Environment Variables
Set your Testmo credentials as environment variables:
export TESTMO_BASE_URL="https://your-instance.testmo.net"
export TESTMO_TOKEN="your_api_token_here"
Getting your API token:
- Log into your Testmo instance
- Go to Settings → API
- Generate a new API token
- Copy the token and use it in the environment variable
Usage
Running the MCP Server
python3 testmoMCP.py
The server will start and be ready to accept MCP connections from compatible AI assistants.
Integrating with Claude Desktop
Add the following to your Claude Desktop configuration (claude_desktop_config.json):
{
"mcpServers": {
"testmo": {
"command": "python3",
"args": ["/path/to/Testmo-MCP/testmoMCP.py"],
"env": {
"TESTMO_BASE_URL": "https://your-instance.testmo.net",
"TESTMO_TOKEN": "your_api_token_here"
}
}
}
}
Integrating with Cursor
Add to your Cursor MCP settings:
{
"mcpServers": {
"testmo": {
"command": "python3",
"args": ["/path/to/Testmo-MCP/testmoMCP.py"],
"env": {
"TESTMO_BASE_URL": "https://your-instance.testmo.net",
"TESTMO_TOKEN": "your_api_token_here"
}
}
}
}
Available Tools
Project Management
| Tool | Description |
|---|---|
list_projects |
List all projects to find project IDs |
get_project_templates |
Get available templates for a project |
get_project_folders |
List folders within a project |
get_milestones |
Get milestones for a project |
Test Case Operations
| Tool | Description |
|---|---|
create_test_case |
Create a new test case with steps |
create_test_case_with_steps_json |
Create test case with JSON-formatted steps |
create_test_case_raw |
Create test case with raw JSON payload |
get_test_case |
Get details of a specific test case |
list_test_cases |
List test cases in a project |
update_test_case |
Update an existing test case |
delete_test_cases |
Delete one or more test cases |
Folder Management
| Tool | Description |
|---|---|
create_folder |
Create a new folder for organizing test cases |
Test Run Operations
| Tool | Description |
|---|---|
list_test_runs |
List test runs in a project |
create_manual_test_run |
Create a manual test run (note: limited API support) |
Debugging
| Tool | Description |
|---|---|
debug_api_test |
Test API connectivity and view configuration |
Examples
Creating a Test Case with Steps
Using natural language with an AI assistant:
"Create a test case called 'User Login Flow' with steps to navigate to login, enter credentials, and verify successful login"
The assistant will use the create_test_case tool with:
project_id: 1
title: "User Login Flow"
description: "Verify user can successfully log in to the application"
steps: "1. Navigate to login page | Expected: Login page loads
2. Enter valid credentials | Expected: Fields accept input
3. Click Login button | Expected: User is logged in and redirected to dashboard"
Listing Projects
"Show me all available Testmo projects"
The assistant will call list_projects and return:
Found Projects:
ID: 1 | Name: Web Application | Active: True
ID: 2 | Name: Mobile App | Active: True
Creating Organized Test Cases
"Create a folder called 'Authentication' in project 1, then create a test case inside it"
# First creates folder
create_folder(project_id=1, name="Authentication")
# Then creates test case in that folder
create_test_case(project_id=1, folder_id=<new_folder_id>, title="Login Test", ...)
API Reference
This MCP server integrates with the Testmo REST API v1. Key endpoints used:
GET /api/v1/projects- List projectsPOST /api/v1/projects/{id}/cases- Create test casesGET /api/v1/projects/{id}/cases- List test casesPATCH /api/v1/projects/{id}/cases- Update test casesDELETE /api/v1/projects/{id}/cases- Delete test casesGET /api/v1/projects/{id}/folders- List foldersPOST /api/v1/projects/{id}/folders- Create folders
Priority Values
When creating test cases, use these priority IDs:
| ID | Priority |
|---|---|
| 1 | Low |
| 2 | Medium |
| 3 | High |
| 4 | Critical |
Time Estimates
Estimates are specified in minutes:
| Value | Duration |
|---|---|
| 15 | 15 minutes |
| 60 | 1 hour |
| 480 | 8 hours (1 day) |
Troubleshooting
API Connection Issues
- Verify your
TESTMO_BASE_URLis correct (should be likehttps://your-instance.testmo.net) - Check that your API token is valid and has appropriate permissions
- Use the
debug_api_testtool to diagnose connectivity issues
Test Case Creation Fails
- Ensure you're using a valid
project_id(uselist_projectsfirst) - For step-based test cases, get the correct
template_idusingget_project_templates - Verify folder exists if specifying
folder_id
Steps Not Showing
Make sure to:
- Use the "Case (steps)" template - get its ID via
get_project_templates - Format steps correctly:
"1. Step description | Expected: expected result"
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.