Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Lucius MCP

PYPI · LUCIUS-MCP · 4 COMPONENTS · SCANNED SEP 21

MCP server for managing Allure TestOps tests, launches, plans, defects, and metadata.

0 this week 0 Trust /100

Recent critical change

CVE-2026-39892 affects this package (1 Aug 2026). See the changelog before you install this server.

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →

Supply Chain Security75
Provenance & Transparency35
Schema Quality & AI Usability75
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 8923 tokens (~129/item across 69 items; 69 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management93
  • Stability observed for 28 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 15 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 69 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Install

How do I install the Lucius MCP server?

Lucius MCP runs locally as a PyPI package, launched with uvx lucius-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

pypi · lucius-mcp

# add to Claude Code
claude mcp add ivanostanin-lucius-mcp -- uvx lucius-mcp
// .cursor/mcp.json
{
  "mcpServers": {
    "ivanostanin-lucius-mcp": {
      "command": "uvx",
      "args": [
        "lucius-mcp"
      ]
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "ivanostanin-lucius-mcp": {
      "command": "uvx",
      "args": [
        "lucius-mcp"
      ]
    }
  }
}
# add to Codex CLI
codex mcp add ivanostanin-lucius-mcp -- uvx lucius-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ivanostanin-lucius-mcp": {
      "type": "local",
      "command": [
        "uvx",
        "lucius-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add ivanostanin-lucius-mcp --command uvx --arg lucius-mcp
# ~/.hermes/config.yaml
mcp_servers:
  ivanostanin-lucius-mcp:
    command: "uvx"
    args: ["lucius-mcp"]
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "ivanostanin-lucius-mcp": {
      "Transport": "stdio",
      "Command": "uvx",
      "Arguments": [
        "lucius-mcp"
      ]
    }
  }
}
# add to Vellum
assistant mcp add ivanostanin-lucius-mcp -t stdio -c uvx -a lucius-mcp
// mcp.json
{
  "mcpServers": {
    "ivanostanin-lucius-mcp": {
      "command": "uvx",
      "args": [
        "lucius-mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 17 Sept 26 0
    • Tool safety: pass → unverified security
    • Stability: pass → unverified security
    • Tool coverage: 100 → unverified functional
    • Capabilities: pass → unverified functional
    • Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
    • Stability: pass → 0.80 functional
    • Package version: 0.15.5 → 0.15.6 functional
  • 16 Sept 26 0
    • Stability: 0.97 → pass security
  • 15 Sept 26 0
    • Malware scan: unverified → pass security
  • 14 Sept 26 0
    • Malware scan: pass → unverified security
  • 12 Sept 26 0
    • Stability: pass → 0.87 functional
  • 11 Sept 26 0
    • Stability: 0.97 → pass security
  • 10 Sept 26 0
    • Stability: pass → 0.97 functional
  • 9 Sept 26 0
    • Stability: 0.97 → unverified security
    • Tool safety: pass → unverified security
    • Malware scan: unverified → pass security
    • Stability: 0.97 → pass security
    • Capabilities: pass → unverified functional
    • Tool coverage: 100 → unverified functional
    • Schema quality: Schema quality not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. functional
    • Package version: 0.15.4 → 0.15.5 functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 21 Sept 2026 · Analysed pypi/lucius-mcp@0.15.6

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem pypi

Background: How many MCP packages publish verified provenance →

Install scripts 1 script
Hook Tier Command
build_backend allowlisted hatchling.build

Background: Why install scripts are a supply-chain risk →

Vulnerabilities 13 findings
ID CVE Severity Vector Fix available
GHSA-537c-gmf6-5ccf high CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H yes
GHSA-g6cj-pr64-35w5 CVE-2026-69247 high yes
GHSA-jwv3-5hgf-82ww CVE-2026-69249 high yes
GHSA-m2h6-j472-rp4c CVE-2026-69248 medium yes
GHSA-m959-cc7f-wv43 CVE-2026-34073 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N yes
GHSA-p423-j2cm-9vmq CVE-2026-39892 medium yes
GHSA-r6ph-v2qm-q3c2 CVE-2026-26007 high yes
PYSEC-2026-2141 CVE-2026-26007 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N yes
PYSEC-2026-35 CVE-2026-34073 medium CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N yes
PYSEC-2026-3552 CVE-2026-69247 none yes
PYSEC-2026-3553 CVE-2026-69249 none yes
PYSEC-2026-3554 CVE-2026-69248 none yes
PYSEC-2026-36 CVE-2026-39892 critical CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H yes

Background: What a vulnerability scan can and cannot prove →

Dependencies 49 packages
Packages resolved 49
Stale 2
No linked repository 1
Tree resolution Complete

Background: SBOMs and build attestations, explained →

MCP tools · 69 exposed · ~8,923 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
add_test_result_attachment ~90

Upload evidence to a manual test result.

NameTypeReqDescription
attachmentobjectyesAttachment payload using the repo-standard pattern: {name, content_type, content? | url?}.
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
test_result_idintegeryesManual test result ID (required).
NameTypeReqDescription
file_names
status_code
target_id
target_kind

No examples provided.

add_test_step_attachment ~205

Upload evidence to a manual attachment step inside a test result.

NameTypeReqDescription
attachmentobjectyesAttachment payload using the repo-standard pattern: {name, content_type, content? | url?}.
attachment_idOptional explicit manual step attachment ID resolved from the test result execution.
fixture_nameOptional fixture name used only for the legacy fixture-step fallback.
fixture_result_idOptional explicit fixture result ID for legacy fixture-step fallback.
fixture_typeOptional fixture type hint for the legacy fixture-step fallback: 'before' or 'after'.
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
step_indexOptional zero-based manual step index to resolve within the test result execution.
step_nameOptional attachment-step name to resolve within the manual test result.
test_result_idintegeryesParent test result ID (required).
NameTypeReqDescription
file_names
status_code
target_id
target_kind

No examples provided.

assign_test_cases_to_suite ~123

Assign test cases to a suite path in hierarchy. ⚠️ CAUTION: Destructive. Reassigning test cases changes their hierarchy location.

NameTypeReqDescription
output_formatOutput format: 'json' (default) or 'plain'.
project_idAllure TestOps project ID.
suite_idintegeryesTarget suite/group node ID for assignment.
test_case_idsarrayyesList of test case IDs to assign to the suite.
tree_idTarget hierarchy tree ID. If omitted, default project tree is used.
NameTypeReqDescription
assigned_count
suite_id
test_case_ids
tree_id

No examples provided.

close_launch ~71

Close a launch and return updated launch details.

NameTypeReqDescription
api_tokenOptional runtime API token override.
launch_idintegeryesLaunch ID (required).
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
NameTypeReqDescription
autoclose
closed
created_date
external
id
known_defects_count
last_modified_date
manual_execution_guidance
name
new_defects_count
operation
project_id
url

No examples provided.

create_custom_field_value ~100

Create a new custom field value option.

NameTypeReqDescription
custom_field_idProject-scoped custom field ID to create a value for.
custom_field_nameCustom field name to resolve when custom_field_id is not provided.
namestringyesName for the new custom field value.
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
NameTypeReqDescription
custom_field_id
custom_field_name
id
name

No examples provided.

create_defect ~83

Create a new defect in the current project. Use this tool to register a known defect that can later be linked to failing test results through defect matchers (automation rules).

NameTypeReqDescription
descriptionOptional markdown description
namestringyesName / title of the defect
output_formatOutput format: 'json' (default) or 'plain'.
NameTypeReqDescription
description
id
name
url

No examples provided.

create_defect_matcher ~137

Create a defect matcher (automation rule) for a defect. Matchers automatically link future failing test results to a defect when the test failure's error message or stack trace matches the provided regex patterns. At least one of ``message_regex`` or ``trace_regex`` must be supplied.

NameTypeReqDescription
defect_idintegeryesID of the parent defect
message_regexRegex to match against error messages
namestringyesHuman-readable matcher rule name
output_formatOutput format: 'json' (default) or 'plain'.
trace_regexRegex to match against stack traces
NameTypeReqDescription
defect_id
id
message_regex
name
trace_regex

No examples provided.

create_launch ~117

Create a new launch in Allure TestOps.

NameTypeReqDescription
autocloseWhether the launch auto-closes.
externalWhether the launch is external.
issuesOptional list of issue dictionaries.
linksOptional list of external links (name, url, type).
namestringyesLaunch name (required).
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
tagsOptional list of tags.
NameTypeReqDescription
autoclose
closed
created_date
external
id
known_defects_count
last_modified_date
manual_execution_guidance
name
new_defects_count
operation
project_id
url

No examples provided.

create_shared_step ~159

Create a new reusable Shared Step.

NameTypeReqDescription
namestringyesThe name of the shared step (e.g., "Login as Admin").
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
stepsOptional list of steps. Each step is a dictionary with: - action (str): The step description (e.g., "Enter username"). - expected (str, optional): The expected result. - attachments (list[dict], opti…
NameTypeReqDescription
id
name
project_id
url

No examples provided.

create_test_case ~370

Create a new test case in Allure TestOps.

NameTypeReqDescription
attachmentsList of attachments.Example Base64: [{'name': 's.png', 'content': '<base64>', 'content_type': 'image/png'}]Example URL: [{'name': 'report.pdf', 'url': 'http://example.com/report.pdf', 'content_type':…
custom_fieldsDictionary of custom field names and their values (string or list of strings).Example: {'Layer': 'UI', 'Components': ['Auth', 'DB']}
descriptionA markdown description of the test case.
integration_idOptional integration ID for issue linking (use list_integrations to find IDs). Required when multiple integrations exist. Mutually exclusive with integration_name.
integration_nameOptional integration name for issue linking (exact case-sensitive match). Required when multiple integrations exist. Mutually exclusive with integration_id.
issuesOptional list of issue keys to link (e.g., ['PROJ-123']).
namestringyesThe name of the test case.
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
stepsList of steps. Each step must be a dict with 'action' and 'expected' keys. Example: [{'action': 'Login', 'expected': 'Dashboard visible'}]
tagsList of tag names.
test_layer_idOptional test layer ID to assign (use list_test_layers to find IDs). If provided, the layer must exist in the project.
test_layer_nameOptional test layer name to assign (exact case-sensitive match). Mutually exclusive with test_layer_id.
NameTypeReqDescription
id
issues
name
url

No examples provided.

create_test_layer ~115

Create a new test layer in Allure TestOps. Test layers define taxonomy for categorizing test cases. Common examples include 'Unit', 'Integration', 'E2E', 'UI', 'API', etc.

NameTypeReqDescription
namestringyesName of the test layer (e.g., 'Unit', 'Integration', 'E2E').
output_formatOutput format: 'json' (default) or 'plain'.
project_idAllure TestOps project ID to create the test layer in.
NameTypeReqDescription
id
name

No examples provided.

create_test_layer_schema ~142

Create a new test layer schema to map a custom field key to a test layer. Test layer schemas define the mapping between custom field keys and test layers. This allows test cases with specific custom field values to be automatically assigned to the correct test layer.

NameTypeReqDescription
keystringyesThe schema key (e.g., custom field name like 'layer' or 'test_layer').
output_formatOutput format: 'json' (default) or 'plain'.
project_idintegeryesAllure TestOps project ID to create the schema in.
test_layer_idintegeryesID of the test layer to link to this schema.
NameTypeReqDescription
id
key
test_layer_id
test_layer_name

No examples provided.

create_test_plan ~152

Create a new Test Plan in Allure TestOps. This tool allows creating a Test Plan, which is a collection of Test Cases to be executed. You can define the content of the plan either by: 1. Explicitly listing Test Case IDs (`test_case_ids`). 2. Providing an AQL (Allure Query Language) filter (`aql_filter`). 3. Both (explicit selection + dynamic filter).

NameTypeReqDescription
aql_filterAQL query to select test cases
namestringyesName of the test plan
output_formatOutput format: 'json' (default) or 'plain'.
test_case_idsList of Test Case IDs to include
NameTypeReqDescription
aql_filter
id
name
test_case_ids
test_case_urls
url

No examples provided.

create_test_suite ~98

Create a new test suite node in the hierarchy tree.

NameTypeReqDescription
namestringyesSuite name to create in hierarchy.
output_formatOutput format: 'json' (default) or 'plain'.
parent_suite_idParent suite/group node ID for nested suite creation.
project_idAllure TestOps project ID.
tree_idTarget hierarchy tree ID. If omitted, default project tree is used.
NameTypeReqDescription
id
name
parent_suite_id
tree_id

No examples provided.

delete_archived_shared_steps ~69

Permanently delete all archived shared steps in the current project.

NameTypeReqDescription
confirmbooleanMust be set to True to proceed.
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional Allure TestOps project ID override.
NameTypeReqDescription
actionRequested operation name.
deleted_count
requires_confirmation

No examples provided.

delete_archived_test_cases ~71

Permanently delete all archived/deleted test cases in the current project.

NameTypeReqDescription
confirmbooleanMust be set to True to proceed.
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional Allure TestOps project ID override.
NameTypeReqDescription
actionRequested operation name.
deleted_count
requires_confirmation

No examples provided.

delete_custom_field_value ~130

Delete a custom field value. ⚠️ CAUTION: Destructive.

NameTypeReqDescription
cfv_idintegeryesCustom field value ID to delete.
confirmbooleanMust be set to True to proceed with deletion. Safety measure.
custom_field_idProject-scoped custom field ID (optional, resolves by name if missing).
custom_field_nameCustom field name to resolve when custom_field_id is not provided.
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
NameTypeReqDescription
actionRequested operation name.
cfv_id
id
requires_confirmation
status

No examples provided.

delete_defect ~96

Permanently delete a defect and all its associated matchers. This is a destructive operation. The ``confirm`` parameter must be set to ``true`` to actually perform the deletion.

NameTypeReqDescription
confirmbooleanSafety flag — must be set to true to confirm deletion
defect_idintegeryesID of the defect to delete
output_formatOutput format: 'json' (default) or 'plain'.
NameTypeReqDescription
defect_id
id
status

No examples provided.

delete_defect_matcher ~96

Permanently delete a defect matcher (automation rule). This is a destructive operation. The ``confirm`` parameter must be set to ``true`` to actually perform the deletion.

NameTypeReqDescription
confirmbooleanSafety flag — must be set to true to confirm deletion
matcher_idintegeryesID of the matcher to delete
output_formatOutput format: 'json' (default) or 'plain'.
NameTypeReqDescription
id
matcher_id
status

No examples provided.

delete_launch ~68

Delete a launch by ID. ⚠️ CAUTION: Destructive.

NameTypeReqDescription
launch_idintegeryesLaunch ID to delete (required).
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
NameTypeReqDescription
launch_id
message
status

No examples provided.

delete_shared_step ~113

Delete a shared step from the library. ⚠️ CAUTION: Destructive. ⚠️ CAUTION: If this shared step is used by test cases, deleting it will break those references.

NameTypeReqDescription
confirmbooleanMust be True to proceed (safety measure).
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
step_idintegeryesThe shared step ID to delete (required).
NameTypeReqDescription
actionRequested operation name.
id
requires_confirmation
status
step_id
url

No examples provided.

delete_test_case ~142

Archive an obsolete test case. ⚠️ CAUTION: Destructive. This performs a SOFT DELETE (archive). The test case can typically be recovered from the Allure UI if needed. ⚠️ CAUTION: This action removes the test case from active views. Historical data and launch associations may be affected.

NameTypeReqDescription
confirmbooleanMust be set to True to proceed with deletion. Safety measure.
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional Allure TestOps project ID override.
test_case_idintegeryesThe Allure test case ID to archive.
NameTypeReqDescription
actionRequested operation name.
error
name
requires_confirmation
status
test_case_id
url

No examples provided.

delete_test_layer ~92

Delete a test layer from Allure TestOps. ⚠️ CAUTION: Destructive.

NameTypeReqDescription
confirmbooleanMust be set to True to proceed with deletion. Safety measure.
layer_idintegeryesID of the test layer to delete.
output_formatOutput format: 'json' (default) or 'plain'.
project_idAllure TestOps project ID.
NameTypeReqDescription
actionRequested operation name.
id
layer_id
requires_confirmation
status

No examples provided.

delete_test_layer_schema ~93

Delete a test layer schema from the project. ⚠️ CAUTION: Destructive.

NameTypeReqDescription
confirmbooleanMust be set to True to proceed with deletion. Safety measure.
output_formatOutput format: 'json' (default) or 'plain'.
project_idAllure TestOps project ID.
schema_idintegeryesID of the test layer schema to delete.
NameTypeReqDescription
actionRequested operation name.
id
requires_confirmation
schema_id
status

No examples provided.

delete_test_plan ~106

Delete a Test Plan. ⚠️ CAUTION: Destructive. Permanently removes the Test Plan from Allure TestOps. The operation is idempotent: if the plan does not exist, it returns success.

NameTypeReqDescription
confirmbooleanMust be set to True to proceed with deletion. Safety measure.
output_formatOutput format: 'json' (default) or 'plain'.
plan_idintegeryesID of the test plan to delete
NameTypeReqDescription
actionRequested operation name.
plan_id
requires_confirmation
status

No examples provided.

delete_test_suite ~140

Delete a test suite node from hierarchy. ⚠️ CAUTION: Destructive. This operation removes a hierarchy suite/group node. Allure TestOps handles nested entities according to its API behavior for tree groups.

NameTypeReqDescription
confirmbooleanMust be set to True to proceed with deletion. Safety measure.
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional Allure TestOps project ID override.
suite_idintegeryesSuite/group node ID to delete from hierarchy.
tree_idOptional hierarchy tree ID. Use when the suite belongs to a non-default tree.
NameTypeReqDescription
actionRequested operation name.
requires_confirmation
status
suite_id

No examples provided.

delete_unused_custom_fields ~71

Delete custom fields that are unused by any test case in the current project.

NameTypeReqDescription
confirmbooleanMust be set to True to proceed.
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional Allure TestOps project ID override.
NameTypeReqDescription
actionRequested operation name.
deleted_count
requires_confirmation

No examples provided.

generate_test_code ~225

Generate a current, framework-specific test snippet from a TestOps test case. Both target selections are required. The tool validates verified TestOps language/framework compatibility locally and synchronizes only requested test-case metadata before generation.

NameTypeReqDescription
frameworkstringyesRequired framework compatible with language. TypeScript choices: CodeceptJS, Cucumber, Jasmine, Jest, Mocha, Playwright, Vitest, WebdriverIO, ZeroStep. Compatibility is language-specific.
languagestringyesRequired target language. Choose Java, Python, TypeScript, JavaScript, Kotlin, PHP, or .NET. Backward-compatible aliases: java, python, ts, js, and dotnet.
metadataOptional metadata to synchronize: Name, Tags, Custom fields, Members, Issues, Scenario. Omit for Name, Tags, Custom fields, Scenario; use [] to disable all.
output_formatOutput format: 'json' (default) or 'plain'.
test_case_idintegeryesID of the TestOps test case to generate code for.
NameTypeReqDescription
codeGenerated source-code snippet.
frameworkRequested target testing framework.
languageRequested target programming language.
metadataCanonical test-case metadata selections included in generated code.
test_case_id

No examples provided.

get_custom_fields ~130

Get available custom fields and their allowed values for the project. Use this tool to discover what custom fields are available (e.g., 'Layer', 'Priority') and what values are valid for them (e.g., 'UI', 'High'). This is essential before creating or updating test cases to ensure you use valid field names and values.

NameTypeReqDescription
nameOptional case-insensitive name filter to search for specific custom fields.
output_formatOutput format: 'json' (default) or 'plain'.
project_idAllure TestOps project ID to fetch custom fields from.
NameTypeReqDescription
filter_name
itemsEntity-specific collection entries.
total

No examples provided.

get_defect ~49

Retrieve detailed information about a specific defect.

NameTypeReqDescription
defect_idintegeryesID of the defect to retrieve
output_formatOutput format: 'json' (default) or 'plain'.
NameTypeReqDescription
closed
description
id
name
status
url

No examples provided.

get_launch ~101

Retrieve a specific launch and summarize its details.

NameTypeReqDescription
include_execution_resultsbooleanOpt in to complete compact execution results, project trees, and snapshot diagnostics.
launch_idintegeryesLaunch ID (required).
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
tree_idOptional project tree ID to expand; requires include_execution_results=true.
NameTypeReqDescription
assignees
autoclose
closed
core_test_result_index
created_by
created_date
defects
duration
environment
execution_snapshot
external
flat_test_resultsCompact rows; each row id is the Test Result ID for get_test_result.
id
issues
jobs
known_defects_count
last_modified_by
last_modified_date
links
manual_execution_guidance
member_stats
muted_results
name
new_defects_count
partial
progress
project_id
result_defect_tree
result_timeline
retries
statistic
tags
testers
trees
unavailable_sections
unresolved_results
url
variables

No examples provided.

get_project ~102

Retrieve one project by name or list accessible projects. Name matching is case-insensitive. An exact match is preferred; an unambiguous partial match is accepted. Omit ``name`` to discover the available project IDs and names before making project-scoped calls.

NameTypeReqDescription
nameProject name to resolve. Omit it to list all projects available to the authenticated user.
output_formatOutput format: 'json' (default) or 'plain'.
NameTypeReqDescription
abbrProject abbreviation.
description
id
is_publicWhether the project is publicly visible.
itemsEntity-specific collection entries.
name
total

No examples provided.

get_test_case_custom_fields ~72

Retrieve custom field values for a specific test case.

NameTypeReqDescription
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional override for the default Project ID.
test_case_idintegeryesThe ID of the test case to retrieve custom fields for
NameTypeReqDescription
custom_fieldsCustom-field values as named entries or a value map.
test_case_id

No examples provided.

get_test_case_details ~137

Get complete details of a specific test case. Retrieves all information about a test case including its steps, tags, custom fields, and attachments. For each attachment, call prepare_attachment_download with its attachment_id, attachment_kind, and test_case_id, then HTTP GET the returned Lucius URL. Use this before updating a test case to understand its current state.

NameTypeReqDescription
output_formatOutput format: 'json' (default) or 'plain'.
project_idAllure TestOps project ID to list test cases from.
test_case_idintegeryesID of the test case to retrieve.
NameTypeReqDescription
attachments
custom_fields
description
id
name
precondition
status
steps
tags
url

No examples provided.

get_test_result ~122

Retrieve one complete TestOps result without recursively reading related results. Attachment references identify their verified owner. Call prepare_attachment_download with an attachment's attachment_id, attachment_kind, and owner context, then HTTP GET the returned Lucius URL before it expires.

NameTypeReqDescription
output_formatOutput format: 'json' (default) or plain agent-readable detail.
project_idOptional override for the default Project ID.
test_result_idintegeryesExact Test Result ID from the /tree/{test_result_id} URL path; ignore treeId query state.
NameTypeReqDescription
actual_launch_id
core
custom_fields
defects
environment
execution_steps
fixtures
issues
launch_url
members
partial
project_id
related_results
result_attachments
result_url
test_case
test_keys
test_result_id
unavailable_sections

No examples provided.

get_test_suite_contents ~129

Get test cases directly assigned to one test suite. This is a targeted hierarchy read. It does not enumerate unrelated suites or recursively traverse the project tree.

NameTypeReqDescription
expected_suite_nameOptional exact suite name used to confirm the target before reading its contents.
output_formatOutput format: 'json' (default) or 'plain'.
project_idOptional Allure TestOps project ID override.
suite_idintegeryesSuite/group node ID to inspect in hierarchy.
tree_idOptional hierarchy tree ID. If omitted, the default project tree is used.
NameTypeReqDescription
assigned_count
suite_id
test_case_ids
tree_id

No examples provided.

link_defect_to_test_case ~168

Link a defect to a test case through a shared issue mapping. This operation ensures defect governance and test coverage are connected: the issue is linked to the defect and to the specified test case.

NameTypeReqDescription
defect_idintegeryesID of the defect to link
integration_idOptional integration ID for issue mapping. Mutually exclusive with integration_name.
integration_nameOptional integration name for issue mapping. Mutually exclusive with integration_id.
issue_keyIssue key to use for linking (for example, PROJ-123). If omitted, the defect's existing issue mapping is reused.
output_formatOutput format: 'json' (default) or 'plain'.
test_case_idintegeryesID of the test case to link
NameTypeReqDescription
already_linked
defect_id
defect_url
integration_id
issue_key
test_case_id
test_case_url

No examples provided.

link_shared_step ~185

Link a shared step to a test case. ⚠️ CAUTION: Destructive. Adds a reference to the shared step in the test case's step list. The shared step's actions will expand at execution time.

NameTypeReqDescription
confirmbooleanMust be set to True to proceed with linking. Safety measure.
output_formatOutput format: 'json' (default) or 'plain'.
positionWhere to insert the shared step (0-indexed, optional). 0 = Insert at beginning None = Append to end (default) N = Insert after step N (so it becomes the (N+1)th step)
project_idOptional override for the default Project ID.
shared_step_idintegeryesThe ID of shared step to link.
test_case_idintegeryesThe ID of test case to modify.
NameTypeReqDescription
actionRequested operation name.
error
requires_confirmation
shared_step_id
shared_step_url
status
stepsSerialized scenario steps.
test_case_id
test_case_url

No examples provided.

list_custom_field_values ~165

List available values for a custom field.

NameTypeReqDescription
custom_field_idProject-scoped custom field ID to list values for.
custom_field_nameCustom field name to resolve when custom_field_id is not provided.
output_formatOutput format: 'json' (default) or 'plain'.
pageZero-based page index.
project_idOptional override for the default Project ID.
queryOptional search query to filter values.
sizeNumber of items per page.
sortOptional sort criteria, e.g. ['name,asc', 'id,desc']
test_case_searchOptional test case search filter to match values in test cases.
var_globalOptional filter for global values.
NameTypeReqDescription
itemsEntity-specific collection entries.
page
size
total
total_pages

No examples provided.

list_defect_matchers ~55

List all matchers (automation rules) for a given defect.

NameTypeReqDescription
defect_idintegeryesID of the parent defect
output_formatOutput format: 'json' (default) or 'plain'.
NameTypeReqDescription
defect_id
items
page
size
total
total_pages

No examples provided.

list_defect_test_cases ~81

List test cases currently linked to a defect.

NameTypeReqDescription
defect_idintegeryesID of the defect whose linked test cases should be listed
output_formatOutput format: 'json' (default) or 'plain'.
pageintegerZero-based page index
sizeintegerPage size (1..100)
NameTypeReqDescription
defect_id
defect_url
itemsEntity-specific collection entries.
page
size
total
total_pages

No examples provided.

Common questions

What is the Lucius MCP server?

Lucius MCP is listed in the public MCP registry as io.github.ivanostanin/lucius-mcp. MCP server for managing Allure TestOps tests, launches, plans, defects, and metadata. This page covers its PyPI package (lucius-mcp).

What tools does the Lucius MCP server expose?

Lucius MCP exposes 69 tools: create_test_case, get_test_case_details, update_test_case, delete_test_case, delete_archived_test_cases, and 64 more. Their descriptions and schemas cost roughly 8,923 tokens of context every time the server is loaded.

Is the Lucius MCP server still maintained?

Lucius MCP is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.