# Jira Service Management (JSM) MCP

> Jira Service Management (JSM) MCP Server connects your AI client to your service desk data. It lets you read customer requests, check queue status, list service desks, and search knowledge bases directly via the Jira JSM API. Use it to automate IT support tasks, triage tickets, or pull up deep details on any service inquiry.

## Overview
- **Category:** industry-titans
- **Price:** Free
- **Tags:** itsm, service-desk, incident-management, queues, knowledge-base, automation

## Description

Jira Service Management (JSM) MCP Server connects your AI client directly to your service desk data. You can read customer requests, check queue status, list service desks, and search knowledge bases without writing complex API calls. This lets your agent automate IT support tasks, triage tickets, or pull up deep details on any service inquiry.

**Inspect System Health**
`get_info` retrieves general operational information about the JSM instance.

**Service Desk Configuration**
`list_service_desks` returns project keys, names, and IDs, letting you identify the right service desk for later queries. `get_service_desk` provides details and branding info for a specific support portal.

**Customer and Organization Management**
`list_organizations` retrieves all business organizations managed within JSM. `list_customers` pulls a list of all known customers attached to a service desk for account identification.

**Request Triage and Status**
`list_requests` lists summaries and statuses for all customer requests, letting you monitor the general support queue. `list_queues` lists defined queues for a service desk, showing where tickets are being triaged. `get_request` fetches complete information for a single customer request, including participants and custom field values. `list_request_types` lists all available request types, like 'IT Help' or 'Hardware Request', in a service catalog.

**Knowledge and Documentation**
`list_knowledge_bases` fetches a list of documentation available for a specific service desk, helping find solutions. 

**Core Data Retrieval**
`list_service_desks` returns project keys, names, and IDs, allowing you to identify the correct service desk for subsequent queries. `list_organizations` retrieves all business organizations managed within JSM.

## Tools

### get_info
Retrieves general system information for the JSM instance, useful for monitoring system health.

### get_request
Fetches full details for a specific customer request, including participants and custom field values.

### get_service_desk
Retrieves project details and branding information for a specific support portal.

### list_customers
Lists all customers associated with a specific service desk for account identification.

### list_knowledge_bases
Lists all available knowledge base articles for a given service desk, helping find solutions.

### list_organizations
Lists all business organizations supported by JSM, useful for data grouping.

### list_queues
Lists all queues defined for a service desk, helping track ticket status and backlogs.

### list_request_types
Lists all available request types (like 'IT Help' or 'Hardware Request') in a service catalog.

### list_requests
Lists summaries and statuses for all customer requests, essential for monitoring the general support queue.

### list_service_desks
Returns project keys, names, and IDs, allowing you to identify the correct service desk for subsequent queries.

## Prompt Examples

**Prompt:** 
```
List all active service desks in JSM.
```

**Response:** 
```
I'll fetch the list of available service desks from your Jira Service Management instance.
```

**Prompt:** 
```
Show me the latest customer requests.
```

**Response:** 
```
I'll retrieve the most recent requests across all service desks for you.
```

**Prompt:** 
```
Check the queues for service desk ID '1'.
```

**Response:** 
```
I'll look up the current queues and their status for that specific service desk.
```

## Capabilities

### Inspect System Health
The `get_info` tool retrieves general operational information about the JSM instance.

### Retrieve Full Ticket Details
The `get_request` tool fetches complete information for a single customer request, including participants and custom fields.

### Get Service Desk Configuration
The `get_service_desk` tool provides details and branding information for a specific support portal.

### List Support Customers
The `list_customers` tool pulls a list of all known customers attached to a service desk.

### List Knowledge Base Articles
The `list_knowledge_bases` tool fetches a list of documentation available for a specific service desk.

### List Business Units
The `list_organizations` tool retrieves all business organizations managed within JSM.

### Check Queue Status
The `list_queues` tool lists defined queues for a service desk, showing where tickets are being triaged.

## Use Cases

### Investigating a Single, Complex Ticket
A support agent gets a call about a strange error. Instead of reading through the ticket history manually, the agent tells their AI client to run `get_request` on the ticket ID. The agent instantly gets all participants and custom fields, letting them confirm the required steps without wasting time.

### Auditing the Entire Support Backlog
The Service Desk Manager needs to know the total volume of unassigned work. They instruct their agent to first run `list_service_desks` to find the correct scope, then call `list_requests` and `list_queues` to get a real-time count and status of all pending tickets.

### Onboarding a New Support Team
The Ops Engineer needs to map out the entire support ecosystem. They run `list_organizations` to see all business units, then use `list_customers` for each one, and finally `list_knowledge_bases` to see what documentation exists for that unit.

### Checking Service Availability
A developer wants to see if a specific service offering is even available. They ask their agent to run `list_request_types` and `list_service_desks` to confirm the service catalog and the operational scope.

## Benefits

- **Deep Dive into Tickets:** Use `get_request` to pull more than just the summary. You get the full history, every participant, and custom field data for deep investigations.
- **Know Your Scope:** Before querying tickets, run `list_service_desks` to find the correct project key or ID. This prevents bad calls and ensures your agent targets the right support portal.
- **Monitor Backlogs:** Use `list_requests` to get a quick overview of all open tickets, or use `list_queues` to see exactly which triage queues are building up with unassigned work.
- **Map Your Structure:** Run `list_organizations` and `list_customers` together. This lets your agent understand which business unit is responsible for which customer account, making reporting accurate.
- **Find Answers Fast:** Need documentation? `list_knowledge_bases` pulls the list of articles, letting your agent guide the user to the right self-help answer.
- **Understand Service Offerings:** Call `list_request_types` to see the full service catalog, letting your agent know what kind of requests the team can actually handle.

## How It Works

The bottom line is, your agent gets the exact data it needs from Jira, without needing to write any API code itself.

1. You prompt your AI client to investigate a customer issue (e.g., 'Find the status of ticket SD-123').
2. The agent determines it needs ticket data and calls the `get_request` tool, passing the ticket ID.
3. The server executes the API call and returns a detailed JSON object with the ticket's full description, participants, and custom fields to your agent.

## Frequently Asked Questions

**How do I use the `list_requests` tool to see all open tickets?**
The `list_requests` tool fetches a list of summaries and statuses across the service desk. This is the best starting point for monitoring the general health of the queue.

**What is the difference between `list_requests` and `get_request`?**
The difference is scope. `list_requests` gives you a high-level summary (keys and statuses) for many tickets. `get_request` requires a specific ID and gives you the complete, deep-dive record for one ticket.

**Does `list_service_desks` help me find the right project ID?**
Yes, it does. `list_service_desks` returns the project keys, names, and IDs. This is critical because most other tools need the correct service desk ID to function properly.

**Can I use `list_customers` to see billing information?**
No. `list_customers` only lists support recipients and their account details within the service desk context. It doesn't provide billing or financial records.

**How do I check the queue status with `list_queues`?**
Running `list_queues` lists all defined queues for a service desk, showing where tickets are being triaged. This helps identify backlogs and understand the workflow structure.

**How do I use `list_organizations` to understand customer groupings?**
It lists all organizations within JSM. This helps you group support data by business entity, letting your agent know which customers belong together for better context.

**What is the purpose of the `get_service_desk` tool?**
It retrieves details for a specific service desk. You use this to understand the portal's configuration and branding before automating support tasks.

**Can I use `list_knowledge_bases` to find relevant articles for a ticket?**
It lists all available knowledge base articles for a service desk. Your agent can use this list to pull documentation and suggest articles while resolving a customer request.

**How do I get Jira JSM API credentials?**
You need your Jira instance domain (e.g., acme.atlassian.net), your account email, and an API Token. You can generate an API Token in your Atlassian Account Settings under Security > API Token.

**Can I see requests from all service desks?**
The list_requests tool allows you to retrieve customer requests across your Jira Service Management instance, subject to your account permissions.

**Are knowledge base articles supported?**
Yes, you can list knowledge base articles for a specific service desk using the list_knowledge_bases tool.