MCP server exposing Jira Cloud tools via FastMCP
Project description
jira2mcp
MCP server for Jira Cloud only.
jira2mcp does not target Jira Server/Data Center. It also does not add dedicated issue assign commands, issue delete/archive flows, sprint/board/epic operations, or admin-heavy Jira configuration tooling.
Built with FastMCP and jira2py.
Setup
1. Get your Jira Cloud credentials
You need three values from your Jira Cloud instance:
| Variable | Description |
|---|---|
JIRA_URL |
Your Jira instance URL (for example https://yourcompany.atlassian.net) |
JIRA_USER |
Your Jira account email |
JIRA_API_TOKEN |
API token from id.atlassian.com/manage-profile/security/api-tokens |
Optional explicit credentials file format:
{
"url": "https://yourcompany.atlassian.net",
"username": "you@company.com",
"api_token": "your-api-token"
}
2. Install uv (if not already installed)
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
3. Add to Claude Code
claude mcp add jira -- uvx jira2mcp
4. Configure credentials
Option A: environment variables
export JIRA_URL="https://yourcompany.atlassian.net"
export JIRA_USER="you@company.com"
export JIRA_API_TOKEN="your-api-token"
Minimal MCP config:
{
"mcpServers": {
"jira": {
"command": "uvx",
"args": ["jira2mcp"]
}
}
}
You can also place the same values in the MCP env block.
Option B: explicit credentials file launch argument
claude mcp add jira -- uvx jira2mcp --credentials-file ~/.config/jira-cloud.json
Equivalent config:
{
"mcpServers": {
"jira": {
"command": "uvx",
"args": [
"jira2mcp",
"--credentials-file",
"/Users/you/.config/jira-cloud.json"
]
}
}
}
If --credentials-file is omitted, jira2mcp uses JIRA_URL, JIRA_USER, and JIRA_API_TOKEN from the environment.
There is no default credentials path and no implicit JIRA_CREDENTIALS_FILE behavior.
Tool inventory
Identity, reads, and transitions
| Tool | Description |
|---|---|
jira_auth_status |
Check whether the configured Jira Cloud credentials authenticate |
jira_me |
Show the currently authenticated Jira Cloud user |
jira_read |
Read a Jira issue by key with full details |
jira_search |
Search issues using JQL |
jira_comments |
List comments on an issue |
jira_transitions |
List available workflow transitions for an issue |
jira_transition |
Apply a workflow transition to an issue |
Metadata and saved filters
| Tool | Description |
|---|---|
jira_fields |
Get field metadata for create/edit workflows |
jira_projects |
List accessible projects |
jira_project |
Read one project by key or ID |
jira_users |
Search users by name or email |
jira_statuses |
List visible Jira statuses |
jira_priorities |
List visible Jira priorities |
jira_filters |
List or search saved filters visible to the current user |
jira_run_filter |
Resolve a saved filter's JQL and run the normal search flow |
Issue mutations and links
| Tool | Description |
|---|---|
jira_create |
Create a new issue |
jira_edit |
Update an existing issue |
jira_comment |
Add a comment to an issue |
jira_update_comment |
Update an existing issue comment |
jira_delete_comment |
Delete an issue comment |
jira_issue_links |
List issue links on a specific issue |
jira_add_link |
Create a link between two issues |
jira_delete_link |
Delete an issue link |
Attachments and worklogs
| Tool | Description |
|---|---|
jira_attachment |
Download an attachment with the original simple surface |
jira_attachments |
List attachments on an issue |
jira_attachment_metadata |
Read attachment metadata by ID |
jira_download_attachment |
Download an attachment with structured/raw output support |
jira_upload_attachment |
Upload a local file as an issue attachment |
jira_delete_attachment |
Delete an attachment by ID |
jira_worklogs |
List worklogs on an issue |
jira_add_worklog |
Add a worklog to an issue |
jira_update_worklog |
Update an existing worklog |
jira_delete_worklog |
Delete a worklog |
jira_worklog_report |
Build a worklog report for JQL-selected issues within a UTC date range |
Resources
| Resource | Description |
|---|---|
data://jira/link-types |
Available issue link types in your Jira instance |
Prompts
| Prompt | Description |
|---|---|
jql_syntax |
JQL syntax reference for building search queries |
Notes
jira_run_filterreturns the same search-shaped result asjira_searchafter resolving the saved filter's JQL.jira_attachmentremains available;jira_download_attachmentadds structured/raw-friendly download output.- Attachment upload support is Jira Cloud only and should use explicit local paths provided to the MCP server process.
Key features
- Markdown descriptions and comments are converted to and from Atlassian Document Format (ADF).
- Field discovery via
jira_fieldskeeps create/edit flows metadata-first. - Saved filters, transitions, attachments, links, and worklogs are available through first-class MCP tools.
Repository layout
This repository is a uv workspace with two packages:
packages/jira2mcp— the FastMCP server/adapter package published asjira2mcp.packages/jira2cli— the CLI adapter package for local/dev use.
Maintainers
jira2mcp releases are part of a multi-package workspace. Future tags use jira2mcp-vX.Y.Z, not broad v* tags.
See the maintainer release guide for sequencing, stop gates, and Trusted Publishing boundaries:
- https://github.com/en-ver/jira2ai/blob/main/docs/releasing.md
- https://github.com/en-ver/jira2ai/blob/main/CONTRIBUTING.md
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jira2mcp-0.1.6.tar.gz.
File metadata
- Download URL: jira2mcp-0.1.6.tar.gz
- Upload date:
- Size: 20.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ff415194989b45c3fc0bbd0e7da526aa2dbe472884620eb1cd8a91450b07fc47
|
|
| MD5 |
bc34a3ae6eb7ef49e5939c623706093d
|
|
| BLAKE2b-256 |
808b1dc4d67d66991ea100369da42573436830e2fd046f2cd8921fe0b2b0f19c
|
Provenance
The following attestation bundles were made for jira2mcp-0.1.6.tar.gz:
Publisher:
publish.yml on en-ver/jira2ai
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
jira2mcp-0.1.6.tar.gz -
Subject digest:
ff415194989b45c3fc0bbd0e7da526aa2dbe472884620eb1cd8a91450b07fc47 - Sigstore transparency entry: 1990303563
- Sigstore integration time:
-
Permalink:
en-ver/jira2ai@4d43b06443d80e01d30c8a60a69f100f66ed6ee2 -
Branch / Tag:
refs/tags/jira2mcp-v0.1.6 - Owner: https://github.com/en-ver
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4d43b06443d80e01d30c8a60a69f100f66ed6ee2 -
Trigger Event:
push
-
Statement type:
File details
Details for the file jira2mcp-0.1.6-py3-none-any.whl.
File metadata
- Download URL: jira2mcp-0.1.6-py3-none-any.whl
- Upload date:
- Size: 36.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e8a1179ef7efea26ff51727224395ea5551fbdbc1c4ada9d19476835f8ff089c
|
|
| MD5 |
7f8f53c3e815fc585376e2e99fc3fdcc
|
|
| BLAKE2b-256 |
27ce1d16d74f130f786da4b71ef6bcc217b2b6b389b39b95132171b4b4bef47c
|
Provenance
The following attestation bundles were made for jira2mcp-0.1.6-py3-none-any.whl:
Publisher:
publish.yml on en-ver/jira2ai
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
jira2mcp-0.1.6-py3-none-any.whl -
Subject digest:
e8a1179ef7efea26ff51727224395ea5551fbdbc1c4ada9d19476835f8ff089c - Sigstore transparency entry: 1990303635
- Sigstore integration time:
-
Permalink:
en-ver/jira2ai@4d43b06443d80e01d30c8a60a69f100f66ed6ee2 -
Branch / Tag:
refs/tags/jira2mcp-v0.1.6 - Owner: https://github.com/en-ver
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@4d43b06443d80e01d30c8a60a69f100f66ed6ee2 -
Trigger Event:
push
-
Statement type: