testmo-mcp
Connect Claude, Cursor, and other AI assistants to your Testmo test management instance to manage test cases, folders, runs, milestones, and CI/CD automation.
Ask AI about testmo-mcp
Powered by Claude Β· Grounded in docs
I know everything about testmo-mcp. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
Testmo MCP Server
A Python Model Context Protocol (MCP) server for Testmo β bring AI-assisted test management to Claude Desktop, Cursor, and any MCP-compatible client.
Testmo MCP is an open-source MCP server that connects AI assistants like Claude Desktop, Claude Code, and Cursor directly to your Testmo test management instance. Manage test cases, folders, milestones, runs, attachments, and CI/CD automation sources β all through natural language, without leaving your AI client.
Built for QA engineers, SDETs, and developers who use Testmo and want to stop clicking through the UI for repetitive work. Powered by FastMCP and the Testmo REST API.
β¨ Features
- π§ͺ Full test case management β create, read, update, delete, search, and bulk-operate on Testmo cases
- π Folder operations β create, rename, move, delete, and traverse folder trees recursively
- π Bulk & batch operations β create or update up to 100 cases per call, or unlimited with auto-batching
- π Test runs & results β list runs, fetch run details, and filter run results
- π― Milestones β list and inspect milestones across projects
- π Attachments β upload, list, and delete file attachments on test cases
- π€ CI/CD automation sources β manage automation runs, parallel threads, and result submission
- π Issue integrations β list GitHub, Jira, and other issue connections
- π³ Recursive helpers β fetch entire folder subtrees of cases in one call
- π οΈ Field mapping utilities β resolve priority, type, and state IDs without guessing
- π€ Works with any MCP client β Claude Desktop, Claude Code, Cursor, Cline, and more
π Quick start
Prerequisites
- Python 3.11 or newer
uvpackage manager- A Testmo instance and API key (Settings β API Keys in Testmo)
- An MCP-compatible client (Claude Desktop, Cursor, etc.)
Installation
git clone https://github.com/strelec00/testmo-mcp.git
cd testmo-mcp
uv sync
Connect to Claude Desktop
Edit your Claude Desktop config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"testmo": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/testmo-mcp",
"run",
"testmo-mcp.py"
],
"env": {
"TESTMO_URL": "https://your-instance.testmo.net",
"TESTMO_API_KEY": "your-api-key"
}
}
}
}
Restart Claude Desktop. The Testmo tools will appear in the MCP tools list.
Connect to Cursor
Open Cursor Settings β MCP (or edit ~/.cursor/mcp.json) and use the same JSON snippet.
Dev / testing mode
uv run mcp dev testmo-mcp.py
π¬ Example prompts
Once connected, try asking your AI assistant:
- "List all projects in Testmo and show me the one called Certilligent."
- "Create 20 login test cases covering valid credentials, wrong password, locked account, expired session, and 2FA flows."
- "Find the 'Smoke Tests' folder and list every high-priority case inside it recursively."
- "Bulk update all draft cases in folder 42 to set their priority to high."
- "Show me the latest automation run for the Playwright source and append a new thread of results."
- "Upload the file at
/Users/jan/Desktop/screenshot.pngas an attachment to test case 1234."
π§ Why use Testmo with MCP?
Traditional Testmo workflows require navigating the UI for every test case, every folder, every bulk update. With Testmo MCP, your AI assistant becomes a QA co-pilot:
- Spin up entire test suites from a feature spec or PRD in seconds
- Refactor folder structures conversationally instead of click-by-click
- Keep Testmo in sync with your codebase without context-switching
- Pair with Claude Code for end-to-end QA automation: generate Playwright tests and register them in Testmo
- Wire CI/CD automation runs straight from your terminal session
π§ Available tools
Projects
| Tool | Description |
|---|---|
testmo_list_projects | List all projects |
testmo_get_project | Get project details |
Folders
| Tool | Description |
|---|---|
testmo_list_folders | List all folders in a project with full paths |
testmo_get_folder | Get details of a specific folder |
testmo_create_folder | Create a new folder (optionally nested under parent) |
testmo_update_folder | Update folder name, parent, docs, or display order |
testmo_delete_folder | β οΈ Delete a folder β also permanently deletes all test cases inside |
testmo_find_folder_by_name | Find a folder by name within a project |
β οΈ
testmo_delete_folderis irreversible. Deleting a folder removes all test cases it contains, including cases in nested subfolders. There is no trash or undo β verify the folder contents before deleting.
Milestones
| Tool | Description |
|---|---|
testmo_list_milestones | List milestones |
testmo_get_milestone | Get milestone details |
Test cases
| Tool | Description |
|---|---|
testmo_list_cases | List cases (paginated) |
testmo_get_all_cases | Get all cases (auto-pagination) |
testmo_get_case | Get single case details |
testmo_create_case | Create one case |
testmo_create_cases | Create up to 100 cases |
testmo_batch_create_cases | Create unlimited cases (auto-batched) |
testmo_update_case | Update one case |
testmo_batch_update_cases | Bulk update up to 100 cases |
testmo_delete_case | Delete one case |
testmo_batch_delete_cases | Delete multiple cases (auto-batched) |
testmo_search_cases | Search cases with filters |
Test runs
| Tool | Description |
|---|---|
testmo_list_runs | List test runs |
testmo_get_run | Get run details |
testmo_list_run_results | List run results with filters |
Attachments
| Tool | Description |
|---|---|
testmo_list_case_attachments | List attachments on a test case |
testmo_upload_case_attachment | Upload a single file (auto-compress) |
testmo_upload_case_attachments | Upload up to 20 files at once |
testmo_delete_case_attachments | Delete one or more attachments |
β οΈ
testmo_upload_case_attachmentandtestmo_upload_case_attachmentsrequire an absolute local file path (e.g./Users/jan/Desktop/screenshot.pngon macOS orC:\Users\jan\Desktop\screenshot.pngon Windows). The file must already exist on disk β image data pasted into the conversation or screenshots taken within the AI client cannot be uploaded directly. Save the file to disk first, then provide the full path.After uploading, use
testmo_list_case_attachmentsto retrieve the attachment URL (e.g.https://your-instance.testmo.net/attachments/view/9) and confirm the upload succeeded.
Automation (CI/CD)
| Tool | Description |
|---|---|
testmo_list_automation_sources | List CI/CD sources |
testmo_get_automation_source | Get source details |
testmo_list_automation_runs | List automation runs |
testmo_get_automation_run | Get automation run details |
testmo_create_automation_run | Create automation run |
testmo_append_automation_run | Append artifacts/fields/links |
testmo_complete_automation_run | Complete automation run |
testmo_create_automation_run_thread | Create parallel thread |
testmo_append_automation_run_thread | Submit test results to thread |
testmo_complete_automation_run_thread | Complete thread |
Issue connections
| Tool | Description |
|---|---|
testmo_list_issue_connections | List integrations (GitHub, Jira, etc.) |
testmo_get_issue_connection | Get integration details |
Recursive / composite
| Tool | Description |
|---|---|
testmo_get_folders_recursive | Get full folder tree from a root |
testmo_get_cases_recursive | Get all cases across a folder subtree |
testmo_search_cases_recursive | Search cases within a folder subtree |
Utility
| Tool | Description |
|---|---|
testmo_get_field_mappings | Get field value IDs (priorities, types, states) |
testmo_get_web_url | Generate a Testmo web URL for any resource |
π οΈ Troubleshooting
"Tool not found" in Claude Desktop
Use an absolute path in args and fully restart Claude Desktop after editing the config.
401 Unauthorized
Double-check TESTMO_API_KEY and that the key has API access enabled in Testmo under Settings β API Keys.
uv: command not found
Install uv: curl -LsSf https://astral.sh/uv/install.sh | sh
π€ Contributing
PRs welcome. Open an issue first for larger changes.
π License
MIT
π Related projects
- Testmo β unified test management for software teams
- Model Context Protocol β open standard for AI tool integrations
- FastMCP β Pythonic framework for building MCP servers
- Claude Desktop β Anthropic's desktop client with MCP support
Keywords: testmo mcp, testmo claude, testmo ai integration, mcp server testmo, model context protocol testmo, testmo python, testmo api client, fastmcp testmo, ai test management, qa automation claude, testmo cursor, testmo automation api, testmo bulk create cases, anthropic mcp servers
