The Jira MCP Server is a TypeScript-based server for interacting with Jira, enabling comprehensive project management through various functions:
- Execute JQL Queries: Run queries to retrieve specific ticket information
- Retrieve Ticket Details: Fetch names and descriptions of tickets
- Create Tickets: Create new tickets with customizable fields
- List Projects: View all available Jira projects
- Delete Tickets: Remove tickets by ID or key
- Edit Tickets: Modify summaries, descriptions, labels, and parent tickets
- Get Statuses: Retrieve all available Jira statuses
- Assign Tickets: Assign tickets to specific users
- Find Assignable Users: Query users who can be assigned to project tickets
- Add Attachments: Attach files from public URLs or Confluence pages
Provides comprehensive interaction with Jira's API, enabling JQL query execution, ticket management (creation, editing, deletion), project listing, status retrieval, user assignment, and attachment handling capabilities.
Jira communication server MCP Server
Talk to Jira
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:
Build the server:
For development with auto-rebuild:
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
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
The Inspector will provide a URL to access debugging tools in your browser.
You must be authenticated.
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
A TypeScript-based server that enables interaction with Jira, providing tools to execute JQL queries, manage tickets, list projects and statuses through natural language.
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityProvides capabilities for searching Jira issues using JQL and retrieving detailed issue information.Last updated -214617JavaScriptMIT License
- -securityFlicense-qualityA server implementation that allows AI models to interact with Jira through the Model Context Protocol, enabling tasks like JQL searches and retrieving issue details.Last updated -Python
- -securityFlicense-qualityA Model Context Protocol server that enables seamless integration between Cursor IDE and JIRA, allowing users to retrieve issues, execute JQL searches, and log work through natural language interactions.Last updated -Python
- -securityFlicense-qualityA TypeScript implementation of Model Context Protocol that provides integration tools for JIRA ticket creation and TODO management, allowing users to manage tasks through natural language interfaces.Last updated -TypeScript