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.
uv pip install -U agno jira openaiexport 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.
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 retrieveReturns 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 textReturns 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 doneReturns a JSON string indicating success or an error message. |