Allure TestOps MCP Server

Allure TestOps MCP Server

Enables natural language interaction with Allure TestOps API for managing test cases, launches, and test plans with full CRUD support and 56+ controller endpoints.

Category
Visit Server

README

Allure TestOps MCP Server (Python)

Model Context Protocol server for Allure TestOps API, written in Python.

Overview

This MCP server provides a Python implementation for interacting with Allure TestOps API through the Model Context Protocol. It supports full CRUD operations for test cases, launches, and test plans, along with 56+ controller endpoints for comprehensive Allure TestOps integration.

Installation

Prerequisites

  • Python 3.10 or higher
  • Poetry package manager

Setup

  1. Clone the repository:
git clone <repository-url>
cd allure_testops/mcp/python
  1. Install dependencies:
poetry install
  1. Set up environment variables (see Configuration section below)

Configuration

Set the following environment variables:

  • ALLURE_TESTOPS_URL: Base URL of your Allure TestOps instance (e.g., https://your-allure-instance.com)
  • ALLURE_TOKEN: API token for authentication (generate in Allure TestOps user settings)
  • PROJECT_ID: Default project ID (numeric string, e.g., "1")

Using Environment Variables

export ALLURE_TESTOPS_URL='https://your-allure-instance.com'
export ALLURE_TOKEN='your-api-token'
export PROJECT_ID='1'

Using .env File (Recommended)

Create a .env file in the project root:

ALLURE_TESTOPS_URL=https://your-allure-instance.com
ALLURE_TOKEN=your-api-token
PROJECT_ID=1

Note: Never commit .env files to version control. Use .env.example as a template.

Usage

Running the MCP Server

Run the server directly:

poetry run python index.py

The server will run on stdio and communicate via the Model Context Protocol.

Standalone Scripts

The repository includes utility scripts:

  • get_open_launches.py - Fetch all open launches from Allure TestOps
poetry run python get_open_launches.py

MCP Configuration

Add to your mcp.json (typically located in ~/.cursor/mcp.json or similar):

{
  "mcpServers": {
    "allure-testops-python": {
      "command": "python3",
      "args": [
        "/absolute/path/to/index.py"
      ],
      "env": {
        "ALLURE_TESTOPS_URL": "https://your-allure-instance.com",
        "ALLURE_TOKEN": "your-api-token",
        "PROJECT_ID": "1"
      }
    }
  }
}

Available Tools

Test Cases

  • list_test_cases - List all test cases in the project
  • get_test_case - Get a specific test case by ID
  • create_test_case - Create a new test case
  • update_test_case - Update an existing test case
  • delete_test_case - Delete a test case
  • bulk_create_test_cases_from_csv - Bulk create test cases from CSV

Launches

  • list_launches - List all launches in the project
  • get_launch - Get a specific launch by ID
  • create_launch - Create a new launch
  • update_launch - Update an existing launch
  • delete_launch - Delete a launch
  • close_launch - Close a launch

Test Plans

  • list_test_plans - List all test plans in the project
  • get_test_plan - Get a specific test plan by ID
  • create_test_plan - Create a new test plan
  • update_test_plan - Update an existing test plan
  • delete_test_plan - Delete a test plan

Features

  • ✅ Full Allure TestOps API integration
  • ✅ 56+ controller endpoints
  • ✅ Async/await support for high performance
  • ✅ Type-safe tool definitions
  • ✅ Comprehensive error handling
  • ✅ CSV import support for bulk operations

Project Structure

.
├── index.py                 # Main MCP server entry point
├── allure_client.py         # HTTP client for Allure TestOps API
├── csv_parser.py           # CSV parsing utilities
├── controllers/            # API controller modules
├── get_open_launches.py   # Utility script for fetching open launches
├── pyproject.toml         # Poetry configuration
├── poetry.lock          # Lock file for dependencies
└── README.md              # This file

Development

Testing

Run the test scripts:

poetry run python test_simple.py
poetry run python test_mcp.py

See TESTING.md and QUICK_TEST.md for more details.

Security Notes

  • Never commit API tokens or credentials to version control
  • Use environment variables or secure secret management
  • The .gitignore file excludes sensitive files by default
  • Rotate API tokens regularly

Contributing

Contributions are welcome! Please ensure:

  1. Code follows Python best practices
  2. All tests pass
  3. No sensitive data is included in commits
  4. README is updated for new features

License

See LICENSE file for details.

Support

For issues and questions:

  • Check the documentation in TESTING.md and QUICK_TEST.md
  • Review Allure TestOps API documentation
  • Open an issue in the repository

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