read_jira_issueLABSCO SUMMARY
The test-management admin, done from where the testing is being discussed.
Creating a cycle, marking executions, linking them back to the issue and producing the report all sit in one place, so the bookkeeping around a release stops being a separate afternoon in the Zephyr UI.
What it is
An integration with Zephyr, JIRA's test management system. Test plans and cycles are created and listed, executions are updated, tests are linked to issues, and JIRA issues are readable alongside them.
What you get
- Test plans created and listed in Zephyr
- Test cycles created and listed, with their execution status attached
- Execution results updated as tests are run
- Execution progress and statistics read back, so a cycle's state is a query rather than a spreadsheet
- Tests linked to the JIRA issues they cover
- JIRA issue details and metadata read directly, without leaving the flow
- Execution reports generated from a cycle
Requirements
Node.js 18.0.0 or higher. A JIRA instance with Zephyr Scale — the Prerequisites also name Zephyr Squad, but Squad support is still an unchecked item on the project's roadmap — and in the config your JIRA base URL, a JIRA username and API token, and a Zephyr API token. A Docker image is an alternative to running it under node.
Setup effort
Build from source — git clone https://github.com/leorosignoli/jira-zephyr-mcp.git
USE CASES
Setting up testing for a release
Create the plan, create the cycle under it, and confirm both exist — before anyone runs a test.
Recording results as they come in
Update executions as tests pass or fail, then read the progress back to see how much of the cycle is left.
Proving a ticket was actually tested
Read the JIRA issue, then link the tests that cover it, so the trace exists when someone asks for it.
Reporting on where a cycle stands
List the cycles with their execution status, then generate the report from the one being asked about.
9 tools
Listed in project docs. Your client may show a different list.
create_test_planlist_test_planscreate_test_cyclelist_test_cyclesexecute_testget_test_execution_statuslink_tests_to_issuesgenerate_test_reportBEFORE YOU INSTALL
What to know first
Tools you get
9 tools named in the project's documentation. Zephyr Squad support is still an unchecked roadmap item, and test case creation is on the roadmap, so you cannot author test cases through these tools.
Requires
- Node.js 18.0.0 or later
- JIRA_API_TOKEN in your environment
- ZEPHYR_API_TOKEN in your environment
INSTALLATION
Connect your client
You clone and build this one yourself.
Server setup
git clone https://github.com/leorosignoli/jira-zephyr-mcp.git
cd jira-zephyr-mcp
npm install
npm run build
cp .env.example .envFill JIRA_BASE_URL / JIRA_USERNAME / JIRA_API_TOKEN / ZEPHYR_API_TOKEN into .env (or into the env block of the MCP config)
Add the mcpServers block to your Cursor configuration, pointing args at <YOUR_PATH_TO_JIRA_ZEPHYR_MCP>/dist/index.js
Docker alternative — build the image first:
docker build -t jira-zephyr-mcp:latest .MCP Clients
Cursor — local build
{
"mcpServers": {
"jira-zephyr": {
"command": "node",
"args": [
"<YOUR_PATH_TO_JIRA_ZEPHYR_MCP>/dist/index.js"
],
"env": {
"JIRA_BASE_URL": "https://<YOUR_DOMAIN>.atlassian.net",
"JIRA_USERNAME": "<YOUR_JIRA_USERNAME>",
"JIRA_API_TOKEN": "<YOUR_JIRA_API_TOKEN>",
"ZEPHYR_API_TOKEN": "<YOUR_ZEPHYR_API_TOKEN>"
}
}
}
}Cursor — Docker
{
"mcpServers": {
"jira-zephyr": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"JIRA_BASE_URL",
"-e",
"JIRA_USERNAME",
"-e",
"JIRA_API_TOKEN",
"-e",
"ZEPHYR_API_TOKEN",
"jira-zephyr-mcp"
],
"env": {
"JIRA_BASE_URL": "https://<YOUR_DOMAIN>.atlassian.net",
"JIRA_USERNAME": "<YOUR_JIRA_USERNAME>",
"JIRA_API_TOKEN": "<YOUR_JIRA_API_TOKEN>",
"ZEPHYR_API_TOKEN": "<YOUR_ZEPHYR_API_TOKEN>"
}
}
}
}