Jira MCP Server + GitHub MCP Server

Intermediate45 minutes
Use Cases

Common Use Cases

  • Branch-to-issue linking
  • Auto-status transitions
  • PR description templates
  • Sprint code tracking
Before You Begin

Prerequisites

  • Jira project with API access
  • GitHub repository
  • Consistent branch naming convention
Walkthrough

Step-by-Step Guide

1

Define Naming Convention

Establish a branch naming pattern that includes the Jira issue key (e.g., feature/PROJ-123-description).

2

Auto-Link Branches

When a branch is created with a Jira key, automatically add a comment to the Jira issue.

3

Sync PR Status

When a PR is opened, move the Jira issue to 'In Review'. When merged, move to 'Done'.

async function syncPRToJira(pr) {
  const issueKey = extractJiraKey(pr.head.ref); // e.g., PROJ-123
  if (!issueKey) return;
  if (pr.state === "open") {
    await jira.transitionIssue({ issueKey, transition: "In Review" });
    await jira.addComment({ issueKey, body: `PR opened: ${pr.html_url}` });
  } else if (pr.merged) {
    await jira.transitionIssue({ issueKey, transition: "Done" });
  }
}
4

Generate Sprint Reports

Aggregate GitHub activity per Jira sprint for sprint review meetings.

Examples

Code Examples

typescript
Issue Key Extractor
function extractJiraKey(branchName) {
  const match = branchName.match(/([A-Z]+-\d+)/);
  return match ? match[1] : null;
}
Help

Troubleshooting

What if the branch name doesn't contain a Jira key?+
How do I handle multiple issues per PR?+

Quick Info

DifficultyIntermediate
Time Estimate45 minutes
Tools
Jira MCP ServerGitHub MCP Server

Need Integration Help?

Our team can implement this integration for you.

Get in Touch
CortexAgent Customer Service

Want to skip the form?

Our team is available to help you get started with CortexAgent.

This chat may be recorded for quality assurance. You can view our Privacy Policy.