How to Build an AI Agent for Jira Service Management (2026)
If your service desk runs on Jira Service Management, an AI agent that reads a request, pulls the reporter's history, answers from your knowledge base, and either replies or routes it to the right team is the highest-leverage automation you can add. There are two ways to get there: build it against the Jira Service Management REST API yourself, or connect an agent platform that already speaks JSM. This guide covers both honestly — the real API path with code, the production work it takes, and the faster route — so you can pick the one that fits your team.
What a Jira Service Management AI agent does
The loop is the same as any support agent, wired to Jira Service Management: a new request arrives → the agent reads it and the reporter's history → it calls tools (look up the asset, search your knowledge base, check an SLA or approval policy) → it posts a reply as a public comment or transitions the request to the right queue or assignee. The trick is doing that reliably against real requests, day after day. (New to agents generally? Start with AI agents for customer service.)
Option 1: Build it against the Jira Service Management API
Jira Service Management has a full REST API, so you can build the agent yourself. The pieces:
- Read requests — the Jira Service Management REST API to pull the request, its comments, and the reporter, plus the core Jira Cloud REST for issue fields.
- Reply / act — add a public comment to a request, or transition the underlying issue via the API.
- Trigger on new requests — a JSM automation rule or a Jira webhook fires your endpoint when a request is created.
A reply tool against the real Jira Service Management API looks like this:
import requests
JSM = "https://yourco.atlassian.net/rest/servicedeskapi"
AUTH = (EMAIL, API_TOKEN) # Atlassian email + API token (Basic auth)
def reply_to_request(issue_key: str, body: str):
r = requests.post(f"{JSM}/request/{issue_key}/comment",
json={"body": body, "public": True},
auth=AUTH, timeout=10)
r.raise_for_status() # handle 429 rate limits, token refresh
return {"status": "sent"}
Wrap that (and a get_reporter, a search_knowledge_base) as tools in an agent loop on the model of your choice — see our from-scratch walkthrough in how to build an AI agent: from scratch vs. platform.
The production part
The API calls are the easy bit. A Jira Service Management agent you'd trust also needs: a webhook endpoint (with signature verification and idempotency so a retried event doesn't double-reply), rate-limit handling (Atlassian Cloud throttles), grounding in your knowledge base and help center (embed the articles, keep them fresh), guardrails (escalate approvals, don't leak PII, respect SLAs), hosting 24/7, observability, and an eval harness over real historical requests. That's weeks of work plus upkeep — the undifferentiated infrastructure every support agent needs.
Option 2: Connect Jira Service Management via Macha
If the goal is a working agent on your service desk — not a project to maintain — a platform that connects natively is far faster. Macha layers on top of Jira Service Management (it's not a JSM replacement or a Marketplace app you install — it connects via OAuth and works autonomously):
- Native connector — authorize Jira Service Management and the agent can read requests and post replies, with a full set of request tools ready to use.
- Ground on your help center — add your knowledge base or help center as a Source so replies quote real articles instead of guessing.
- Any other system as a tool — Custom Tools turn your asset, billing, or internal APIs into agent capabilities by describing the endpoint. See Custom Tools.
- Runs and grades — the agent runs in the cloud triggered by new requests; Agent Analytics show every run, and Studies grade it against real historical requests before it goes live.
Grounding matters just as much as tools: point the agent at your knowledge base as a Source, and every answer is drawn from articles you control, so accuracy improves as your documentation does.
Build vs. connect — for Jira Service Management
| Build on the JSM API | Connect Macha | |
|---|---|---|
| Read/reply to requests | You write the API client | Native connector (OAuth) |
| Trigger on new requests | You build a webhook endpoint | Handled |
| Ground on knowledge base | You embed + host a vector store | Add it as a Source |
| Hosting, retries, observability | Your infrastructure | Built in |
| Evaluate before go-live | You build a harness | Studies |
| Time to a live agent | Weeks + ongoing | Same day |
So which should you build?
Build on the API if you need a fully custom runtime, have strict data-residency needs, or the agent is your product. For most Jira Service Management teams who just want requests resolved, a native connector gets you a measurable agent on your real requests far faster — and you keep your model of choice. You can start free on Macha, connect Jira Service Management, and test an agent on your own requests the same day.
FAQ
Is a Jira Service Management AI agent the same as Atlassian's own AI? Not necessarily. Atlassian offers built-in AI, but you can also run a model-agnostic agent on top of Jira Service Management (via its API or a platform like Macha) — useful if you want a specific model, custom tools, or to grade the agent your own way.
Do I need to install a Jira Service Management Marketplace app? No — Macha connects to Jira Service Management via OAuth and works autonomously; it's an AI layer on top of JSM, not a Marketplace app you install into your instance.
Can the agent take actions, not just answer? Yes — via the JSM API (comment, transition, assign) plus your own systems' APIs as tools (asset lookups, approvals), with guardrails on what it can do unattended.
How do I make sure it's accurate before it replies to customers? Ground it in your knowledge base and grade it against real historical requests first (Macha's Studies do this), start in a draft/approve mode, and widen autonomy per request type as it earns trust.
Resolve tickets automatically with AI agents
Macha's AI agents work on top of the help desk you already use — no code.
Shopify
Stripe
Slack
Notion
Google Workspace
Confluence

