Course
Give your AI a permanent memory of your business. A course for people who use ChatGPT or Claude daily.Compound Context
cloudJavaScriptMIT

About jira-mcp-server

This tool connects your AI assistant to your Jira account. You can instantly search tasks, update ticket details, attach files, assign teammates, and check project statuses using simple text instead of navigating complex menus or remembering special codes.

Tools (11)

execute_jql

Run a JQL query.

jqlnumber_of_results

get_only_ticket_name_and_description

Fetch ticket name and description.

jqlnumber_of_results

create_ticket

Create a Jira ticket.

project.keysummarydescriptionissuetype.nameparent

list_projects

List Jira projects.

number_of_results

delete_ticket

Delete a ticket.

issueIdOrKey

edit_ticket

Modify a ticket.

issueIdOrKeysummarydescriptionlabelsparent

get_all_statuses

Retrieve all statuses.

number_of_results

assign_ticket

Assign a ticket to a user.

accountIdissueIdOrKey

query_assignable

Find assignable users in a project.

project_key

add_attachment_from_public_url

Add an attachment from a public URL to a ticket.

issueIdOrKeyimageUrl

add_attachment_from_confluence

Add an attachment from a Confluence page to a ticket.

issueIdOrKeypageIdattachmentName

README

Jira communication server MCP Server

Talk to Jira

<a href="https://glama.ai/mcp/servers/v7nmyscj80"> <img width="380" height="200" src="https://glama.ai/mcp/servers/v7nmyscj80/badge" alt="Jira Server MCP server" /> </a>

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_from_public_url

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

add_attachment_from_confluence

  • Purpose: Add an attachment from a Confluence page to a ticket.
  • Parameters: issueIdOrKey, pageId, attachmentName.

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.