MCP server exposing Jira Cloud tools via FastMCP
Project description
jira2mcp
MCP server for Jira Cloud — gives AI assistants like Claude the ability to read, create, edit, search, and comment on Jira issues.
Built with FastMCP and jira2py.
Setup
1. Get your Jira credentials
You need three values from your Jira Cloud instance:
| Variable | Description |
|---|---|
JIRA_URL |
Your Jira instance URL (e.g. https://yourcompany.atlassian.net) |
JIRA_USER |
Your Jira account email |
JIRA_API_TOKEN |
API token from id.atlassian.com/manage-profile/security/api-tokens |
2. Install uv (if not already installed)
uvx is part of uv, a fast Python package manager:
# 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: Shell environment variables
Export them in your shell profile (~/.bashrc, ~/.zshrc, etc.):
export JIRA_URL="https://yourcompany.atlassian.net"
export JIRA_USER="you@company.com"
export JIRA_API_TOKEN="your-api-token"
The MCP configuration stays minimal:
{
"mcpServers": {
"jira": {
"command": "uvx",
"args": ["jira2mcp"]
}
}
}
Option B: Inline in MCP configuration
If you prefer not to set global environment variables, provide them directly in the env section:
{
"mcpServers": {
"jira": {
"command": "uvx",
"args": ["jira2mcp"],
"env": {
"JIRA_URL": "https://yourcompany.atlassian.net",
"JIRA_USER": "you@company.com",
"JIRA_API_TOKEN": "your-api-token"
}
}
}
}
Tools
| Tool | Description |
|---|---|
jira_read |
Read a Jira issue by key with full details |
jira_search |
Search issues using JQL |
jira_create |
Create a new issue |
jira_edit |
Update an existing issue |
jira_comment |
Add a comment to an issue |
jira_comments |
List comments with pagination |
jira_fields |
Get field metadata for create/edit screens |
jira_projects |
List accessible projects |
jira_users |
Search users by name or email |
jira_attachment |
Download an attachment |
jira_add_link |
Create a link between two issues |
jira_delete_link |
Delete an issue link |
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 |
Key features
- Markdown in, Markdown out — write descriptions and comments in Markdown; they're auto-converted to Atlassian Document Format (ADF). ADF fields from Jira are converted back to Markdown.
- Field discovery — use
jira_fieldsto discover required and available fields before creating or editing issues. - User lookup — use
jira_usersto resolve display names to account IDs for assignment. - Extra fields — request additional fields on
jira_readbeyond the standard set; rich-text fields are auto-converted. - Link management — read the
data://jira/link-typesresource to discover available link types, then create or delete links between issues.
License
MIT
Project details
Release history Release notifications | RSS feed
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.0.tar.gz.
File metadata
- Download URL: jira2mcp-0.1.0.tar.gz
- Upload date:
- Size: 18.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48a88b86300af26cbe9914688280816eb876768cd4b9e8d61ccc48574d66bb0c
|
|
| MD5 |
5c7e3b6b215154457744c3722f15faa0
|
|
| BLAKE2b-256 |
f99235d5a8ce7575e797f16292a81ef64eb778ca73993ea3cf408f0b56215792
|
Provenance
The following attestation bundles were made for jira2mcp-0.1.0.tar.gz:
Publisher:
publish.yml on en-ver/jira2mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
jira2mcp-0.1.0.tar.gz -
Subject digest:
48a88b86300af26cbe9914688280816eb876768cd4b9e8d61ccc48574d66bb0c - Sigstore transparency entry: 1057338795
- Sigstore integration time:
-
Permalink:
en-ver/jira2mcp@ee77b73deb9a27f4307ee7d2166bff1b4dc12c85 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/en-ver
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@ee77b73deb9a27f4307ee7d2166bff1b4dc12c85 -
Trigger Event:
push
-
Statement type:
File details
Details for the file jira2mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: jira2mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 30.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b35955351bb2650b2ba0ac38ea9e812b5c0a290531251ae31ce66789b321f64c
|
|
| MD5 |
5627160d7b3d257157784a3bbff46952
|
|
| BLAKE2b-256 |
5af064bed19b08fd31cb6e258197c3fd0a73a25f6911e9d67cd273648ce1871b
|
Provenance
The following attestation bundles were made for jira2mcp-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on en-ver/jira2mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
jira2mcp-0.1.0-py3-none-any.whl -
Subject digest:
b35955351bb2650b2ba0ac38ea9e812b5c0a290531251ae31ce66789b321f64c - Sigstore transparency entry: 1057338859
- Sigstore integration time:
-
Permalink:
en-ver/jira2mcp@ee77b73deb9a27f4307ee7d2166bff1b4dc12c85 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/en-ver
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@ee77b73deb9a27f4307ee7d2166bff1b4dc12c85 -
Trigger Event:
push
-
Statement type: