> ## Documentation Index
> Fetch the complete documentation index at: https://agno-v2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Jira

> JiraTools let an agent search, create, and comment on Jira issues, and log worklogs against them.

**JiraTools** enable an Agent to perform Jira tasks.

## Prerequisites

The following example requires the `jira` and `openai` libraries and auth credentials.

```shell theme={null}
uv pip install -U jira openai
```

```shell theme={null}
export JIRA_SERVER_URL="YOUR_JIRA_SERVER_URL"
export JIRA_USERNAME="YOUR_USERNAME"
export JIRA_TOKEN="YOUR_API_TOKEN"
```

## Example

The following agent will use Jira API to search for issues in a project.

```python cookbook/91_tools/jira_tools.py theme={null}
from agno.agent import Agent
from agno.tools.jira import JiraTools

agent = Agent(tools=[JiraTools()])
agent.print_response("Find all issues in project PROJ", markdown=True)
```

## Toolkit Params

| Parameter | Type | Default | Description |
| - | - | - | - |
| `server_url` | `str` | `None` | The URL of the JIRA server, retrieved from the environment variable `JIRA_SERVER_URL`. Raises an error if not set. |
| `username` | `str` | `None` | The JIRA username for authentication, retrieved from the environment variable `JIRA_USERNAME`. Default is None if not set. |
| `password` | `str` | `None` | The JIRA password for authentication, retrieved from the environment variable `JIRA_PASSWORD`. Default is None if not set. |
| `token` | `str` | `None` | The JIRA API token for authentication, retrieved from the environment variable `JIRA_TOKEN`. Default is None if not set. |
| `enable_get_issue` | `bool` | `True` | Enable the get\_issue functionality. |
| `enable_create_issue` | `bool` | `True` | Enable the create\_issue functionality. |
| `enable_search_issues` | `bool` | `True` | Enable the search\_issues functionality. |
| `enable_add_comment` | `bool` | `True` | Enable the add\_comment functionality. |
| `enable_add_worklog` | `bool` | `True` | Enable the add\_worklog functionality. |
| `all` | `bool` | `False` | Enable all functionality. |

## Toolkit Functions

| Function | Description |
| - | - |
| `get_issue` | Retrieves issue details from JIRA. Parameters include: - `issue_key`: the key of the issue to retrieve Returns a JSON string containing issue details or an error message. |
| `create_issue` | Creates a new issue in JIRA. Parameters include: - `project_key`: the project in which to create the issue - `summary`: the issue summary - `description`: the issue description - `issuetype`: the type of issue (default is "Task") Returns a JSON string with the new issue's key and URL or an error message. |
| `search_issues` | Searches for issues using a JQL query in JIRA. Parameters include: - `jql_str`: the JQL query string - `max_results`: the maximum number of results to return (default is 50) Returns a JSON string containing a list of dictionaries with issue details or an error message. |
| `add_comment` | Adds a comment to an issue in JIRA. Parameters include: - `issue_key`: the key of the issue - `comment`: the comment text Returns a JSON string indicating success or an error message. |
| `add_worklog` | Adds a worklog entry to log time spent on an issue. Parameters include: - `issue_key`: the key of the issue - `time_spent`: the amount of time in Jira's format, e.g., '2h', '30m', '1d 4h' - `comment`: an optional comment describing the work done Returns a JSON string indicating success or an error message. |

## Developer Resources

* [Tools](https://github.com/agno-agi/agno/blob/main/libs/agno/agno/tools/jira.py)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.