4.4.0npm · mcp-jira-cloud · current release
Observed 2026-08-22T16:54:50.982Z using mcpSecurity-inventory. Status: succeeded. Negotiated protocol: 2025-06-18.
{
"tools": {
"listChanged": true
}
}| Tool | Category | Annotations | Risk |
|---|---|---|---|
_internal_jira_set_authUse when the user wants to connect Jira using Basic Auth (email + API token). This tool should only be called when the user explicitly provides credentials.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"baseUrl": {
"type": "string"
},
"email": {
"type": "string",
"format": "email",
"pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
},
"apiToken": {
"type": "string",
"minLength": 1
},
"persist": {
"default": false,
"type": "boolean"
}
},
"required": [
"baseUrl",
"email",
"apiToken"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_add_commentUse when the user asks to add a comment to a specific ticket; confirm intent before posting.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1
},
"body": {
"type": "string",
"minLength": 1
}
},
"required": [
"issueIdOrKey",
"body"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_add_dashboard_gadgetAdd a gadget to a dashboard. Provide either moduleKey or uri to specify the gadget type.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"dashboardId": {
"type": "string",
"description": "Dashboard ID"
},
"moduleKey": {
"description": "Module key of the gadget type (e.g., com.atlassian.jira.gadgets:filter-results-gadget)",
"type": "string"
},
"uri": {
"description": "URI of the gadget type",
"type": "string"
},
"color": {
"description": "Gadget colour",
"type": "string",
"enum": [
"blue",
"red",
"yellow",
"green",
"cyan",
"purple",
"gray",
"white"
]
},
"position": {
"description": "Position on dashboard grid",
"type": "object",
"properties": {
"row": {
"type": "number",
"description": "Row position (0-indexed)"
},
"column": {
"type": "number",
"description": "Column position (0-indexed)"
}
},
"required": [
"row",
"column"
]
},
"title": {
"description": "Gadget title",
"type": "string"
},
"ignoreUriAndModuleKeyValidation": {
"default": false,
"description": "Skip validation of moduleKey/uri",
"type": "boolean"
}
},
"required": [
"dashboardId"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_add_labelsAdd, set, or remove labels on an issue. Use 'add' to append, 'set' to replace all, or 'remove' to delete specific labels.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"description": "Issue ID or key"
},
"labels": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "Labels to add/set/remove"
},
"operation": {
"default": "add",
"description": "Operation: 'add' appends, 'set' replaces all, 'remove' deletes specified labels",
"type": "string",
"enum": [
"add",
"set",
"remove"
]
}
},
"required": [
"issueIdOrKey",
"labels"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_add_voteAdd your vote to an issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_add_watcherAdd a user to watch an issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
},
"accountId": {
"type": "string",
"minLength": 1,
"description": "User account ID to add as watcher"
}
},
"required": [
"issueIdOrKey",
"accountId"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_add_worklogUse when the user wants to log time/work on a specific Jira ticket. Allows specifying time spent, start date/time, and an optional description.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "The issue key (e.g., PROJ-123) to log work against"
},
"timeSpent": {
"type": "string",
"minLength": 1,
"description": "Time spent in Jira format (e.g., '1h', '30m', '1h 30m', '1d')"
},
"started": {
"description": "When the work started in ISO 8601 format (e.g., '2026-02-13T14:00:00.000+0000'). Defaults to now if not provided.",
"type": "string"
},
"comment": {
"description": "Optional description of the work performed",
"type": "string"
}
},
"required": [
"issueIdOrKey",
"timeSpent"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_assign_issueAssign or unassign a Jira issue to a user.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
},
"accountId": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"description": "User account ID to assign, '-1' for automatic, or null to unassign"
}
},
"required": [
"issueIdOrKey",
"accountId"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_auth_statusCheck the current authentication status and type.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_autocomplete_jqlGet autocomplete suggestions for JQL field values. Useful for building JQL queries interactively.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"fieldName": {
"description": "Field name to get value suggestions for (e.g., status, priority, assignee)",
"type": "string"
},
"fieldValue": {
"description": "Partial value to autocomplete",
"type": "string"
},
"predicateName": {
"description": "Predicate name for function suggestions",
"type": "string"
},
"predicateValue": {
"description": "Partial predicate value to autocomplete",
"type": "string"
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_bulk_edit_issuesEdit multiple issues at once. Supports bulk editing of labels, assignee, priority, components, and fix versions. Returns a taskId to track progress.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdsOrKeys": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "Array of issue IDs or keys to edit"
},
"editedFieldsInput": {
"type": "object",
"properties": {
"labels": {
"type": "object",
"properties": {
"add": {
"description": "Labels to add",
"type": "array",
"items": {
"type": "string"
}
},
"remove": {
"description": "Labels to remove",
"type": "array",
"items": {
"type": "string"
}
},
"set": {
"description": "Labels to set (replaces all)",
"type": "array",
"items": {
"type": "string"
}
}
}
},
"assignee": {
"type": "object",
"properties": {
"accountId": {
"type": "string",
"description": "Account ID of the assignee"
}
},
"required": [
"accountId"
]
},
"priority": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Priority ID"
}
},
"required": [
"id"
]
},
"components": {
"type": "object",
"properties": {
"add": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
]
}
},
"remove": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
]
}
}
}
},
"fixVersions": {
"type": "object",
"properties": {
"add": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
]
}
},
"remove": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
]
}
}
}
}
},
"description": "Fields to edit with their operations"
},
"sendNotifications": {
"default": true,
"description": "Whether to send email notifications",
"type": "boolean"
}
},
"required": [
"issueIdsOrKeys",
"editedFieldsInput"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_bulk_unwatch_issuesRemove watchers from multiple issues at once. Returns a taskId to track progress.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdsOrKeys": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "Array of issue IDs or keys to unwatch"
},
"accountIds": {
"description": "Account IDs to remove as watchers (defaults to current user)",
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"issueIdsOrKeys"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": true,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Destructive | — |
jira_bulk_watch_issuesAdd watchers to multiple issues at once. Returns a taskId to track progress.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdsOrKeys": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "Array of issue IDs or keys to watch"
},
"accountIds": {
"description": "Account IDs to add as watchers (defaults to current user)",
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"issueIdsOrKeys"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_clear_authUse when the user asks to remove or reset stored Jira credentials.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
}Annotations{
"readOnlyHint": false,
"destructiveHint": true,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Destructive | — |
jira_complete_sprintComplete an active sprint. Optionally move incomplete issues to another sprint or backlog.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"sprintId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Sprint ID to complete"
},
"moveIncompleteIssuesTo": {
"description": "Sprint ID to move incomplete issues to (omit to move to backlog)",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"sprintId"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_create_filterCreate a new saved filter.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"description": "Filter name"
},
"jql": {
"type": "string",
"minLength": 1,
"description": "JQL query"
},
"description": {
"description": "Filter description",
"type": "string"
},
"favourite": {
"description": "Mark as favourite",
"type": "boolean"
}
},
"required": [
"name",
"jql"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_create_issueCreate a new Jira issue. Requires project key, issue type, and summary at minimum.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"projectKey": {
"type": "string",
"minLength": 1,
"description": "Project key (e.g., 'MXTS')"
},
"issueType": {
"type": "string",
"minLength": 1,
"description": "Issue type name or ID (e.g., 'Bug', 'Task', 'Story')"
},
"summary": {
"type": "string",
"minLength": 1,
"description": "Issue title/summary"
},
"description": {
"description": "Issue description (plain text, will be converted to ADF)",
"type": "string"
},
"assignee": {
"description": "Assignee account ID. Use '-1' for automatic assignment.",
"type": "string"
},
"reporter": {
"description": "Reporter account ID",
"type": "string"
},
"priority": {
"description": "Priority name or ID (e.g., 'High', 'Medium', 'Low')",
"type": "string"
},
"labels": {
"description": "Array of label strings",
"type": "array",
"items": {
"type": "string"
}
},
"components": {
"description": "Array of component names or IDs",
"type": "array",
"items": {
"type": "string"
}
},
"fixVersions": {
"description": "Array of fix version names or IDs",
"type": "array",
"items": {
"type": "string"
}
},
"affectsVersions": {
"description": "Array of affected version names or IDs",
"type": "array",
"items": {
"type": "string"
}
},
"dueDate": {
"description": "Due date in YYYY-MM-DD format",
"type": "string"
},
"parentKey": {
"description": "Parent issue key for subtasks",
"type": "string"
},
"environment": {
"description": "Environment description",
"type": "string"
},
"originalEstimate": {
"description": "Original time estimate (e.g., '2h', '1d')",
"type": "string"
},
"customFields": {
"description": "Custom field values as key-value pairs",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"projectKey",
"issueType",
"summary"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_create_issue_linkCreate a link between two issues.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"inwardIssue": {
"type": "string",
"minLength": 1,
"description": "Inward issue key (the 'from' issue)"
},
"outwardIssue": {
"type": "string",
"minLength": 1,
"description": "Outward issue key (the 'to' issue)"
},
"linkType": {
"type": "string",
"minLength": 1,
"description": "Link type name (e.g., 'Blocks', 'Relates', 'Duplicates')"
},
"comment": {
"description": "Comment to add with the link",
"type": "string"
}
},
"required": [
"inwardIssue",
"outwardIssue",
"linkType"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_create_sprintCreate a new sprint on a board.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"boardId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Board ID"
},
"name": {
"type": "string",
"minLength": 1,
"description": "Sprint name"
},
"startDate": {
"description": "Start date (ISO 8601)",
"type": "string"
},
"endDate": {
"description": "End date (ISO 8601)",
"type": "string"
},
"goal": {
"description": "Sprint goal",
"type": "string"
}
},
"required": [
"boardId",
"name"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_get_all_labelsGet all labels used across all issues in the Jira instance.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"startAt": {
"default": 0,
"description": "Index of first result",
"type": "number"
},
"maxResults": {
"default": 1000,
"description": "Maximum results to return",
"type": "number"
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_attachment_contentGet the content/download URL for an attachment. Returns the redirect URL or content depending on redirect setting.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Attachment ID"
},
"redirect": {
"default": true,
"description": "Whether to return redirect URL (true) or follow redirect (false)",
"type": "boolean"
}
},
"required": [
"id"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_attachment_metadataGet metadata for a specific attachment by ID.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Attachment ID"
}
},
"required": [
"id"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_attachmentsGet all attachments for an issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_backlog_issuesGet issues in the backlog (not in any active sprint) for a board.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"boardId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Board ID"
},
"jql": {
"description": "Additional JQL filter",
"type": "string"
},
"fields": {
"description": "Fields to return",
"type": "array",
"items": {
"type": "string"
}
},
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"default": 50,
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"required": [
"boardId"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_boardGet details of a specific board including configuration.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"boardId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Board ID"
}
},
"required": [
"boardId"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_board_configurationGet the configuration of a board including columns, estimation, and ranking.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"boardId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Board ID"
}
},
"required": [
"boardId"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_boardsGet all Scrum and Kanban boards, optionally filtered by project or type.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"projectKeyOrId": {
"description": "Filter boards by project",
"type": "string"
},
"type": {
"description": "Filter by board type",
"type": "string",
"enum": [
"scrum",
"kanban",
"simple"
]
},
"name": {
"description": "Filter boards by name (contains)",
"type": "string"
},
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"default": 50,
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 50
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_bulk_operation_progressCheck the progress of an async bulk operation using its taskId.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"taskId": {
"type": "string",
"description": "The task ID returned from a bulk operation"
}
},
"required": [
"taskId"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_changelogGet the history of changes for an issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
},
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"default": 20,
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_componentsGet components for a specific project.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"projectKey": {
"type": "string",
"minLength": 1,
"description": "Project key"
}
},
"required": [
"projectKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_create_metadataGet metadata for creating issues in a project, including available issue types and their fields. Uses the modern non-deprecated API endpoints.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"projectIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Project key or ID (required)"
},
"issueTypeId": {
"description": "Issue type ID to get field metadata for (optional - if not provided, returns available issue types)",
"type": "string"
},
"startAt": {
"description": "Starting index for pagination",
"type": "number"
},
"maxResults": {
"description": "Maximum results (default 50, max 50)",
"type": "number"
}
},
"required": [
"projectIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_dashboardGet details of a specific dashboard by ID.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Dashboard ID"
}
},
"required": [
"id"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_dashboard_gadgetsGet all gadgets on a dashboard.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"dashboardId": {
"type": "string",
"description": "Dashboard ID"
},
"moduleKey": {
"description": "Filter by gadget module keys",
"type": "array",
"items": {
"type": "string"
}
},
"uri": {
"description": "Filter by gadget URI",
"type": "string"
},
"gadgetId": {
"description": "Filter by gadget IDs",
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"dashboardId"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_dashboardsGet a list of dashboards. Can filter by favourite or owned dashboards.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"filter": {
"description": "Filter dashboards: 'favourite' for favourited, 'my' for owned",
"type": "string",
"enum": [
"favourite",
"my"
]
},
"startAt": {
"default": 0,
"description": "Index of first result",
"type": "number"
},
"maxResults": {
"default": 50,
"description": "Maximum results to return",
"type": "number"
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_deleted_worklog_idsGet IDs of worklogs that were deleted since a specific date/time. Useful for audit and sync purposes.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"since": {
"type": "string",
"description": "Get worklogs deleted since this date. ISO 8601 format or Unix timestamp in milliseconds."
}
},
"required": [
"since"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_edit_metadataGet metadata for editing a specific issue, including editable fields.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_epic_issuesGet all issues belonging to an epic.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"epicIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Epic ID or key"
},
"jql": {
"description": "Additional JQL filter",
"type": "string"
},
"fields": {
"description": "Fields to return",
"type": "array",
"items": {
"type": "string"
}
},
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"default": 50,
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"required": [
"epicIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_epicsGet epics for a board.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"boardId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Board ID"
},
"done": {
"description": "Filter by completion status",
"type": "string",
"enum": [
"true",
"false"
]
},
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"default": 50,
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 50
}
},
"required": [
"boardId"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_favourite_filtersGet filters marked as favourite by the current user.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"expand": {
"description": "Expand options",
"type": "string"
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_fieldsGet all available fields including custom fields.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_filterGet details of a specific filter.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"filterId": {
"type": "string",
"minLength": 1,
"description": "Filter ID"
},
"expand": {
"description": "Expand options",
"type": "string"
}
},
"required": [
"filterId"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_filtersGet saved filters, optionally filtered by name.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"filterName": {
"description": "Filter by name (contains)",
"type": "string"
},
"owner": {
"description": "Filter by owner account ID",
"type": "string"
},
"expand": {
"description": "Expand options: description, owner, jql, viewUrl, searchUrl, favourite, favouritedCount, sharePermissions",
"type": "string"
},
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"default": 50,
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 50
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_issueGet FULL details of a specific issue by key (e.g., PROJ-123). Use when user asks: 'tell me about PROJ-123', 'what's the status of ABC-456', 'show me ticket XYZ-789'. Returns all fields including description, comments count, assignee, priority, etc.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1
},
"fields": {
"type": "array",
"items": {
"type": "string"
}
},
"expand": {
"type": "string"
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_issue_commentsUse when the user asks for the discussion or comments on a specific ticket; returns a clean list.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1
},
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_issue_linksGet all linked issues for a specific issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_issue_summaryGet just the summary, description, and acceptance criteria for an issue. Use when user wants to understand what a ticket is about. Examples: 'what does PROJ-123 need', 'show acceptance criteria for ABC-456'.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_issue_typesGet available issue types, optionally filtered by project.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"projectKey": {
"description": "Filter issue types for a specific project",
"type": "string"
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_issue_worklogsGet work logs recorded on a SPECIFIC Jira issue/ticket. Use when the user mentions a specific issue key like PROJ-123 and wants to see time logged on it. Examples: 'show worklogs on PROJ-123', 'how much time logged on ABC-456', 'who worked on this ticket'. Do NOT use for user timesheet reports - use jira_get_user_worklogs instead.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "The issue key (e.g., PROJ-123) to get work logs for"
},
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_link_typesGet available link types for linking issues.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_my_filtersGet filters owned by the current user.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"expand": {
"description": "Expand options",
"type": "string"
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_my_open_issuesGet issues assigned to the CURRENT USER that are not done. Use when user asks: 'show my tickets', 'what am I working on', 'my open issues', 'what should I do next'. Do NOT use for other users - use jira_search_issues with assignee filter instead.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"maxResults": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 50
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_prioritiesGet available priority levels for issues.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_projectUse when the user mentions a project key and asks for project details or metadata.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"projectIdOrKey": {
"type": "string",
"minLength": 1
}
},
"required": [
"projectIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_sprintGet details of a specific sprint.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"sprintId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Sprint ID"
}
},
"required": [
"sprintId"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_sprint_issuesGet all issues in a sprint.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"sprintId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Sprint ID"
},
"jql": {
"description": "Additional JQL filter",
"type": "string"
},
"fields": {
"description": "Fields to return",
"type": "array",
"items": {
"type": "string"
}
},
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"default": 50,
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
}
},
"required": [
"sprintId"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_sprintsGet sprints for a board, optionally filtered by state.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"boardId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Board ID"
},
"state": {
"description": "Filter by sprint state",
"type": "string",
"enum": [
"future",
"active",
"closed"
]
},
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"default": 50,
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 50
}
},
"required": [
"boardId"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_statusesGet available statuses, optionally filtered by project.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"projectKey": {
"description": "Filter statuses for a specific project",
"type": "string"
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_transitionsGet available workflow transitions for an issue. Use before transitioning to see valid options.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
},
"expand": {
"description": "Expand options: 'transitions.fields' to include required fields",
"type": "string"
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_updated_worklog_idsGet IDs of worklogs that were created or updated since a specific date/time. Use this to discover worklogs for reporting purposes.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"since": {
"type": "string",
"description": "Get worklogs updated since this date. Can be ISO 8601 format (e.g., '2026-01-15T00:00:00.000Z') or Unix timestamp in milliseconds."
},
"expand": {
"description": "Expand options for additional worklog properties",
"type": "string"
}
},
"required": [
"since"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_user_worklogsGet a USER's time tracking report across ALL issues within a date range. Use for timesheet reports, weekly/monthly summaries, or 'how much did X log this week'. Examples: 'show my worklogs this week', 'how much time did John log in January', 'my timesheet for last 7 days'. Do NOT use for worklogs on a specific issue - use jira_get_issue_worklogs instead.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"accountId": {
"description": "User account ID to filter worklogs for. If not provided, returns worklogs for the current user.",
"type": "string"
},
"since": {
"type": "string",
"description": "Start date for the report. ISO 8601 format (e.g., '2026-01-15') or relative like '30 days ago' will be parsed."
},
"until": {
"description": "End date for the report. Defaults to now if not provided.",
"type": "string"
},
"includeIssueDetails": {
"default": false,
"description": "Whether to fetch issue details (key, summary) for each worklog",
"type": "boolean"
}
},
"required": [
"since"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_versionsGet versions for a specific project.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"projectKey": {
"type": "string",
"minLength": 1,
"description": "Project key"
},
"released": {
"description": "Filter by released status",
"type": "boolean"
}
},
"required": [
"projectKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_votesGet the vote count and voters for an issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_watchersGet the list of users watching an issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_get_worklogs_by_idsGet full worklog details for a list of worklog IDs. Use after getting IDs from jira_get_updated_worklog_ids.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"ids": {
"minItems": 1,
"maxItems": 1000,
"type": "array",
"items": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"description": "Array of worklog IDs to fetch (max 1000)"
},
"expand": {
"description": "Expand options",
"type": "string"
}
},
"required": [
"ids"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_list_projectsUse when the user asks which Jira projects they can access or wants a list of projects.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 50
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_move_issues_to_backlogMove issues from a sprint back to the backlog.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueKeys": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"description": "Issue keys to move to backlog"
}
},
"required": [
"issueKeys"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_move_issues_to_epicMove issues to an epic.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"epicIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Epic ID or key"
},
"issueKeys": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"description": "Issue keys to move"
}
},
"required": [
"epicIdOrKey",
"issueKeys"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_move_issues_to_sprintMove issues to a sprint.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"sprintId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Target sprint ID"
},
"issueKeys": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"description": "Issue keys to move"
}
},
"required": [
"sprintId",
"issueKeys"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_oauth_exchange_codeExchange the authorization code for access tokens after the user has completed the OAuth flow.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"clientId": {
"type": "string",
"minLength": 1
},
"clientSecret": {
"type": "string",
"minLength": 1
},
"code": {
"type": "string",
"minLength": 1,
"description": "Authorization code from the OAuth callback"
},
"redirectUri": {
"type": "string",
"format": "uri"
},
"siteUrl": {
"description": "Optional: specific Jira site URL (e.g., https://yoursite.atlassian.net)",
"type": "string",
"format": "uri"
},
"persist": {
"default": false,
"type": "boolean"
}
},
"required": [
"clientId",
"clientSecret",
"code",
"redirectUri"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_oauth_get_auth_urlGenerate the OAuth 2.0 authorization URL that the user should visit to grant access. Returns the URL and required state parameter.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"clientId": {
"type": "string",
"minLength": 1,
"description": "OAuth Client ID from Atlassian Developer Console"
},
"redirectUri": {
"type": "string",
"format": "uri",
"description": "Callback URL configured in your OAuth app"
},
"scopes": {
"default": [
"read:jira-work",
"read:jira-user",
"write:jira-work",
"offline_access"
],
"description": "OAuth scopes to request",
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"clientId",
"redirectUri"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_oauth_list_sitesList all Jira sites accessible with the current OAuth token.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_oauth_refreshManually refresh the OAuth access token using the refresh token.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_oauth_set_tokensSet OAuth tokens directly if you already have them (e.g., from a previous session or external OAuth flow).Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"clientId": {
"type": "string",
"minLength": 1
},
"clientSecret": {
"type": "string",
"minLength": 1
},
"accessToken": {
"type": "string",
"minLength": 1
},
"refreshToken": {
"type": "string"
},
"cloudId": {
"description": "Cloud ID of the Jira site. If not provided, will be fetched automatically.",
"type": "string"
},
"siteUrl": {
"description": "Jira site URL to find the correct cloudId",
"type": "string",
"format": "uri"
},
"persist": {
"default": false,
"type": "boolean"
}
},
"required": [
"clientId",
"clientSecret",
"accessToken"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_parse_jqlParse JQL queries and return their abstract syntax tree (AST) structure. Useful for understanding query structure.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"queries": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "JQL queries to parse"
},
"validation": {
"default": "none",
"description": "Validation level",
"type": "string",
"enum": [
"strict",
"warn",
"none"
]
}
},
"required": [
"queries"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_rank_issuesChange the rank of issues on a board by placing them before or after another issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueKeys": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"description": "Issue keys to rank"
},
"rankBeforeIssue": {
"description": "Issue key to rank before",
"type": "string"
},
"rankAfterIssue": {
"description": "Issue key to rank after",
"type": "string"
}
},
"required": [
"issueKeys"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_remove_issues_from_epicRemove issues from their epic (move to no epic).Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueKeys": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"minLength": 1
},
"description": "Issue keys to remove from epic"
}
},
"required": [
"issueKeys"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_remove_voteRemove your vote from an issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": true,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Destructive | — |
jira_remove_watcherRemove a user from watching an issue.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
},
"accountId": {
"type": "string",
"minLength": 1,
"description": "User account ID to remove"
}
},
"required": [
"issueIdOrKey",
"accountId"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": true,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Destructive | — |
jira_resolvePrimary routing tool. Use this tool first when the user intent is clear (get issue, search, or my issues) but the exact Jira tool to call is uncertain.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"intent": {
"type": "string",
"enum": [
"get_issue",
"search",
"my_issues"
]
},
"issueKey": {
"type": "string"
},
"jql": {
"type": "string"
},
"maxResults": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 50
}
},
"required": [
"intent"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_search_dashboardsSearch for dashboards by name, owner, or other criteria.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"dashboardName": {
"description": "Filter by dashboard name (case insensitive contains)",
"type": "string"
},
"accountId": {
"description": "Filter by owner account ID",
"type": "string"
},
"groupname": {
"description": "Filter by group permission",
"type": "string"
},
"orderBy": {
"description": "Order results by field (prefix with - for descending)",
"type": "string",
"enum": [
"name",
"-name",
"id",
"-id",
"owner",
"-owner",
"favourite_count",
"-favourite_count"
]
},
"startAt": {
"default": 0,
"description": "Index of first result",
"type": "number"
},
"maxResults": {
"default": 50,
"description": "Maximum results",
"type": "number"
},
"expand": {
"description": "Expand options: description, owner, viewUrl, favourite, favouritedCount, sharePermissions, editPermissions",
"type": "string"
}
}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_search_issuesSearch for issues using JQL with FULL field details. Use when user needs detailed results or specific fields like description, assignee, priority. Examples: 'find all bugs in PROJ with full details', 'search issues assigned to me with descriptions'. For quick overview with just key/summary/status, use jira_search_issues_summary instead.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"jql": {
"type": "string",
"minLength": 1
},
"startAt": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"maxResults": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 200
},
"fields": {
"type": "array",
"items": {
"type": "string"
}
},
"expand": {
"type": "string"
},
"nextPageToken": {
"type": "string"
},
"reconcileIssues": {
"type": "boolean"
}
},
"required": [
"jql"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_search_issues_summarySearch for issues using JQL returning only key, summary, and status. PREFERRED for most searches - faster and less verbose. Use for: 'list my open issues', 'show bugs in PROJ', 'find tickets updated today'. Only use jira_search_issues if user explicitly needs full details.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"jql": {
"type": "string",
"minLength": 1
},
"maxResults": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 50
}
},
"required": [
"jql"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_search_usersSearch for Jira users by name, email, or username.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"description": "Search query (name, email, or username)"
},
"projectKey": {
"description": "Filter users with access to this project",
"type": "string"
},
"maxResults": {
"default": 10,
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 50
}
},
"required": [
"query"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_start_sprintStart a sprint that is in 'future' state.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"sprintId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Sprint ID"
},
"startDate": {
"description": "Start date (defaults to now)",
"type": "string"
},
"endDate": {
"type": "string",
"description": "End date (required for starting a sprint)"
}
},
"required": [
"sprintId",
"endDate"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_transition_issueMove a Jira issue to a different status by executing a workflow transition.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID"
},
"transitionId": {
"type": "string",
"minLength": 1,
"description": "Transition ID (get from jira_get_transitions)"
},
"comment": {
"description": "Comment to add during transition",
"type": "string"
},
"resolution": {
"description": "Resolution name for closing transitions (e.g., 'Done', 'Fixed')",
"type": "string"
},
"fields": {
"description": "Additional fields required by the transition",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"issueIdOrKey",
"transitionId"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_update_filterUpdate an existing filter.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"filterId": {
"type": "string",
"minLength": 1,
"description": "Filter ID"
},
"name": {
"description": "New filter name",
"type": "string"
},
"jql": {
"description": "New JQL query",
"type": "string"
},
"description": {
"description": "New description",
"type": "string"
},
"favourite": {
"description": "Favourite status",
"type": "boolean"
}
},
"required": [
"filterId"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_update_issueUpdate an existing Jira issue. Only provided fields will be modified.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"minLength": 1,
"description": "Issue key or ID (e.g., 'MXTS-123')"
},
"summary": {
"description": "New summary/title",
"type": "string"
},
"description": {
"description": "New description (plain text)",
"type": "string"
},
"assignee": {
"description": "Assignee account ID. Use null to unassign.",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"priority": {
"description": "Priority name or ID",
"type": "string"
},
"dueDate": {
"description": "Due date (YYYY-MM-DD) or null to clear",
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"labels": {
"description": "Label operations: add, remove, or set",
"type": "object",
"properties": {
"add": {
"type": "array",
"items": {
"type": "string"
}
},
"remove": {
"type": "array",
"items": {
"type": "string"
}
},
"set": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"components": {
"description": "Component operations: add, remove, or set",
"type": "object",
"properties": {
"add": {
"type": "array",
"items": {
"type": "string"
}
},
"remove": {
"type": "array",
"items": {
"type": "string"
}
},
"set": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"fixVersions": {
"description": "Fix version operations: add, remove, or set",
"type": "object",
"properties": {
"add": {
"type": "array",
"items": {
"type": "string"
}
},
"remove": {
"type": "array",
"items": {
"type": "string"
}
},
"set": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"customFields": {
"description": "Custom field values",
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
"notifyUsers": {
"default": true,
"description": "Send notifications to watchers",
"type": "boolean"
}
},
"required": [
"issueIdOrKey"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_update_sprintUpdate sprint details including name, dates, and goal.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"sprintId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Sprint ID"
},
"name": {
"description": "New sprint name",
"type": "string"
},
"state": {
"description": "Sprint state",
"type": "string",
"enum": [
"future",
"active",
"closed"
]
},
"startDate": {
"description": "Start date (ISO 8601)",
"type": "string"
},
"endDate": {
"description": "End date (ISO 8601)",
"type": "string"
},
"goal": {
"description": "Sprint goal",
"type": "string"
}
},
"required": [
"sprintId"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_upload_attachmentUpload a file attachment to an issue. Requires the file path on the local filesystem.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"issueIdOrKey": {
"type": "string",
"description": "Issue ID or key"
},
"filePath": {
"type": "string",
"description": "Absolute path to the file to upload"
},
"filename": {
"description": "Override the filename (defaults to original filename)",
"type": "string"
}
},
"required": [
"issueIdOrKey",
"filePath"
]
}Annotations{
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false,
"openWorldHint": true
} | — | Writes · Non-destructive | — |
jira_validate_jqlValidate one or more JQL queries for syntax and semantic correctness.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"queries": {
"minItems": 1,
"type": "array",
"items": {
"type": "string"
},
"description": "JQL queries to validate"
},
"validation": {
"default": "strict",
"description": "Validation level: strict (errors only), warn (errors and warnings), none (no validation)",
"type": "string",
"enum": [
"strict",
"warn",
"none"
]
}
},
"required": [
"queries"
]
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |
jira_whoamiUse when the user asks who they are in Jira or wants to verify the Jira account in use.Input schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
}Annotations{
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": true
} | — | Read only · Non-destructive | — |