- Home
- MCP servers
- Jira - GitHub
Jira - GitHub
- python
0
GitHub Stars
python
Language
6 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"tamarengel-jira-github-mcp": {
"command": "python",
"args": [
"-m",
"src.server.server"
],
"env": {
"JIRA_EMAIL": "your-email@example.com",
"GITHUB_TOKEN": "your-github-personal-access-token",
"GIT_REPO_URL": "https://github.com/owner/repo.git",
"JIRA_BASE_URL": "https://your-instance.atlassian.net",
"JIRA_API_TOKEN": "your-jira-api-token",
"GIT_DEFAULT_BRANCH": "main",
"GIT_REPO_LOCAL_PATH": "/path/to/local/repo"
}
}
}
}You connect Jira and GitHub inside your IDE with a modular MCP server that brings Jira issue tracking, GitHub workflow actions, and local Git operations into a seamless, AI-assisted conversation. This enables end-to-end development flow from an issue to a merged pull request, with minimal context switches and in-editor guidance.
How to use
You operate this MCP server through an MCP client integrated into your IDE (for example, an AI assistant that talks to the server over stdio). Start by running the server from your project, then configure your client to connect to it. Once connected, you can fetch Jira issues, create branches, open PRs, commit and push changes, and update Jira statuses, all guided by natural language prompts.
How to install
# Prerequisites
- Python 3.10+
- Git installed and available on PATH
- Access to Jira REST API v3
- Access to GitHub with a personal access token
# 1. Clone the project
git clone https://github.com/YOUR-USERNAME/jira-github-mcp.git
cd jira-github-mcp
# 2. Create and activate a virtual environment
uv venv
# or
python -m venv .venv
# 3. Install dependencies
uv sync
# or
pip install -r requirements.txt
# 4. Configure environment variables
JIRA_BASE_URL=https://your-instance.atlassian.net
JIRA_EMAIL=your-email@example.com
JIRA_API_TOKEN=your-jira-api-token
GITHUB_TOKEN=your-github-personal-access-token
GIT_REPO_URL=https://github.com/owner/repo.git
GIT_DEFAULT_BRANCH=main
# Optional: Local Git Repository Path
GIT_REPO_LOCAL_PATH=/path/to/local/repo
Configuration and run
Prepare the MCP server so your client can connect. Start the MCP server using the Python module entry point shown here, and ensure your client is configured to run the server from the project path.
python -m src.server.server
Alternatively, you may run the MCP server via the provided entrypoint if you have it installed as a CLI tool.
mcp-server
To connect from an MCP client, configure the client to use a local stdio server with the following settings.
{
"servers": {
"jira_github_mcp": {
"type": "stdio",
"command": "python",
"args": ["-m", "src.server.server"]
}
}
}
Security and best practices
Keep Jira and GitHub tokens in a secure secret manager or environment file. Grant the GitHub token the minimal required permissions for branches and pull requests. Do not expose tokens in logs or shared configurations.
Notes and troubleshooting
If the server fails to start, verify that Python 3.10+ is installed and that the necessary environment variables are set. Ensure network access to Jira and GitHub APIs is available from the environment where the server runs.
Examples and workflow patterns
You can follow an end-to-end flow: identify an issue in Jira, create a corresponding feature branch, implement changes, commit and push, open a PR on GitHub, and finally merge the PR while updating the Jira issue status.
Available tools
jira_get_issue
Retrieve a Jira issue by key with configurable fields.
jira_search_issues
Search Jira using JQL with pagination and filters.
jira_get_my_issues
List issues assigned to the current user with optional filters.
jira_transition_issue
Move an issue to another status with an optional comment.
create_branch_for_issue
Create a new Git branch based on a Jira issue (e.g., feature/KAN-15).
create_pull_request
Create a GitHub pull request from a branch.
git_commit_and_push
Stage changes, commit with a message, and push to the current branch.
merge_pull_request
Merge a PR using squash, merge, or rebase with optional CI checks.