Easy-to-use TypeScript MCP server for creating editing listing Jira tickets and managing projects
The Jira Communication Server MCP Server is a modular, TypeScript-based solution that connects AI applications to JIRA project management software through the Model Context Protocol (MCP). This server serves as a robust adapter, enabling seamless interactions between AI tools like Claude Desktop and specific functionalities within Jira. By leveraging MCP, it provides developers with powerful tools to execute a variety of operations including creating, editing, and manipulating Jira tickets.
The core features of the Jira Communication Server MCP Server are designed around executing tasks in Jira using a standardized model context interface. These functions include running JQL queries (execute_jql
), fetching specific ticket details (get_only_ticket_name_and_description
and query_assignable
), creating new tickets with tailored parameters such as summary, description, issue type etc., (using create_ticket
), listing projects (list_projects
), and managing project statuses via get_all_statuses
. Additionally, it offers functionalities to delete and update existing tickets through the delete_ticket
and edit_ticket
functions. The assign_ticket
function allows for robust assignment of work tasks by associating them with specific users, while add_attachment
enables the addition of attachments to tickets.
Each of these features is implemented as a REST API method, adhering strictly to the MCP protocol standards which ensures interoperability and ease-of-use across multiple AI applications. The execute_jql
function demonstrates capabilities aligned with query execution by accepting JQL (Jira Query Language) queries for precise data retrieval purposes. Similarly, creating, editing, and deleting tickets (create_ticket
, edit_ticket
, delete_ticket
) are critical tasks that provide full lifecycle management over Jira issues through the server.
At its core, the Jira Communication Server follows a modular design pattern inspired by the Model Context Protocol (MCP). This protocol is crucial for achieving seamless communication between AI applications and external tools or databases. By adhering strictly to this protocol, the server ensures that every operation executed via it integrates seamlessly with Jira while maintaining compliance requirements specified under MCP.
graph TD
A[AI Application] -->|MCP Client| B[MCP Protocol]
B --> C[MCP Server]
C --> D[Data Source/Tool]
style A fill:#e1f5fe
style C fill:#f3e5f5
style D fill:#e8f5e8
The Jira Communication Server supports a wide range of AI applications, including Claude Desktop and Continue. While Cursor currently lacks direct support, the server's capabilities remain compatible with its tools.
MCP Client | Resources | Tools | Prompts | Status |
---|---|---|---|---|
Claude Desktop | ✅ | ✅ | ✅ | Full Support |
Continue | ✅ | ✅ | ✅ | Full Support |
Cursor | ❌ | ✅ | ❌ | Tools Only |
To install and use the Jira Communication Server MCP Server, follow these steps:
Clone the Repository:
git clone https://github.com/your-repo-url.git jira-comm-server
cd jira-comm-server
npm install # Install all node modules
Build and Run the Server:
npm run build
.npm run watch
.Configure MCP Client Connection in Claude Desktop (on MacOS or Windows):
{
"mcpServers": {
"Jira communication server": {
"command": "node",
"args": [
"/PATH_TO_THE_PROJECT/build/index.js"
],
"env": {
"JIRA_URL": "https://YYYYYYY.atlassian.net",
"JIRA_API_MAIL": "Your [email protected]",
"JIRA_API_KEY": "YourApiKeyFromAtlassian"
}
}
}
}
Imagine a scenario where an AI application needs to create and manage tickets for a software development team. Developers can leverage the create_ticket
function to quickly generate new task entries within Jira, ensuring each ticket is fully described with necessary details like summary, description, issue type, and parent relationships if required.
In another use case, an intelligent automation tool can periodically scan for open issues using the execute_jql
function. Upon identifying relevant tickets, it could then automatically update ticket statuses or add comments based on predefined criteria, thus streamlining the resolution process and reducing manual effort.
The following snippet illustrates how to configure Jira Communication Server for use within Claude Desktop:
{
"mcpServers": {
"[server-name]": {
"command": "node",
"args": ["index.js"],
"env": {
"JIRA_URL": "https://YYYYYYY.atlassian.net",
"JIRA_API_MAIL": "Your [email protected]",
"JIRA_API_KEY": "ApiKeyFromAtlassian"
}
}
}
}
While the Jira Communication Server MCP Server is designed to handle a variety of operations efficiently, its performance will depend on network latency and the complexity of tasks executed. For extensive use cases, optimizing scripts and leveraging batch requests can significantly enhance speed and resource efficiency.
Environment | Supported Operation Types | Status |
---|---|---|
Single User | Read, Create, Update | Stable |
Team | Bulk Operations | Limited |
Large-scale | Integration Testing | Experimental |
For advanced users or security-conscious environments, the configuration options allow setting secure environment variables for authentication and configuring logging levels. It is essential to follow best practices in securing sensitive data such as API keys.
To enable detailed debug logs:
npm run build
node index.js --debug
How do I debug issues with the server?
You can use the built-in Inspector tool by running npm run inspector
. This will open a URL where you can monitor and troubleshoot communication issues over stdio.
Are there any limitations on ticket creation or editing functions? The limits depend on API rate limits imposed by Jira, but generally, creating and updating tickets are straightforward with this server. However, large bulk operations might require careful planning to avoid hitting these limits.
What happens if an operation fails during execution? Failing operations result in informative error messages which can be logged or displayed as notifications within MCP clients, helping users understand what went wrong without manual intervention.
Can I extend the functionality of this server with custom scripts? Absolutely! The modular nature of the Jira Communication Server allows developers to create custom scripts based on their specific needs and integrate them seamlessly into the existing structure.
Is there a way to optimize bulk operations for performance? Yes, batching multiple operations together can significantly improve performance by reducing network latency and minimizing API call overhead.
Contributions are welcome to enhance this server further! If you find issues or want to propose changes, please open an issue on GitHub. Contributions such as new features, improvements in documentation, bug fixes, etc., will be greatly appreciated and integrated based on our contribution guidelines.
To set up a local development environment:
npm install
.Explore more about the Model Context Protocol and its capabilities by visiting the official documentation or community forums dedicated to MCP servers. Engage with other developers building solutions on this platform to share knowledge, best practices, and insights into integrating AI applications effectively using MCP.
Learn to connect to MCP servers over HTTP with Python SDK using SSE for efficient protocol communication
Next-generation MCP server enhances documentation analysis with AI-powered neural processing and multi-language support
Analyze search intent with MCP API for SEO insights and keyword categorization
Learn how to use MCProto Ruby gem to create and chain MCP servers for custom solutions
Python MCP client for testing servers avoid message limits and customize with API key
AI Vision MCP Server offers AI-powered visual analysis, screenshots, and report generation for MCP-compatible AI assistants