Jira MCP Server
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.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Jira MCP Server show me all open bugs in project ABC"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
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
Related MCP server: JIRA MCP Server
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 installBuild the server:
npm run buildFor development with auto-rebuild:
npm run watchInstallation
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 inspectorThe Inspector will provide a URL to access debugging tools in your browser.
Available Tools
11 toolsadd_attachment_from_confluenceC
Add an attachment to a ticket on Jira from a Confluence page by its name on the api /rest/api/3/issue/{issueIdOrKey}/attachments. Do not use markdown in your query.
Inputs: issueIdOrKey (required), pageId (required), attachmentName (required).
add_attachment_from_public_urlA
Add an attachment from a public url to a ticket on Jira on the api /rest/api/3/issue/{issueIdOrKey}/attachments. Do not use markdown in your query.
Inputs: issueIdOrKey (required), imageUrl (required).
assign_ticketB
Assign a ticket on Jira on the api /rest/api/3/issue/{issueIdOrKey}/assignee. Do not use markdown in your query.
Inputs: accountId (required), issueIdOrKey (required).
create_ticketC
Create a ticket on Jira on the api /rest/api/3/issue. Do not use markdown in any field.
Inputs: project (required), summary (required), description (required), issuetype (required), +1 more.
delete_ticketC
Delete a ticket on Jira on the api /rest/api/3/issue/{issueIdOrKey}. Do not use markdown in your query.
Inputs: issueIdOrKey (required).
edit_ticketC
Edit a ticket on Jira on the api /rest/api/3/issue/{issueIdOrKey}. Do not use markdown in any field.
Inputs: issueIdOrKey (required), summary, description, labels, +1 more.
execute_jqlC
Execute a JQL query on Jira on the api /rest/api/3/search/jql. Do not use markdown in your query.
Inputs: jql (required), number_of_results.
get_all_statusesC
Get all the status on Jira on the api /rest/api/3/status. Do not use markdown in your query.
Inputs: number_of_results.
get_only_ticket_name_and_descriptionC
Get the name and description of the requested tickets on the api /rest/api/3/search/jql. Do not use markdown in your query.
Inputs: jql (required), number_of_results.
list_projectsC
List all the projects on Jira on the api /rest/api/3/project. Do not use markdown in your query.
Inputs: number_of_results.
query_assignableC
Query assignables to a ticket on Jira on the api /rest/api/3/user/assignable/search?project={project-name}. Do not use markdown in your query.
Inputs: project_key (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 11 tools
Most tools have distinct purposes targeting specific Jira operations like create, edit, delete, assign, query, and list. However, 'execute_jql' and 'get_only_ticket_name_and_description' both query tickets via JQL, creating some overlap that could cause confusion, though their descriptions clarify different output focuses.
All tool names follow a consistent verb_noun pattern with snake_case throughout, such as 'create_ticket', 'assign_ticket', and 'list_projects'. This predictability makes it easy for agents to understand and navigate the tool set without naming conflicts.
With 11 tools, the count is well-scoped for a Jira server, covering core operations like ticket management, attachments, queries, and project listing. Each tool appears to serve a specific function without unnecessary bloat, fitting typical server tool ranges.
The tool set provides good coverage for Jira workflows, including CRUD operations for tickets, assignment, attachments, and project/status queries. Minor gaps exist, such as missing tools for comments, transitions, or watchers, but core functionalities are present and agents can likely work around these omissions.
Maintenance
Related MCP Connectors
Manage projects, tasks, time tracking, and team collaboration through natural language.
Task manager your agent can fully operate: boards, tasks, sprints, roles, worklogs, day planner.
A TypeScript MCP server for Home Assistant, enabling programmatic management of entities, automati…
Track issues, projects and dependencies with your agent in a workspace you control.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA server implementation that allows AI models to interact with Jira through the Model Context Protocol, enabling tasks like JQL searches and retrieving issue details.-
- FlicenseNot gradedqualityDmaintenanceA 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.-
- AlicenseAqualityDmaintenanceA Model Context Protocol server that enables AI assistants like Claude to interact with Jira, allowing for project management tasks such as listing projects, searching issues, creating tickets, and managing sprints through natural language queries.71,677 npm2TypeScriptMIT
- AlicenseBqualityDmaintenanceA TypeScript-based server that enables Cursor editor to interact with Jira tickets for viewing, creating, commenting on, and updating tickets directly from the editor.76GPL 2.0