home / mcp / github-jira mcp server
Provides secure integration between GitHub and Jira with permission controls and secure enforcement for MCP-based actions.
Configuration
View docs{
"mcpServers": {
"kronoswastaken-mcp-servers": {
"command": "python",
"args": [
"mcp_github_jira_server.py"
],
"env": {
"JIRA_URL": "https://your-domain.atlassian.net",
"LOG_LEVEL": "INFO",
"GITHUB_TOKEN": "your_token_here",
"JIRA_CLIENT_ID": "your_jira_oauth_client_id_here",
"JIRA_ACCESS_TOKEN": "<JIRA_ACCESS_TOKEN>",
"JIRA_CLIENT_SECRET": "your_jira_oauth_client_secret_here",
"JIRA_REFRESH_TOKEN": "<JIRA_REFRESH_TOKEN>"
}
}
}
}You can run a dedicated MCP server that securely connects GitHub and Jira, enabling automated workflows, permission checks, and coordinated actions between the two services. This guide shows you how to install, configure, and operate the GitHub-Jira MCP Server so you can automate issue creation, updates, and repository interactions with proper security controls.
Start the server to begin handling MCP requests from your client. The server runs as a local process, and your MCP client can invoke the GitHub and Jira tools to create issues, read repository content, manage workflows, and perform permission checks. Use the provided environment variables to authenticate with GitHub and Jira, and run the server from the project root with the specified command.
Prerequisites include Python 3.11 or newer, a GitHub Personal Access Token, and Jira OAuth App credentials. Ensure you have a working Python environment before proceeding.
# Step 1: Clone the MCP server repository
git clone <your-repo>
cd mcp-servers
# Step 2: Install dependencies (MCP runtime handles Python-based servers)
uv sync
# Step 3: Configure environment variables
cp env.example .env
# Edit .env with your actual credentialsConfigure environment variables to provide access tokens and endpoints for GitHub and Jira. You can store these in a .env file at the project root and reference them from the MCP client configuration.
MCP Client Configuration example shows how to register the server in your MCP client. The configuration uses a stdio server that runs the Python script directly and passes required credentials via environment variables.
{
"mcpServers": {
"github_jira": {
"command": "python",
"args": ["mcp_github_jira_server.py"],
"env": {
"GITHUB_TOKEN": "your_token_here",
"JIRA_URL": "https://your-domain.atlassian.net",
"JIRA_CLIENT_ID": "your_jira_oauth_client_id_here",
"JIRA_CLIENT_SECRET": "your_jira_oauth_client_secret_here"
}
}
}
}The server enforces permission checks for GitHub and Jira actions. Use scoped tokens and least-privilege access in GitHub, and configure Jira OAuth credentials with appropriate access. Regularly rotate tokens and secrets, and keep your .env file secure.
If you encounter authentication or permission issues, verify that your GITHUB_TOKEN has the required scopes and that the Jira OAuth flow is correctly configured with the right client ID, client secret, and redirect URI. Check that the JIRA_URL points to your Jira instance and that network access to both services is allowed from the MCP server environment.
Read file content from a GitHub repository with security checks
Create issues in the specified GitHub repository you own
Create pull requests in the specified GitHub repository you own
Delete files from a GitHub repository you own
Check the current GitHub permissions associated with your token
Create Jira issues in a project
Search Jira issues using JQL
Update fields of a Jira issue
Add comments to Jira issues
Move Jira issues through workflows
Check the current Jira permissions
Setup Jira OAuth authentication