Testomat.io
Integrate Testomat.io API with AI assistants for test management.
Testomat.io MCP Server
A Model Context Protocol (MCP) server for Testomat.io API integration with AI assistants like Cursor.
Installation
Prerequisites
- Node.js 18 or higher (with built-in fetch support)
- npm or yarn package manager
- Testomat.io account with API access
Run directly with npx
npx @testomatio/mcp --token <your-token> --project <project-id>
Usage
Command Line Options
The MCP server can be started using command line arguments or environment variables:
Using Command Line Arguments
# Using short flags
npx @testomatio/mcp -t testomat_YOUR_TOKEN_HERE -p your-project-id
# Using long flags
npx @testomatio/mcp --token testomat_YOUR_TOKEN_HERE --project your-project-id
# With custom base URL
npx @testomatio/mcp --token testomat_YOUR_TOKEN_HERE --project your-project-id --base-url https://your-instance.testomat.io
Using Environment Variables
# Set environment variables
export TESTOMATIO_API_TOKEN=testomat_YOUR_TOKEN_HERE
export TESTOMATIO_BASE_URL=https://app.testomat.io # Optional, defaults to https://app.testomat.io
# Run with project ID
npx @testomatio/mcp --project your-project-id
# Or run directly with environment variables
TESTOMATIO_API_TOKEN=testomat_YOUR_TOKEN_HERE npx @testomatio/mcp --project your-project-id
Getting Your API Token
- Go to Testomat.io
- Navigate to user tokens https://app.testomat.io/account/access_tokens
- Create and copy General API token (starts with
testomat_)
Getting Your Project ID
Your project ID can be found in the URL when you're viewing your project:
https://app.testomat.io/projects/YOUR_PROJECT_ID
Integration with Cursor
To use this MCP server with Cursor, add the following configuration to your Cursor settings:
Option 1: Using npx (Recommended)
Add this to your Cursor MCP settings (cursor-settings.json or through the Cursor settings UI):
{
"mcpServers": {
"testomatio": {
"command": "npx",
"args": ["-y", "@testomatio/mcp@latest", "--token", "testomat_YOUR_TOKEN_HERE", "--project", "YOUR_PROJECT_ID"]
}
}
}
Option 2: Using Environment Variables
First, set your environment variables in your shell profile (.bashrc, .zshrc, etc.):
export TESTOMATIO_API_TOKEN=testomat_YOUR_TOKEN_HERE
Then add this to your Cursor MCP settings:
{
"mcpServers": {
"testomatio": {
"command": "npx",
"args": ["-y", "@testomatio/mcp@latest", "--project", "YOUR_PROJECT_ID"],
"env": {
"TESTOMATIO_API_TOKEN": "testomat_YOUR_TOKEN_HERE"
}
}
}
}
Features
Tools
Tests
get_tests– Get all tests (params:plan,query,state,suite_id,tag,labels) — api: GET/testssearch_tests– Search tests (params:query,tql,labels,state,priority,filter,page) — api: GET/tests
Test Suites
search_suites– Search suites (params:query,labels,state,priority,page) — api: GET/suitesget_root_suites– List root-level suites (no params) — api: GET/suitesget_suite– Get one suite (params:suite_id) — api: GET/suites/{suite_id}
Test Runs
get_runs– List all runs (no params) — api: GET/runsget_run– Get one run (params:run_id,tree) — api: GET/runs/{run_id}get_testruns– Runs for a test (params:test_id,finished_at_date_range) — api: GET/testruns
Test Plans
get_plans– List all plans (params:detail,labels,page) — api: GET/plansget_plan– Get one plan (params:plan_id) — api: GET/plans/{plan_id}
Example Usage in Cursor
Once configured, you can ask your AI assistant questions like:
- "Show me all the tests in the project"
- "Get the test runs for test ID abc123"
- "What are the root suites in this project?"
- "Show me details for test run xyz789"
- "List all automated tests with the @smoke tag"
- "Get all test plans for this project"
Query Patterns
Basic Information Queries
These queries retrieve general information without specific filtering:
- "Show me all the tests in the project" →
get_teststool - "What are the root suites in this project?" →
get_root_suitestool - "Get all test runs" →
get_runstool - "Get all test plans for this project" →
get_planstool
Specific Item Queries
These queries target specific entities by ID:
- "Get test runs for test ID abc123" →
get_testrunstool withtest_id: "abc123" - "Show me details for test run xyz789" →
get_runtool withrun_id: "xyz789" - "Get suite details for suite-456" →
get_suitetool withsuite_id: "suite-456"
Search and Filter Queries
These queries use advanced filtering capabilities:
- "List all automated tests with the @smoke tag" →
search_teststool withquery: "@smoke",state: "automated" - "Find tests with priority high" →
search_teststool withpriority: "high" - "Search for tests containing 'login'" →
search_teststool withquery: "login" - "List tests tagged @critical or labelled 'ux' with high priority" →
search_teststool withtql: "tag == 'critical' or label == 'ux' and priority == 'high'" - "Find tests linked to JIRA-123" →
search_teststool withtql: jira == 'BDCP-2'
Advanced Query Syntax
Test Query Language (TQL)
The search_tests tool supports TQL for complex filtering:
"tag == 'smoke' and state == 'manual'"
"priority == 'high' or label == 'ux'"
Tag-Based Searches
Tags can be searched using the @ prefix:
@smoke # Tests tagged with 'smoke'
@regression # Tests tagged with 'regression'
@critical # Tests tagged with 'critical'
Jira Integration
Tests linked to Jira issues can be found using issue keys:
JIRA-123 # Tests linked to JIRA-123
PROJ-456 # Tests linked to PROJ-456
Troubleshooting
Common Issues
-
"API token is required" error
- Make sure your token starts with
testomat_ - Verify the token is correct in your Testomat.io project settings
- Make sure your token starts with
-
"Project ID is required" error
- Check that you're passing the correct project ID
- Verify the project ID exists and you have access to it
-
Connection errors
- Ensure you have internet connectivity
- Check if your firewall allows connections to
app.testomat.io - Verify your API token has the necessary permissions
-
MCP server not starting in Cursor
- Check Cursor's MCP logs for error messages
- Ensure Node.js 18+ is installed and accessible
- Try running the command manually first to test
Debug Mode
To see detailed logs when running the server:
DEBUG=* npx @testomatio/mcp --token <token> --project <project-id>
API Reference
For detailed information about the underlying Testomat.io API, refer to the Testomat.io API Documentation.
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.
Support
For support, please:
- Check the Testomat.io Documentation
- Open an issue on GitHub
- Contact Testomat.io support
Changelog
v1.0.0
- Initial release
- Support for all major Testomat.io API endpoints
- MCP-compatible tool interface
- Semantic XML formatting for LLM processing
Related Servers
Claude Code Memory Server
A Neo4j-based MCP server providing persistent memory and contextual assistance for Claude Code.
Together AI Image Server
A TypeScript-based server for generating images using the Together AI API.
Tempo MCP Server
An MCP server for querying distributed tracing data from Grafana Tempo.
Plugged.in
A comprehensive proxy that combines multiple MCP servers into a single MCP. It provides discovery and management of tools, prompts, resources, and templates across servers, plus a playground for debugging when building MCP servers.
Remote MCP Server (Authless)
An example of a remote MCP server deployable on Cloudflare Workers without authentication.
Quantum Simulator MCP Server
A quantum circuit simulator with noise models and OpenQASM 2.0 support, accessible via the Model Context Protocol (MCP).
FastAPI MCP Server
A MCP server implementation using the FastAPI framework, configurable via environment variables.
ReAPI OpenAPI
Serves multiple OpenAPI specifications to enable LLM-powered IDE integrations.
MCP Configuration Editor
Edit the mcp.json configuration file for tools like AWS Q Developer and Claude Desktop.
MCP Server Automation CLI
A CLI tool to automate packaging MCP servers as Docker images and deploying them to AWS ECS.