Testmo MCP Server

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.

Category
Visit Server

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.

Python MCP License

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:

  1. Log into your Testmo instance
  2. Go to SettingsAPI
  3. Generate a new API token
  4. 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 projects
  • POST /api/v1/projects/{id}/cases - Create test cases
  • GET /api/v1/projects/{id}/cases - List test cases
  • PATCH /api/v1/projects/{id}/cases - Update test cases
  • DELETE /api/v1/projects/{id}/cases - Delete test cases
  • GET /api/v1/projects/{id}/folders - List folders
  • POST /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

  1. Verify your TESTMO_BASE_URL is correct (should be like https://your-instance.testmo.net)
  2. Check that your API token is valid and has appropriate permissions
  3. Use the debug_api_test tool to diagnose connectivity issues

Test Case Creation Fails

  1. Ensure you're using a valid project_id (use list_projects first)
  2. For step-based test cases, get the correct template_id using get_project_templates
  3. Verify folder exists if specifying folder_id

Steps Not Showing

Make sure to:

  1. Use the "Case (steps)" template - get its ID via get_project_templates
  2. 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

  • Testmo for providing a great test management platform
  • FastMCP for the MCP server framework
  • Anthropic for the Model Context Protocol specification

Recommended Servers

playwright-mcp

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

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.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

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.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured