atmon docs

REFERENCE/TOOLKITS/JIRA.MD

Jira

Issue tracking. Create, search, and update issues, move them through workflow transitions, comment, and manage projects and sprints.

PropertyValue
Slugjira
Definition version0.1.0
Base URLhttps://api.atlassian.com
Auth schemesoauth2
Action tools31
By class14 read, 13 write, 4 destructive
Triggers0
Provider rate limitnot declared, so outbound calls are unpaced

Measured routing accuracy

65 golden cases replayed through the router over the whole index: measured over corpus ea4f12ad2948 (65 toolkits, 2283 tools indexed and 13 declared uncallable), 31 cases written by hand and 31 cases from the paraphrase pass, plus 3 context cases whose intent names no app and is decided by the session. A case counts as top-1 when its gold tool ranked first and top-8 when it reached the slate at all.

MeasureCasesShare
top-122/6533.8%
top-848/6573.8%

The sweep is offline: the reranker is a deterministic identity fake that returns candidates in the order retrieval produced them, so top-1 measures retrieval order rather than a reranked slate. just eval-live measures the same cases through the live reranker.

Authentication

Connect an entity with ConnectionsService.InitiateConnection, naming this toolkit's slug. Credentials stay in the connections vault; callers hold connected-account ids only.

oauth2

PropertyValue
Authorization URLhttps://auth.atlassian.com/authorize
Token URLhttps://auth.atlassian.com/oauth/token
Default scopesread:jira-work, write:jira-work, read:jira-user, offline_access
Refresh tokensyes, the refresh daemon renews ahead of expiry

Tools

31 action tools. The catalog-wide slug is jira.<tool>, which is what search_tools returns and call_tool takes.

jira.create_issue

Open a new issue, ticket, bug, story, or task in a project. Use when the user wants to file, log, or report something in Jira. Requires a project, issue type, and summary; assignee, priority, labels, and a parent (for a subtask) are optional.

Class write (writes, no confirmation needed). No scopes beyond the connection's defaults. Calls POST /ex/jira/{{params.cloud_id}}/rest/api/3/issue.

Arguments:

ArgumentTypeRequiredNotes
assigneeobjectnoAssignee object, e.g. {"accountId": "5b10a2..."}. Look up an accountId with search_users.
assignee.accountIdstringno
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
descriptionobjectnoIssue body in Atlassian Document Format (ADF), e.g. {"type":"doc","version":1,"content":[{"type":"paragraph","content": [{"type":"text","text":"..."}]}]}. Omit for no description.
issue_typestringyesIssue type name, e.g. "Bug", "Task", "Story", "Epic".
labelsarray of stringnoLabel names to apply.
parentobjectnoParent issue object for a subtask, e.g. {"key": "ENG-10"}.
parent.keystringno
priorityobjectnoPriority object, e.g. {"name": "High"}.
priority.namestringno
project_keystringyesProject key the issue belongs to, e.g. "ENG".
summarystringyesOne-line issue title.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
idstring
keystring
selfstring

Also retrieved by: "file a bug in jira", "open a new ticket for this", "log a task in the tracker", "report a problem to the team", "start a new story for this feature".

jira.get_issue

Get one Jira issue's full detail by key or id: summary, description, status, assignee, reporter, priority, labels, and dates. Use when the user names one specific Jira issue by its key. For many issues at once use search_issues instead.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /ex/jira/{{params.cloud_id}}/rest/api/3/issue/{{params.issue_key}}.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
fieldsstringnoComma-separated field names to return, e.g. "summary,status,assignee". Omit for the default field set.
issue_keystringyesIssue key or id, e.g. "ENG-42".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
fieldsobject
fields.assigneeobject
fields.assignee.accountIdstring
fields.assignee.displayNamestring
fields.createdstring
fields.descriptionobject
fields.issuetypeobject
fields.issuetype.namestring
fields.labelsarray of string
fields.priorityobject
fields.priority.namestring
fields.projectobject
fields.project.keystring
fields.project.namestring
fields.reporterobject
fields.reporter.accountIdstring
fields.reporter.displayNamestring
fields.statusobject
fields.status.namestring
fields.summarystring
fields.updatedstring
idstring
keystring
selfstring

Also retrieved by: "pull up a jira issue by its key", "what's the status of this ticket", "show me the details on that bug", "look up a specific jira ticket".

jira.update_issue

Edit an existing issue's summary, description, priority, assignee, labels, or parent. Use when the user wants to change, edit, retitle, or relabel a ticket, or hand it to someone else. For moving it to a different workflow status use transition_issue instead.

Class write (writes, no confirmation needed). No scopes beyond the connection's defaults. Calls PUT /ex/jira/{{params.cloud_id}}/rest/api/3/issue/{{params.issue_key}}.

Arguments:

ArgumentTypeRequiredNotes
assigneeobjectnoAssignee object, e.g. {"accountId": "5b10a2..."}.
assignee.accountIdstringno
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
descriptionobjectnoNew issue body in Atlassian Document Format (ADF). See create_issue for the shape.
issue_keystringyesIssue key or id to edit, e.g. "ENG-42".
labelsarray of stringnoReplaces the issue's full label set.
parentobjectnoParent issue object, e.g. {"key": "ENG-10"}.
parent.keystringno
priorityobjectnoPriority object, e.g. {"name": "High"}.
priority.namestringno
summarystringnoNew one-line title.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
updatedboolean

Also retrieved by: "change the title on this ticket", "reassign this bug to someone else", "edit the description of this ticket", "retitle that story", "relabel this task", "update the fields on a ticket".

jira.delete_issue

Permanently delete an issue. Use when the user wants to delete, remove, or trash a ticket, bug, story, or task. Fails if the issue has subtasks unless delete_subtasks is true. Irreversible.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). No scopes beyond the connection's defaults. Calls DELETE /ex/jira/{{params.cloud_id}}/rest/api/3/issue/{{params.issue_key}}.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
delete_subtasksbooleannoAlso delete the issue's subtasks. Default false.
issue_keystringyesIssue key or id to delete, e.g. "ENG-42".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
deletedboolean

Also retrieved by: "trash this jira ticket", "remove this bug from the jira project for good", "get rid of a jira issue entirely", "wipe this ticket out of jira", "delete one issue from the jira board".

jira.search_issues

Search across all Jira projects using Jira Query Language (JQL), e.g. 'status = "In Progress" ORDER BY updated DESC'. Use for any query spanning more than one issue: by project, status, assignee, label, or text. For one known issue use get_issue.

Class read (reads only). No scopes beyond the connection's defaults. Calls POST /ex/jira/{{params.cloud_id}}/rest/api/3/search/jql.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
fieldsarray of stringnoField names to return per issue, e.g. ["summary", "status", "assignee"]. Omit for the default field set.
jqlstringyesJQL query, e.g. 'project = ENG AND status = "In Progress" ORDER BY updated DESC'.
max_resultsintegernoPage size, default 50.
next_page_tokenstringnoToken from a previous response's nextPageToken.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
issuesarray of object
issues[].fieldsobject
issues[].fields.assigneeobject
issues[].fields.statusobject
issues[].fields.summarystring
issues[].idstring
issues[].keystring
nextPageTokenstring

Also retrieved by: "find every open bug assigned to me", "look up tickets by project and status", "run a jql query across the tracker", "what's still outstanding in this project", "filter tickets by label".

jira.assign_issue

Assign an issue to a person, or unassign it. Use when the user wants to assign, reassign, hand off, or take an issue. Pass null to unassign, or "-1" to set the project's default assignee.

Class write (writes, no confirmation needed). No scopes beyond the connection's defaults. Calls PUT /ex/jira/{{params.cloud_id}}/rest/api/3/issue/{{params.issue_key}}/assignee.

Arguments:

ArgumentTypeRequiredNotes
account_idanyyesAssignee's Atlassian accountId from search_users, "-1" for the project's default assignee, or null to unassign.
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
issue_keystringyesIssue key or id, e.g. "ENG-42".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
assignedboolean

Also retrieved by: "hand this ticket to someone", "give this bug to a teammate", "take this ticket myself", "unassign this task", "put the default assignee back on it".

jira.list_transitions

List the workflow transitions available for an issue right now, e.g. moving it from "To Do" to "In Progress" or "Done". Use before transition_issue to find the transition id for the status the user named.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /ex/jira/{{params.cloud_id}}/rest/api/3/issue/{{params.issue_key}}/transitions.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
issue_keystringyesIssue key or id, e.g. "ENG-42".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
transitionsarray of object
transitions[].idstring
transitions[].namestring
transitions[].toobject
transitions[].to.namestring

Also retrieved by: "what statuses can this ticket move to", "show me the next steps for this ticket", "what workflow moves are available here".

jira.transition_issue

Move an issue to a new workflow status, e.g. mark it done, move it to in progress, resolve it, reopen it, or send it back a step. Use when the user wants to change an issue's state. Requires a transition_id from list_transitions.

Class write (writes, no confirmation needed). No scopes beyond the connection's defaults. Calls POST /ex/jira/{{params.cloud_id}}/rest/api/3/issue/{{params.issue_key}}/transitions.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
fieldsobjectnoExtra fields to set as part of the transition, e.g. {"resolution": {"name": "Done"}}. Omit when the transition needs no extra fields.
issue_keystringyesIssue key or id, e.g. "ENG-42".
transition_idstringyesTransition id from list_transitions.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
transitionedboolean

Also retrieved by: "move this ticket to done", "mark this bug as resolved", "send this story back to in progress", "close out this task", "reopen that ticket", "mark this ticket as done".

jira.list_issue_types

List the issue types available on the site: Bug, Task, Story, Epic, and any custom types, each with whether it is a subtask type. Use to find the exact issue_type name create_issue expects.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /ex/jira/{{params.cloud_id}}/rest/api/3/issuetype.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.

Also retrieved by: "what kinds of tickets can I create", "show me the available issue categories", "list the ticket types on this site".

jira.list_comments

List the comments on an issue, oldest first. Use when the user wants to read the discussion, history, or conversation on a ticket.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /ex/jira/{{params.cloud_id}}/rest/api/3/issue/{{params.issue_key}}/comment.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
issue_keystringyesIssue key or id, e.g. "ENG-42".
max_resultsintegernoPage size, default 50.
start_atintegernoOffset into the comment list, default 0.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
commentsarray of object
comments[].authorobject
comments[].author.displayNamestring
comments[].bodyobject
comments[].createdstring
comments[].idstring
comments[].updatedstring
totalinteger

Also retrieved by: "what did people say on this ticket", "read the discussion on this bug", "show the conversation history on this issue", "list every comment on a ticket".

jira.add_comment

Add a new comment to an issue. Use when the user wants to comment, reply, note, or leave an update on a ticket. To change a comment already posted use update_comment.

Class write (writes, no confirmation needed). No scopes beyond the connection's defaults. Calls POST /ex/jira/{{params.cloud_id}}/rest/api/3/issue/{{params.issue_key}}/comment.

Arguments:

ArgumentTypeRequiredNotes
bodyobjectyesComment text in Atlassian Document Format (ADF), e.g. {"type":"doc","version":1,"content":[{"type":"paragraph","content": [{"type":"text","text":"..."}]}]}.
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
issue_keystringyesIssue key or id, e.g. "ENG-42".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
createdstring
idstring

Also retrieved by: "leave a note on this ticket", "reply on this bug with an update", "post a comment for the team", "tell them the fix shipped".

jira.update_comment

Edit the text of a comment already posted on an issue. Use when the user wants to fix, correct, or update something they or someone else wrote on a ticket.

Class write (writes, no confirmation needed). No scopes beyond the connection's defaults. Calls PUT /ex/jira/{{params.cloud_id}}/rest/api/3/issue/{{params.issue_key}}/comment/{{params.comment_id}}.

Arguments:

ArgumentTypeRequiredNotes
bodyobjectyesReplacement comment text in Atlassian Document Format (ADF). See add_comment for the shape.
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
comment_idstringyesComment id from list_comments.
issue_keystringyesIssue key or id, e.g. "ENG-42".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
idstring
updatedstring

Also retrieved by: "fix a typo in my last comment", "correct what I wrote on that ticket", "edit my earlier note".

jira.delete_comment

Permanently delete a comment from an issue. Use when the user wants to delete or remove a comment, not the whole issue. Irreversible.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). No scopes beyond the connection's defaults. Calls DELETE /ex/jira/{{params.cloud_id}}/rest/api/3/issue/{{params.issue_key}}/comment/{{params.comment_id}}.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
comment_idstringyesComment id to delete, from list_comments.
issue_keystringyesIssue key or id, e.g. "ENG-42".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
deletedboolean

Also retrieved by: "remove that comment", "delete what I posted by mistake", "take down a note on this ticket", "take down something I posted by mistake".

jira.list_projects

List or search projects (workspaces) on the site by name or key. Use when the user wants to see what projects exist or find a project's key.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /ex/jira/{{params.cloud_id}}/rest/api/3/project/search.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
max_resultsintegernoPage size, default 50.
querystringnoFilter by project name or key substring. Omit to list all.
start_atintegernoOffset into the project list, default 0.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
isLastboolean
totalinteger
valuesarray of object
values[].idstring
values[].keystring
values[].namestring
values[].projectTypeKeystring

Also retrieved by: "what projects exist in jira", "find the key for a project", "show me every project on the site", "show me every workspace we have".

jira.get_project

Get one project's (workspace's) detail by key or id: name, description, type, and who leads it. Use when the user names a specific project. For the whole list use list_projects.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /ex/jira/{{params.cloud_id}}/rest/api/3/project/{{params.project_key}}.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
project_keystringyesProject key or id, e.g. "ENG".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
descriptionstring
idstring
keystring
leadobject
lead.accountIdstring
lead.displayNamestring
namestring
projectTypeKeystring
urlstring

Also retrieved by: "tell me about this project", "who leads this project", "pull up project details", "who's running this and what's it about".

jira.create_project

Create a new project on the site. Use when the user wants to start, set up, or spin up a new project. Requires a unique key, a name, a project type, a project template, and a lead.

Class write (writes, no confirmation needed). Scopes manage:jira-project. Calls POST /ex/jira/{{params.cloud_id}}/rest/api/3/project.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
keystringyesUnique project key, e.g. "ENG". Uppercase letters, 2-10 chars.
lead_account_idstringyesAtlassian accountId of the project lead, from search_users.
namestringyesProject display name.
project_template_keystringyesTemplate key for the project type, e.g. "com.pyxis.greenhopper.jira:gh-simplified-agility-kanban".
project_type_keystringyesProject type, e.g. "software", "business", "service_desk".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
idstring
keystring
namestring

Also retrieved by: "spin up a new project", "set up a project for this team", "start a fresh project in jira".

jira.update_project

Rename a project, edit its description, or change its lead. Use when the user wants to edit or update a project's own details, not the issues inside it.

Class write (writes, no confirmation needed). Scopes manage:jira-project. Calls PUT /ex/jira/{{params.cloud_id}}/rest/api/3/project/{{params.project_key}}.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
descriptionstringnoNew project description, plain text.
lead_account_idstringnoNew project lead's accountId, from search_users.
namestringnoNew project display name.
project_keystringyesProject key or id to edit, e.g. "ENG".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
updatedboolean

Also retrieved by: "rename this project", "change who leads this project", "edit the project description".

jira.delete_project

Permanently delete a project (workspace) and every issue inside it. Use when the user explicitly asks to delete or remove a whole project, not a single issue. Irreversible once past the trash retention period.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). Scopes manage:jira-project. Calls DELETE /ex/jira/{{params.cloud_id}}/rest/api/3/project/{{params.project_key}}.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
project_keystringyesProject key or id to delete, e.g. "ENG".

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
deletedboolean

Also retrieved by: "remove this whole project", "delete a project and everything in it", "get rid of this project for good", "wipe out a project entirely".

jira.get_current_user

Get the profile of the connected account itself: accountId, display name, and email. Use to answer "who am I" or to get the caller's own accountId for assign_issue.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /ex/jira/{{params.cloud_id}}/rest/api/3/myself.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
accountIdstring
activeboolean
displayNamestring
emailAddressstring

Also retrieved by: "who am I logged in as", "what's my account id", "show my own profile".

jira.search_users

Look up people on the site by name or email. Use before assign_issue or create_issue when the user names a person rather than giving an accountId directly.

Class read (reads only). No scopes beyond the connection's defaults. Calls GET /ex/jira/{{params.cloud_id}}/rest/api/3/user/search.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
max_resultsintegernoPage size, default 50.
querystringyesName or email substring to match.

Also retrieved by: "find someone by name", "look up a teammate's email", "who matches this name in jira".

jira.list_boards

List the agile (scrum or kanban) boards on the site, optionally filtered to one project. Use to find a board_id for list_board_issues, list_board_sprints, or as a starting point before create_sprint.

Class read (reads only). Scopes read:board-scope:jira-software. Calls GET /ex/jira/{{params.cloud_id}}/rest/agile/1.0/board.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
max_resultsintegernoPage size, default 50.
project_key_or_idstringnoRestrict to boards of this project.
typestring, one of scrum, kanbannoRestrict to boards of this type.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
isLastboolean
valuesarray of object
values[].idinteger
values[].namestring
values[].typestring

Also retrieved by: "show me the scrum and kanban boards", "what boards exist for this project", "find the board id for this team".

jira.list_board_issues

List the issues on a board's kanban or backlog view, optionally filtered by JQL. Use when the user asks what's on a board, as opposed to one sprint's issues (use list_sprint_issues for that).

Class read (reads only). Scopes read:board-scope:jira-software. Calls GET /ex/jira/{{params.cloud_id}}/rest/agile/1.0/board/{{params.board_id}}/issue.

Arguments:

ArgumentTypeRequiredNotes
board_idintegeryesBoard id from list_boards.
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
jqlstringnoOptional JQL filter over the board's issues.
max_resultsintegernoPage size, default 50.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
issuesarray of object
issues[].fieldsobject
issues[].fields.statusobject
issues[].fields.summarystring
issues[].idstring
issues[].keystring
totalinteger

Also retrieved by: "what's on this board right now", "show every ticket on the board", "list the issues sitting on this board", "what's on this kanban view right now".

jira.list_board_sprints

List a board's sprints (iterations), optionally filtered to active, closed, or future ones. Use to find a sprint_id for get_sprint, start_sprint, close_sprint, or move_issues_to_sprint.

Class read (reads only). Scopes read:board-scope:jira-software. Calls GET /ex/jira/{{params.cloud_id}}/rest/agile/1.0/board/{{params.board_id}}/sprint.

Arguments:

ArgumentTypeRequiredNotes
board_idintegeryesBoard id from list_boards.
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
max_resultsintegernoPage size, default 50.
statestring, one of active, closed, futurenoRestrict to sprints in this state. Omit for all.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
isLastboolean
valuesarray of object
values[].endDatestring
values[].idinteger
values[].namestring
values[].startDatestring
values[].statestring

Also retrieved by: "show past and future sprints for this board", "what sprints has this board run", "find the sprint id I need".

jira.get_sprint

Get one sprint's (iteration's) detail by id: name, state, dates, and goal. Use when the user names a specific sprint. For a board's whole list use list_board_sprints.

Class read (reads only). Scopes read:sprint:jira-software. Calls GET /ex/jira/{{params.cloud_id}}/rest/agile/1.0/sprint/{{params.sprint_id}}.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
sprint_idintegeryesSprint id from list_board_sprints.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
endDatestring
goalstring
idinteger
namestring
originBoardIdinteger
startDatestring
statestring

Also retrieved by: "tell me about this sprint", "when does this sprint end", "what's the goal for this sprint", "when does this iteration wrap up".

jira.create_sprint

Create a new sprint (iteration) on a board, in the future state until started. Use when the user wants to plan, set up, or add a new sprint. Start it later with start_sprint.

Class write (writes, no confirmation needed). Scopes write:sprint:jira-software. Calls POST /ex/jira/{{params.cloud_id}}/rest/agile/1.0/sprint.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
end_datestring (date-time)noPlanned end, ISO 8601. Optional.
goalstringnoShort sprint goal. Optional.
namestringyesSprint name, e.g. "Sprint 24".
origin_board_idintegeryesBoard id the sprint belongs to, from list_boards.
start_datestring (date-time)noPlanned start, ISO 8601. Optional.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
idinteger
namestring
statestring

Also retrieved by: "plan a new sprint", "set up the next sprint for this board", "add a sprint to the schedule".

jira.start_sprint

Start a sprint (iteration) that is in the future state, moving it to active. Use when the user wants to start, begin, or kick off a sprint. Optionally set or move its start and end dates at the same time.

Class write (writes, no confirmation needed). Scopes write:sprint:jira-software. Calls POST /ex/jira/{{params.cloud_id}}/rest/agile/1.0/sprint/{{params.sprint_id}}.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
end_datestring (date-time)noNew end date, ISO 8601. Optional.
sprint_idintegeryesSprint id from list_board_sprints.
start_datestring (date-time)noNew start date, ISO 8601. Optional.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
idinteger
statestring

Also retrieved by: "kick off this sprint", "begin the sprint now", "get this sprint moving".

jira.close_sprint

Close an active sprint (iteration). Use when the user wants to close, end, wrap up, or complete a sprint. Incomplete issues are left for the team to move manually; this call does not move them.

Class write (writes, no confirmation needed). Scopes write:sprint:jira-software. Calls POST /ex/jira/{{params.cloud_id}}/rest/agile/1.0/sprint/{{params.sprint_id}}.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
sprint_idintegeryesSprint id from list_board_sprints.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
idinteger
statestring

Also retrieved by: "wrap up this sprint", "end the current sprint", "complete this sprint".

jira.delete_sprint

Permanently delete a sprint (iteration). Use when the user wants to delete or remove a sprint. Its issues are not deleted; they return to the backlog. Irreversible.

Class destructive (held by the mutation gate until the call's own arguments carry "confirm": true). Scopes delete:sprint:jira-software. Calls DELETE /ex/jira/{{params.cloud_id}}/rest/agile/1.0/sprint/{{params.sprint_id}}.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
sprint_idintegeryesSprint id to delete, from list_board_sprints.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
deletedboolean

Also retrieved by: "remove this sprint entirely", "get rid of a sprint", "delete a sprint from the board".

jira.list_sprint_issues

List the issues planned in one sprint (iteration), optionally filtered by JQL. Use when the user asks what's in a sprint, as opposed to a whole board's issues (use list_board_issues for that).

Class read (reads only). Scopes read:sprint:jira-software. Calls GET /ex/jira/{{params.cloud_id}}/rest/agile/1.0/sprint/{{params.sprint_id}}/issue.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
jqlstringnoOptional JQL filter over the sprint's issues.
max_resultsintegernoPage size, default 50.
sprint_idintegeryesSprint id from list_board_sprints.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
issuesarray of object
issues[].fieldsobject
issues[].fields.statusobject
issues[].fields.summarystring
issues[].idstring
issues[].keystring
totalinteger

Also retrieved by: "what's in this sprint", "show every ticket scheduled this sprint", "list the tickets for the current sprint", "what's planned for this iteration".

jira.move_issues_to_sprint

Move one or more issues into a sprint. Use when the user wants to add issues to, schedule issues into, or pull issues into a sprint. Up to 50 issues per call.

Class write (writes, no confirmation needed). Scopes write:sprint:jira-software. Calls POST /ex/jira/{{params.cloud_id}}/rest/agile/1.0/sprint/{{params.sprint_id}}/issue.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
issue_keysarray of stringyesIssue keys or ids to move in, e.g. ["ENG-42", "ENG-43"].
sprint_idintegeryesSprint id from list_board_sprints.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
movedboolean

Also retrieved by: "pull these tickets into the sprint", "schedule these issues for this sprint", "add these tickets to the current sprint".

Link two issues together, e.g. as blocking, duplicating, or relating to each other. Use when the user wants to connect, relate, or link one ticket to another. Not for parent/subtask; use parent on create_issue or update_issue for that.

Class write (writes, no confirmation needed). No scopes beyond the connection's defaults. Calls POST /ex/jira/{{params.cloud_id}}/rest/api/3/issueLink.

Arguments:

ArgumentTypeRequiredNotes
cloud_idstringyesAtlassian Cloud id of the connected Jira site.
commentobjectnoOptional comment to add alongside the link, e.g. {"body": {"type":"doc","version":1,"content":[...]}}.
comment.bodyobjectno
inward_issue_keystringyesIssue key on the inward side, e.g. the one being blocked for a "Blocks" link.
link_typestringyesLink type name, e.g. "Blocks", "Duplicate", "Relates".
outward_issue_keystringyesIssue key on the outward side, e.g. the one doing the blocking for a "Blocks" link.

Result fields (the payload is trimmed to these before it reaches the model):

FieldTypeNotes
linkedboolean

Also retrieved by: "connect these two tickets", "mark one ticket as blocking another", "relate this bug to that one".