@torocloud/legacy-jira-mcp-server
v1.0.1
Published
MCP server for integrating with legacy Jira version.
Readme
Atlassian MCP Server (Jira + Bitbucket + SonarCloud)
MCP server integrates with legacy Jira versions:
get_jira_issue: fetch Jira issue title and descriptionsearch_jira_issues: search Jira issues using a JQL queryadd_jira_comment: add a comment to an existing Jira issuecreate_jira_issue: create a new Jira issueupdate_jira_issue: update fields of an existing Jira issueget_jira_sprint: get the name of the currently active sprint for a Jira project
Requirements
- Node.js 18+
- npm
- Access credentials for:
- Jira Server (v6.x.x)
Install
npm installBuild
npm run buildEnvironment Variables
Set these in MCP server settings (recommended) or in your shell:
JIRA_BASE_URL- e.g.https://jira.example.comJIRA_USERNAME- Jira usernameJIRA_PASSWORD- Jira passwordJIRA_STRICT_SSL- optional,true(default) orfalse
VS Code MCP Configuration
Add this in your VS Code settings JSON:
{
"mcp": {
"servers": {
"atlassian": {
"type": "stdio",
"command": "node",
"args": ["/path/to/legacy-jira-mcp-server/dist/index.js"],
"env": {
"JIRA_BASE_URL": "https://jira.example.com",
"JIRA_USERNAME": "<jira-username>",
"JIRA_PASSWORD": "<jira-password>",
"JIRA_STRICT_SSL": "true",
}
}
}
}
}Available Tools
get_jira_issue
Input:
{
"issue_key": "PROJECT-123"
}Output: Jira issue key, title, URL, and description.
search_jira_issues
Search Jira issues using a JQL query.
Input:
{
"jql": "project = APP AND status = \"In Progress\"",
"max_results": 20
}jql(required): JQL query stringmax_results(optional): maximum number of results to return, default 20, max 100
Output: JSON array of matching issues, each with key, title, status, assignee, fixVersions, affectedVersions, and url.
add_jira_comment
Add a comment to an existing Jira issue.
Input:
{
"issue_key": "APP-123",
"body": "This is fixed in the latest deploy."
}issue_key(required): Jira issue keybody(required): comment text
Output: Confirmation message.
create_jira_issue
Create a new Jira issue. Bugs must include affected_versions.
Input:
{
"project_key": "APP",
"summary": "Something is broken",
"issue_type": "Bug",
"description": "Steps to reproduce...",
"assignee": "john.doe",
"fix_versions": ["v1.2"],
"affected_versions": ["v1.1"]
}project_key(required): Jira project keysummary(required): issue titleissue_type(required): e.g.Bug,Task,Storydescription,assignee,fix_versions,affected_versions(optional)
Output: JSON object with key, title, and url of the created issue.
update_jira_issue
Update fields of an existing Jira issue. Only provided fields will be changed.
Input:
{
"issue_key": "APP-123",
"summary": "Updated title",
"description": "Updated description",
"assignee": "jane.doe",
"fix_versions": ["v1.3"],
"affected_versions": ["v1.1"]
}issue_key(required): Jira issue key- All other fields optional; only provided fields are updated.
fix_versionsandaffected_versionsreplace existing values.
Output: Confirmation message.
get_jira_sprint
Get the name of the currently active sprint for a Jira project.
Input:
{
"project_key": "BLN"
}project_key(required): Jira project key
Output: the active sprint name, or a message if no active sprint is found.
Notes
- Jira integration uses
jira-clientwith REST API v2 (apiVersion: "2"), compatible with Jira Server 6.x endpoints used for issue lookup.
