Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

jira-mcp-server

MCP.Pizza Chef: KS-GEN-AI

The jira-mcp-server is a TypeScript-based MCP server designed to facilitate robust interaction with Jira through the Model Context Protocol. It provides essential tools for executing JQL queries, creating, editing, and deleting Jira tickets, and listing Jira projects and statuses. This server exemplifies core MCP concepts by exposing Jira functionalities in a structured, model-readable format, enabling AI models to perform real-time, context-aware operations on Jira data. It is ideal for developers looking to integrate Jira workflows into AI-enhanced applications or agents, streamlining issue tracking and project management tasks.

Use This MCP server To

Execute JQL queries to retrieve Jira issues Create new Jira tickets programmatically Edit existing Jira tickets via AI workflows Delete Jira tickets through automated processes List all Jira projects for overview or selection Fetch ticket names and descriptions for summaries Integrate Jira issue tracking into AI copilots

README

Jira communication server MCP Server

Talk to Jira

Jira Server MCP server

This is a TypeScript-based MCP server that provides tools to interact with Jira. It demonstrates core MCP concepts by providing:

  • Tools for executing JQL queries
  • Tools for creating, editing, and deleting Jira tickets
  • Tools for listing Jira projects and statuses

Features

Jira Tools

execute_jql

  • Purpose: Run a JQL query.
  • Parameters: jql, number_of_results (default: 1).

get_only_ticket_name_and_description

  • Purpose: Fetch ticket name and description.
  • Parameters: jql, number_of_results (default: 1).

create_ticket

  • Purpose: Create a Jira ticket.
  • Parameters: project.key, summary, description, issuetype.name, parent (optional).

list_projects

  • Purpose: List Jira projects.
  • Parameters: number_of_results (default: 1).

delete_ticket

  • Purpose: Delete a ticket.
  • Parameters: issueIdOrKey.

edit_ticket

  • Purpose: Modify a ticket.
  • Parameters: issueIdOrKey, summary (optional), description (optional), labels (optional), parent (optional).

get_all_statuses

  • Purpose: Retrieve all statuses.
  • Parameters: number_of_results (default: 1).

assign_ticket

  • Purpose: Assign a ticket to a user.
  • Parameters: accountId, issueIdOrKey.

query_assignable

  • Purpose: Find assignable users in a project.
  • Parameters: project_key.

add_attachment

  • Purpose: Add an attachment to a ticket.
  • Parameters: issueIdOrKey, imageUrl.

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

Installation

To use with Claude Desktop, add the server config:

On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json On Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "Jira communication server": {
      "command": "node",
      "args": [
        "/PATH_TO_THE_PROJECT/build/index.js"
      ],
      "env": {
        "JIRA_URL": "https://XXXXXXXX.atlassian.net",
        "JIRA_API_MAIL": "Your email",
        "JIRA_API_KEY": "KEY_FROM : https://id.atlassian.com/manage-profile/security/api-tokens"
      }
    }
  }
}

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:

npm run inspector

The Inspector will provide a URL to access debugging tools in your browser.

jira-mcp-server FAQ

How do I authenticate the jira-mcp-server with my Jira instance?
Authentication typically uses Jira API tokens or OAuth credentials configured in the server environment to securely connect to your Jira instance.
Can I customize the number of results returned by JQL queries?
Yes, the execute_jql tool accepts a 'number_of_results' parameter to limit the number of issues returned.
Does the jira-mcp-server support creating subtasks or parent-child ticket relationships?
Yes, the create_ticket tool includes an optional 'parent' parameter to specify parent issues for subtasks.
How does the server handle Jira project listing?
The list_projects tool fetches and returns all accessible Jira projects, enabling models to reference project keys and names.
Is it possible to update existing Jira tickets using this MCP server?
Yes, the server provides tools to edit Jira tickets, allowing updates to fields like summary, description, and status.
What programming language is the jira-mcp-server implemented in?
It is implemented in TypeScript, ensuring strong typing and modern JavaScript features.
Can this MCP server be used with different LLM providers?
Yes, it is provider-agnostic and can be integrated with models from OpenAI, Anthropic Claude, and Google Gemini.
How do I handle errors or failed Jira API calls?
The server returns structured error messages for failed API calls, which can be handled programmatically in your client or agent.
Is the jira-mcp-server open source and where can I find its code?
Yes, it is open source and available on GitHub, allowing customization and contributions.