Allure TestOps MCP
Production-ready MCP server for Allure TestOps, enabling test case, launch, test result, and test plan management via natural language.
README
Allure TestOps MCP
Production-ready MCP server for Allure TestOps focused on test cases, launches, test results, and test plans.
Features
- JWT bearer auth exchange from user API token, with in-memory caching and refresh on expiry.
- Project-aware tools with optional default project via
ALLURE_PROJECT_ID. - Project resolution by
projectIdorprojectNamefor project-scoped operations. - Test case custom field support, including lookup and updates.
stdiotransport for local MCP clients (npxor local build).
Tool Coverage
- Test cases: list, search, get, create, update, delete, restore, overview, history, scenario, steps (get/update), tags (get/set/bulk-add/bulk-remove), issues (get/set), external links bulk add, custom fields (list/get/set), attachments (list/upload/download/delete)
- Launches: list, search, get, create, update, delete, close, reopen, statistics, progress, add test cases/plans
- Test results: list, search, get, create, update, history, assign, resolve, retries, attachments (list/download)
- Test plans: list, get, create, update, delete, run
- Analytics: automation chart, group by automation/status, launch duration histogram, mute trend, statistic trend, test case last result, test case success rate
- Dashboards: list, get, create, update, delete, copy, widget data
- Defects: list, get, create, update, get test results/cases/launches, get launch defects, find similar failures, link to results (bulk), bulk close/reopen, link/unlink issue, apply matchers
- Mutes: list, create, delete, get muted test cases, get launch muted results, mute/unmute result, bulk mute/unmute
- Members: suggest users, list project members, launch member stats, test case members, test result members
- Shared Steps: list, get, get steps (inline scenario), usage, create, update, archive, unarchive
- Environments: list env vars, suggest env vars, list schemas, list values, suggest values, get result env vars
User Usage Docs
User-focused runtime and integration docs are in docs/usages/:
docs/usages/README.mddocs/usages/docker.mddocs/usages/npx.mddocs/usages/running-locally.mddocs/usages/integrations.mddocs/usages/examples/README.mddocs/usages/examples/test-cases.mddocs/usages/examples/launches.mddocs/usages/examples/test-results.mddocs/usages/examples/test-plans.mddocs/usages/examples/custom-fields.mddocs/usages/examples/defects.mddocs/usages/examples/mutes.mddocs/usages/examples/members.mddocs/usages/examples/shared-steps.mddocs/usages/examples/environments.mddocs/usages/examples/workflows.md
Tool Catalog (GitHub Pages)
The auto-generated MCP tool catalog is published via GitHub Pages:
- https://iampopovich.github.io/allure-testops-mcp/
The page content is generated from source tool definitions. When a new tool is added to src/tools/*.ts, the Pages workflow regenerates docs/tools.json and updates the site automatically.
Authentication
This server follows the Allure TestOps API guide:
- Use your user-generated API token in
ALLURE_TOKEN. - Server exchanges it at
/api/uaa/oauth/token. - Received bearer JWT is cached and reused until near expiry.
Reference: https://docs.qameta.io/allure-testops/advanced/api/
Environment Variables
ALLURE_TESTOPS_URL=https://allure-testops.instance.com/
ALLURE_TOKEN=your-api-token
# Optional default project:
# ALLURE_PROJECT_ID=37
ALLURE_TESTOPS_URLrequiredALLURE_TOKENrequiredALLURE_PROJECT_IDoptional
If ALLURE_PROJECT_ID is not set, tools that require project scope must receive:
projectId, orprojectName(resolved via/api/project/suggest)
Run Locally
Prerequisites
- Node.js v18+ and npm
Step-by-step
- Clone the repository:
git clone https://github.com/iampopovich/allure-testops-mcp.git
cd allure-testops-mcp
- Install dependencies:
npm install
- Create your local environment file from the example and fill required values:
cp .env.example .env
Set:
ALLURE_TESTOPS_URL(required)ALLURE_TOKEN(required)ALLURE_PROJECT_ID(optional. default project = 37)
- Build the project:
npm run build
- Start the MCP server from the compiled output:
npm start
- Optional: run in development mode (TypeScript via
tsx):
npm run dev
- Optional: run integration smoke checks:
npm run test:integration
MCP Client Setup
Use one of these server commands:
Common config block:
{
"mcpServers": {
"allure-testops": {
"command": "npx",
"args": ["-y", "github:{repo-name}/allure-testops-mcp"],
"env": {
"ALLURE_TESTOPS_URL": "https://{allure-testops-instance-address}",
"ALLURE_TOKEN": "{your-api-token}",
"ALLURE_PROJECT_ID": "{allure-project-id}"
}
}
}
}
<details> <summary><strong>Local build</strong></summary>
command:nodeargs:["/absolute/path/to/allure-testops-mcp/dist/index.js"]example:node c:\users\username\allure-testops-mcp/dist/index.js
</details>
<details> <summary><strong>npx (GitHub spec)</strong></summary>
command:npxargs:["-y", "github:iampopovich/allure-testops-mcp"]
</details>
<details> <summary><strong>Claude Desktop</strong></summary>
- Open Claude Desktop MCP settings and add the
mcpServersJSON entry above. - Restart Claude Desktop after saving config.
</details>
<details> <summary><strong>Claude Code</strong></summary>
- Add the same
mcpServersentry in your Claude Code MCP configuration. - Restart your Claude Code session to load the server.
</details>
<details> <summary><strong>Cursor</strong></summary>
- Open Cursor MCP settings and add the same
mcpServersentry. - Restart Cursor (or reload MCP servers) after saving.
</details>
<details> <summary><strong>Other MCP Clients</strong></summary>
Any MCP client that supports stdio servers can use this project with the same command/env configuration.
</details>
CI and Quality Gates
This repository includes GitHub Actions checks for pushed code and pull requests:
- compile (
npm run build) - lint (
npm run lint)
CI workflow: .github/workflows/ci.yml
OSS Automation
Included automation for typical open-source maintenance:
- Dependabot updates:
.github/dependabot.yml - Stale issue/PR triage:
.github/workflows/stale.yml - Release notes drafting:
.github/workflows/release-drafter.yml
Integration Smoke Test
ALLURE_TESTOPS_URL="https://allure-testops.instance.com/" \
ALLURE_TOKEN="your-api-token" \
ALLURE_PROJECT_ID="37" \
npm run test:integration
Public Project Docs
Recommended Servers
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.
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.
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.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
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.
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.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
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.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.