> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tracecat.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Jira MCP

> Reference for the Tracecat Jira MCP integration: registered actions, required secrets, expected inputs, and example workflow usage.

## Add comment to issue

Action ID: `tools.jira.add_issue_comment`

Add a comment to an issue in Jira.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-comments/#api-rest-api-3-issue-issueidorkey-comment-post](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-comments/#api-rest-api-3-issue-issueidorkey-comment-post)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="comment" type="string | object" required>
  Comment to add to the issue. Plain strings are wrapped as ADF text paragraphs. JSON object strings are deserialized. Dictionaries are sent as the Jira comment `body` value.
</ParamField>

<ParamField path="issue_id_or_key" type="string" required>
  ID or key of the issue to add a comment to.
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net)).

  Default: `null`.
</ParamField>

## Assign issue

Action ID: `tools.jira.assign_issue`

Assign an issue to a user.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-assignee-put](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-assignee-put)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="issue_key" type="string" required>
  Jira issue key (e.g. TC-123)
</ParamField>

<ParamField path="user_id" type="string" required>
  Jira user ID (e.g. 1234567890)
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net))

  Default: `null`.
</ParamField>

## Create issue

Action ID: `tools.jira.create_issue`

Create a new issue in Jira.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-post](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-post)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="description" type="string | object" required>
  Detailed description of the incident. Plain strings are wrapped as ADF text paragraphs. JSON object strings are deserialized. Dictionaries are sent as provided.
</ParamField>

<ParamField path="issue_type_id" type="string" required>
  Jira issue type ID.
</ParamField>

<ParamField path="priority_id" type="string" required>
  Priority ID. Must be one of the priorities in the priority scheme.
</ParamField>

<ParamField path="project_id" type="string" required>
  Jira project ID.
</ParamField>

<ParamField path="summary" type="string" required>
  Brief one-line summary of the incident.
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net)).

  Default: `null`.
</ParamField>

<ParamField path="fields" type="array[object]">
  List of fields to add to the issue. ADF values can be passed as objects.
  For example usage: `[
      &#123;"customfield_10000": "New value"&#125;,
      &#123;"customfield_10001": &#123;"version": 1, "type": "doc", "content": []&#125;&#125;
    ]`

  Default: `[]`.
</ParamField>

<ParamField path="tags" type="array[string]">
  Tags to categorize the incident. Added as Jira labels.

  Default: `[]`.
</ParamField>

## Get fields

Action ID: `tools.jira.get_fields`

Get a list of fields from Jira.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-fields/#api-group-issue-fields](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-fields/#api-group-issue-fields)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net))

  Default: `null`.
</ParamField>

## Get issue

Action ID: `tools.jira.get_issue`

Get an issue from Jira by ID or key.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-get](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-get)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="issue_id_or_key" type="string" required>
  ID or key of the issue to get.
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net))

  Default: `null`.
</ParamField>

<ParamField path="fields" type="string">
  A list of fields to return for each issue, use it to retrieve a subset of fields. This parameter accepts a comma-separated list of strings. Expand options include: \*all, \*navigable, summary, comment,-description, -comment (defaults to \*all).

  Default: `"*all"`.
</ParamField>

## Get priorities by scheme

Action ID: `tools.jira.get_priorities`

Get a list of priorities from Jira for a given priority scheme.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-priority-schemes/#api-rest-api-3-priorityscheme-schemeid-priorities-get](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-priority-schemes/#api-rest-api-3-priorityscheme-schemeid-priorities-get)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="priority_scheme_id" type="string" required>
  Jira priority scheme ID.
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net))

  Default: `null`.
</ParamField>

<ParamField path="limit" type="integer">
  Maximum number of priorities to return.

  Default: `50`.
</ParamField>

## Get priority schemes

Action ID: `tools.jira.get_priority_schemes`

Get a list of priority schemes from Jira.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-priority-schemes/#api-rest-api-3-priorityscheme-get](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-priority-schemes/#api-rest-api-3-priorityscheme-get)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net))

  Default: `null`.
</ParamField>

<ParamField path="limit" type="integer">
  Maximum number of priority schemes to return.

  Default: `50`.
</ParamField>

## Get projects

Action ID: `tools.jira.get_projects`

Get a list of projects from Jira.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-projects/#api-rest-api-3-project-search-get](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-projects/#api-rest-api-3-project-search-get)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net))

  Default: `null`.
</ParamField>

<ParamField path="limit" type="integer">
  Maximum number of projects to return.

  Default: `50`.
</ParamField>

## Get transitions

Action ID: `tools.jira.get_transitions`

Get a list of available transitions for an issue.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-transitions-get](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-transitions-get)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="issue_id_or_key" type="string" required>
  ID or key of the issue to get transitions for.
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net)).

  Default: `null`.
</ParamField>

## Get user ID

Action ID: `tools.jira.get_user_id`

Get a user ID from Jira.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-user-search/#api-rest-api-3-user-search-get](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-user-search/#api-rest-api-3-user-search-get)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="username" type="string" required>
  Jira username (e.g. [john.doe@example.com](mailto:john.doe@example.com))
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net))

  Default: `null`.
</ParamField>

## Jira MCP

Action ID: `tools.jira.mcp`

Use AI to interact with Jira through Atlassian's remote MCP server.

Reference: [https://support.atlassian.com/atlassian-rovo-mcp-server/docs/getting-started-with-the-atlassian-remote-mcp-server/](https://support.atlassian.com/atlassian-rovo-mcp-server/docs/getting-started-with-the-atlassian-remote-mcp-server/)

### Secrets

Required secrets:

* `jira_mcp_oauth`: OAuth token `JIRA_MCP_USER_TOKEN`.

Optional secrets:

* `anthropic`: optional values `ANTHROPIC_API_KEY`.
* `openai`: optional values `OPENAI_API_KEY`.
* `gemini`: optional values `GEMINI_API_KEY`.
* `amazon_bedrock`: optional values `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, `AWS_REGION`, `AWS_ROLE_ARN`, `AWS_ROLE_SESSION_NAME`, `AWS_SESSION_TOKEN`, `AWS_BEARER_TOKEN_BEDROCK`, `AWS_MODEL_ID`, `AWS_INFERENCE_PROFILE_ID`.
* `custom-model-provider`: optional values `CUSTOM_MODEL_PROVIDER_API_KEY`, `CUSTOM_MODEL_PROVIDER_MODEL_NAME`, `CUSTOM_MODEL_PROVIDER_BASE_URL`.
* `azure_openai`: optional values `AZURE_API_BASE`, `AZURE_API_VERSION`, `AZURE_DEPLOYMENT_NAME`, `AZURE_API_KEY`, `AZURE_AD_TOKEN`, `AZURE_TENANT_ID`, `AZURE_CLIENT_ID`, `AZURE_CLIENT_SECRET`.
* `azure_ai`: optional values `AZURE_API_BASE`, `AZURE_API_KEY`, `AZURE_AD_TOKEN`, `AZURE_TENANT_ID`, `AZURE_CLIENT_ID`, `AZURE_CLIENT_SECRET`, `AZURE_API_VERSION`, `AZURE_AI_MODEL_NAME`.
* `litellm`: required values `LITELLM_BASE_URL`.

### Input fields

<ParamField path="instructions" type="string" required>
  Instructions for the agent.
</ParamField>

<ParamField path="user_prompt" type="string" required>
  User prompt to the agent.
</ParamField>

<ParamField path="model" type="ModelSelection | null">
  Model to use. Pick from the list of models enabled for this workspace. Provide this field, or both deprecated `model_name` and `model_provider`.

  Default: `null`.
</ParamField>

<ParamField path="model_name" type="string | null">
  Deprecated. Use `model` instead. If `model` is omitted, set this together with `model_provider`.

  Default: `null`.
</ParamField>

<ParamField path="model_provider" type="string | null">
  Deprecated. Use `model` instead. If `model` is omitted, set this together with `model_name`.

  Default: `null`.
</ParamField>

## Search issues

Action ID: `tools.jira.search_issues`

Search for issues in Jira using JQL.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-search/#api-rest-api-3-search-jql-get](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-search/#api-rest-api-3-search-jql-get)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="jql" type="string" required>
  JQL query to search for issues.
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net))

  Default: `null`.
</ParamField>

<ParamField path="fields" type="string">
  A list of fields to return for each issue, use it to retrieve a subset of fields. This parameter accepts a comma-separated list. Expand options include: \*all, \*navigable, summary, comment, -description, -comment (defaults to id).

  Default: `"id"`.
</ParamField>

<ParamField path="max_results" type="integer">
  Maximum number of results to return.

  Default: `100`.
</ParamField>

<ParamField path="next_page" type="string">
  Next page token to get the next page of results. If not provided, the first page of results will be returned.

  Default: `null`.
</ParamField>

## Update issue description

Action ID: `tools.jira.update_issue_description`

Update the description of an existing issue in Jira.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-put](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-put)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="description" type="string | object" required>
  Updated description of the incident. Plain strings are wrapped as ADF text paragraphs. JSON object strings are deserialized. Dictionaries are sent as provided.
</ParamField>

<ParamField path="issue_id_or_key" type="string" required>
  ID or key of the issue to update.
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net)).

  Default: `null`.
</ParamField>

## Update issue fields

Action ID: `tools.jira.update_issue_fields`

Update the fields of an existing issue in Jira.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-put](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-put)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="fields" type="array[object]" required>
  List of fields to update in the issue. ADF values can be passed as objects.
  For example usage: `[
      &#123;"customfield_10000": "New value"&#125;,
      &#123;"customfield_10001": &#123;"version": 1, "type": "doc", "content": []&#125;&#125;
    ]`
</ParamField>

<ParamField path="issue_id_or_key" type="string" required>
  ID or key of the issue to update.
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net)).

  Default: `null`.
</ParamField>

## Update issue status

Action ID: `tools.jira.update_issue_status`

Update the status of an issue.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-transitions-post](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issues/#api-rest-api-3-issue-issueidorkey-transitions-post)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="issue_id_or_key" type="string" required>
  ID or key of the issue to update.
</ParamField>

<ParamField path="transition_id" type="string" required>
  ID of the transition to perform.
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net)).

  Default: `null`.
</ParamField>

## Upload attachment

Action ID: `tools.jira.upload_attachment`

Upload an attachment to a Jira issue.

Reference: [https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-attachments/#api-rest-api-3-issue-issueidorkey-attachments-post](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-issue-attachments/#api-rest-api-3-issue-issueidorkey-attachments-post)

### Secrets

Required secrets:

* `jira`: required values `JIRA_USEREMAIL`, `JIRA_API_TOKEN`.

### Input fields

<ParamField path="base64_content" type="string" required>
  Base64 encoded content of the file to upload.
</ParamField>

<ParamField path="content_type" type="string" required>
  MIME type of the file (e.g., "application/pdf", "image/png", "text/plain").
</ParamField>

<ParamField path="filename" type="string" required>
  Name of the file to upload.
</ParamField>

<ParamField path="ticket" type="string" required>
  Jira issue key or ID to upload the attachment to (e.g., "PROJ-123").
</ParamField>

<ParamField path="base_url" type="string | null">
  Jira tenant URL (e.g. [https://your-domain.atlassian.net](https://your-domain.atlassian.net)).

  Default: `null`.
</ParamField>
