Connects Claude to Allure TestOps for full test management workflows. You get tools for creating and updating test cases, managing shared steps, organizing test suites, handling defects with linkage and auto-matching rules, and working with test plans and launches. The server handles 40+ operations across the TestOps API with structured error hints designed for AI agents. Ships with CLI auth storage, multiple output formats, and integrations for Claude Desktop, Claude Code, and Codex. Built on FastMCP with a "thin tool" architecture that keeps each operation focused and hard to misuse. Reach for this when you want Claude to interact directly with your test documentation and QA workflows instead of just talking about them.
Lucius is a specialized Model Context Protocol (MCP) server for Allure TestOps, built with FastMCP and Starlette.
Allure TestOps is a powerful tool with a huge API. When you're using an AI agent to manage your tests, it can easily get lost in the details or fail because of a small technical mistake.
Lucius makes this easier by giving your AI tools that are simple to use and hard to break:
| Tool Category | Description | All Tools |
|---|---|---|
| Test Case Mgmt | Full lifecycle for test documentation. | create_test_case, update_test_case, delete_test_case, delete_archived_test_cases, get_test_case_details, list_test_cases, get_test_case_custom_fields |
| Search & Discovery | Advanced search and project metadata discovery. | search_test_cases, get_custom_fields, list_integrations |
| Shared Steps | Create and manage reusable sequence sequences. | create_shared_step, list_shared_steps, update_shared_step, delete_shared_step, delete_archived_shared_steps, link_shared_step, unlink_shared_step |
| Test Layers | Manage test taxonomy and auto-mapping schemas. | list_test_layers, create_test_layer, update_test_layer, delete_test_layer, list_test_layer_schemas, create_test_layer_schema, update_test_layer_schema, delete_test_layer_schema |
| Test Hierarchy | Organize suites and assign tests in tree paths. | create_test_suite, list_test_suites, assign_test_cases_to_suite, delete_test_suite |
| Custom Fields | Project-level management of custom field values. | list_custom_field_values, create_custom_field_value, update_custom_field_value, delete_custom_field_value, delete_unused_custom_fields |
| Test Plans | Manage Test Plans and their content. | create_test_plan, update_test_plan, delete_test_plan, list_test_plans, manage_test_plan_content |
| Defect Mgmt | Track defects, linkage, and automation rules. | create_defect, get_defect, update_defect, delete_defect, list_defects, link_defect_to_test_case, list_defect_test_cases, create_defect_matcher, list_defect_matchers, update_defect_matcher, delete_defect_matcher |
curl -LsSf https://astral.sh/uv/install.sh | sh.env file with the variables below, or save CLI auth with lucius auth.uv run start.env for Quick Start| Variable | Description | Example |
|---|---|---|
ALLURE_ENDPOINT | Allure TestOps base URL | https://example.testops.cloud |
ALLURE_PROJECT_ID | Default Allure project ID | 123 |
ALLURE_API_TOKEN | Allure API token | <your_api_token> |
MCP_MODE | MCP transport mode for Lucius runtime | stdio |
The easiest way to use Lucius in Claude Desktop is via the .mcpb bundle:
lucius-mcp.mcpb from Releases.To add Lucius to Claude Code, use the following command from within your project directory:
claude mcp add --transport stdio --scope project \
--env ALLURE_ENDPOINT=https://example.testops.cloud \
--env ALLURE_PROJECT_ID=123 \
--env ALLURE_API_TOKEN=<your_api_token> \
--env MCP_MODE=stdio \
testops-mcp -- uvx --from lucius-mcp --refresh start
Project-scoped text config example (.mcp.json):
{
"mcpServers": {
"testops-mcp": {
"type": "stdio",
"command": "uvx",
"args": [
"--from",
"lucius-mcp",
"--refresh",
"start"
],
"env": {
"ALLURE_ENDPOINT": "https://example.testops.cloud",
"ALLURE_PROJECT_ID": "123",
"ALLURE_API_TOKEN": "<your_api_token>",
"MCP_MODE": "stdio"
}
}
}
}
To add Lucius to Codex (CLI or IDE extension), use:
codex mcp add testops-mcp \
--env ALLURE_ENDPOINT=https://example.testops.cloud \
--env ALLURE_PROJECT_ID=123 \
--env ALLURE_API_TOKEN=<your_api_token> \
--env MCP_MODE=stdio \
-- uvx --from lucius-mcp --refresh start
Text config example (~/.codex/config.toml or project .codex/config.toml):
[mcp_servers.testops-mcp]
command = "uvx"
args = ["--from", "lucius-mcp", "--refresh", "start"]
[mcp_servers.testops-mcp.env]
ALLURE_ENDPOINT = "https://example.testops.cloud"
ALLURE_PROJECT_ID = "123"
ALLURE_API_TOKEN = "<your_api_token>"
MCP_MODE = "stdio"
For detailed setup, including Claude Desktop (MCPB) integration, see Setup Guide.
Lucius also provides a universal CLI entry point for direct tool execution from the command line:
# List available actions for an entity
uv run lucius test_case
# Execute an action
uv run lucius test_case get --args '{"test_case_id": 1234}'
# Show help for a specific entity/action
uv run lucius test_case get --help
# Save reusable CLI auth
uv run lucius auth --url https://example.testops.cloud --token <your_api_token> --project 123
uv run lucius auth status
uv run lucius auth clear
CLI Features:
For local CLI binary builds with Nuitka, use Python 3.13 (the build scripts and CI workflow enforce this).
CLI auth precedence is:
api_token or project_iduv run lucius authSaved CLI auth uses native config locations:
$XDG_CONFIG_HOME/lucius/auth.json or ~/.config/lucius/auth.json~/Library/Application Support/lucius/auth.json unless XDG overrides are explicitly set%LOCALAPPDATA%\lucius\auth.jsonFor full CLI documentation and installation instructions, see CLI Guide.
Lucius collects privacy-preserving usage telemetry to improve tool quality. Telemetry is enabled by default and sends metadata
to https://stats.ostanin.me, an endpoint operated by the project owner (no third party has access to this endpoint).
If this is acceptable in your environment, staying opted in helps improve Lucius over time. If you want to opt out, set
TELEMETRY_ENABLED=false in your environment.
No API tokens, test content, or tool arguments are sent.
See Telemetry & Privacy for the full data dictionary and telemetry behavior details.
Full documentation is available in the docs/ folder:
Contributions are welcome! Please see the Contribution Guidelines and the Development Guide for more details.
ALLURE_ENDPOINT*Allure TestOps base URL, for example https://example.testops.cloud.
ALLURE_PROJECT_ID*Default Allure TestOps project ID.
ALLURE_API_TOKEN*secretAllure TestOps API token.