0.23.0 → 0.23.1
patch release, 19 August 2026jira_get_board_issues: input schema changed
jira_get_issue: input schema changed
jira_get_sprint_issues: input schema changed
jira_search: input schema changed
MCP servers / mcp-atlassian
5 of its last 5 updates changed what the agent reads: 57 tool descriptions rewritten, up to 0.23.1.
PyPI package · PyPI page · recorded on 24 October 2026 on a clean machine with placeholder settings; only tools/list was sent. A changed description is not a vulnerability. Method and limits.
jira_get_board_issues: input schema changed
jira_get_issue: input schema changed
jira_get_sprint_issues: input schema changed
jira_search: input schema changed
Added: jira_create_customer_request, jira_get_cross_project_dependencies, jira_get_project_epic_hierarchy, jira_get_request_type_fields, jira_get_request_types
jira_get_project_components: input schema changed
jira_get_project_versions: input schema changed
jira_get_board_issues: input schema changed
jira_get_issue: input schema changed
jira_get_sprint_issues: input schema changed
jira_search: input schema changed
Added: jira_assign_issue, jira_get_create_fields, jira_get_project_fields, jira_get_project_issue_types, jira_move_issue, jira_move_issues_to_backlog, jira_search_assignable_users, jira_search_projects, jira_update_version
jira_get_board_issues: input schema changed
jira_get_issue_development_info: input schema changed
jira_get_issues_development_info: input schema changed
jira_get_sprint_issues: input schema changed
jira_search: input schema changed
jira_get_board_issues: input schema changed
jira_get_issue: input schema changed
jira_get_sprint_issues: input schema changed
jira_search: input schema changed
Releases tried: 0.21.0 (2026-03-02); 0.21.1 (2026-04-10); 0.22.0 (2026-07-10); 0.22.1 (2026-07-11); 0.23.0 (2026-07-18); 0.23.1 (2026-08-19).
The pin is the SHA-256 of the tool's name, description and input schema, as verfy.lock records it. The same pin in your lock means your agent reads this exact definition.
| Tool | Description | Pin |
|---|---|---|
| jira_get_user_profile | Retrieve profile information for a specific Jira user. | 3482b1e44c2a |
| jira_search_assignable_users | Search Jira users assignable in a given project or issue. Use this when you have a display name / partial name / email fragment and need a concrete identifier (``name`` / ``key`` for Server/DC, ``accountId`` for Cloud) to feed into assignee, reporter, watcher, etc. Returns the full result set so the caller can disambiguate when several users match — ``get_user_profile`` only resolves one identifier and is not designed for human-name search. Exactly one of ``project_key`` or ``issue_key`` must be provided — the underlying API (``/user/assignable/search``) requires a project or issue context and works without the global "Browse Users" permission that bot accounts in locked-down DC instances often lack. | 014e7e1f8a1d |
| jira_get_issue_watchers | Get the list of watchers for a Jira issue. | 873aeaad30c4 |
| jira_add_watcher | Add a user as a watcher to a Jira issue. | ad288cbc4fb9 |
| jira_remove_watcher | Remove a user from watching a Jira issue. | ab6f9e960e53 |
| jira_get_issue | Get details of a specific Jira issue. Includes Epic links and relationship information. Use the ``include`` parameter to inline enrichments (remote_links, transitions, watchers, changelog, comments, worklogs) so that separate tool calls are not needed. | 2756363c2324 |
| jira_search | Search Jira issues using JQL (Jira Query Language). | 341d69e85c32 |
| jira_search_fields | Search Jira fields by keyword with fuzzy match. | 54f5ec129459 |
| jira_get_field_options | Get allowed option values for a custom field. Returns the list of valid options for select, multi-select, radio, checkbox, and cascading select custom fields. Cloud: Uses the Field Context Option API. If context_id is not provided, automatically resolves to the global context. Server/DC: Uses createmeta to get allowedValues. Requires project_key and issue_type parameters. | b5e01c322188 |
| jira_get_project_issues | Get all issues for a specific Jira project. | 542e18c0c41f |
| jira_get_transitions | Get available status transitions for a Jira issue. | 49a5494ffba2 |
| jira_get_worklog | Get worklog entries for a Jira issue. | dcb5cb912b66 |
| jira_download_attachments | Download attachments from a Jira issue. Returns attachment contents as base64-encoded content so that they are available over the MCP protocol without requiring filesystem access on the server. Image attachments are returned as ``EmbeddedResource`` blobs; all other attachments (documents, archives, etc.) are returned as ``TextContent`` carrying a base64 payload, since many MCP clients only forward ``EmbeddedResource`` blobs for recognized image MIME types and otherwise drop the attachment (#1419). | 83d164b3d88c |
| jira_get_issue_images | Get all images attached to a Jira issue as inline image content. Filters attachments to images only (PNG, JPEG, GIF, WebP, SVG, BMP) and returns them as base64-encoded ImageContent that clients can render directly. Non-image attachments are excluded. Files with ambiguous MIME types (application/octet-stream) are detected by filename extension as a fallback. Images larger than 50 MB are skipped with an error entry in the summary. | f8475e98318e |
| jira_get_agile_boards | Get jira agile boards by name, project key, or type. | f26fa31c5a57 |
| jira_get_board_issues | Get all issues linked to a specific board filtered by JQL. | b49c125f839d |
| jira_get_sprints_from_board | Get jira sprints from board by state. | c415440f9279 |
| jira_get_sprint_issues | Get jira issues from sprint. | 7d6d839cbe83 |
| jira_get_link_types | Get all available issue link types. | cbedac5b84ff |
| jira_create_issue | Create a new Jira issue with optional Epic link or parent for subtasks. | 2cd804eb7c72 |
| jira_batch_create_issues | Create multiple Jira issues in a batch. | 629d4514aa7a |
| jira_batch_get_changelogs | Get changelogs for multiple Jira issues (Cloud only). | b78ce042ec4b |
| jira_update_issue | Update an existing Jira issue including changing status, adding Epic links, updating fields, etc. | 1e2c2c9f26c0 |
| jira_assign_issue | Assign a Jira issue to a user using the dedicated assignment endpoint. This is more reliable than setting assignee via update_issue, which is silently ignored by some Jira configurations. Uses PUT /issue/{key}/assignee. | 586a6601e506 |
| jira_delete_issue | Delete an existing Jira issue. | 443ed19c439b |
| jira_move_issue | Move a Jira issue to a different project (Jira Cloud only). Uses Jira Cloud's bulk move API to perform a cross-project move. The issue keeps its current issue type and may be assigned a new key in the target project (e.g., OLDPROJ-123 becomes NEWPROJ-456). The move is processed asynchronously on Jira's side; this tool polls until confirmed or times out after 30 seconds. | e1ef840e03f1 |
| jira_add_comment | Add a comment to a Jira issue. | a265791d3ff3 |
| jira_edit_comment | Edit an existing comment on a Jira issue. | bc51f7e5fd50 |
| jira_add_worklog | Add a worklog entry to a Jira issue. | 27923f4cf761 |
| jira_link_to_epic | Link an existing issue to an epic. | 656b867b9a43 |
| jira_create_issue_link | Create a link between two Jira issues. | a83e06711853 |
| jira_create_remote_issue_link | Create a remote issue link (web link or Confluence link) for a Jira issue. This tool allows you to add web links and Confluence links to Jira issues. The links will appear in the issue's "Links" section and can be clicked to navigate to external resources. | 4c840430cfb0 |
| jira_remove_issue_link | Remove a link between two Jira issues. | 9069e12960da |
| jira_transition_issue | Transition a Jira issue to a new status. | 7bbe30f7647d |
| jira_create_sprint | Create Jira sprint for a board. | 6402ee6d0ebf |
| jira_update_sprint | Update jira sprint. | 3e54fc6dc5b9 |
| jira_add_issues_to_sprint | Add issues to a Jira sprint. | d40df698895e |
| jira_move_issues_to_backlog | Move issues to the backlog, removing them from any sprint. | c565ea491dcd |
| jira_get_project_issue_types | Get available issue types for a Jira project. Returns the list of issue types (Bug, Task, Story, Epic, etc.) that can be created in the specified project. Use the returned issue type IDs with get_create_fields to discover what fields each type requires. | 30d03361e6da |
| jira_get_create_fields | Get fields available for creating an issue of a specific type. Returns all fields (required and optional) for the given project and issue type, including field names, IDs, whether they're required, and their schema. Use jira_get_field_options when a returned field needs its allowed values. | 86ad551f9cb0 |
| jira_get_project_versions | Get all fix versions for a specific Jira project. | c96bc50b2ea1 |
| jira_get_project_components | Get all components for a specific Jira project. | 2b885e292497 |
| jira_get_all_projects | Get all Jira projects accessible to the current user. | b9b86863a681 |
| jira_search_projects | Search for Jira projects by name or key prefix. Uses the projects picker endpoint to return a ranked list of matching projects without fetching every visible project on the instance. | 549338f1982c |
| jira_get_project_fields | Get the fields available on issues of a project (the create schema), deduplicated across the project's issue types — i.e. which fields tickets in this project have, regardless of whether they are filled. | 5dd5eda11150 |
| jira_get_service_desk_for_project | Get the Jira Service Desk associated with a project key. Server/Data Center only. Not available on Jira Cloud. | db3ec53c4958 |
| jira_get_service_desk_queues | Get queues for a Jira Service Desk. Server/Data Center only. Not available on Jira Cloud. | c3a23eb6c2da |
| jira_get_queue_issues | Get issues from a Jira Service Desk queue. Server/Data Center only. Not available on Jira Cloud. | 563fe9f2100b |
| jira_get_request_types | Get request types for a Jira Service Management service desk. | fb2c55ac882b |
| jira_get_request_type_fields | Get field definitions for a Jira Service Management request type. | 8e952699a1a6 |
| jira_create_customer_request | Create a Jira Service Management customer request. | 1c698e542b14 |
| jira_create_version | Create a new fix version in a Jira project. | d86704d42fb4 |
| jira_batch_create_versions | Batch create multiple versions in a Jira project. | ab3e4b186624 |
| jira_update_version | Update an existing fix version in a Jira project. Only fields explicitly provided are modified; other attributes of the version are left untouched. Useful for archiving/unarchiving versions, renaming, or shifting release dates without recreating them. | 914003317247 |
| jira_get_issue_proforma_forms | Get all ProForma forms associated with a Jira issue. Uses the new Jira Forms REST API. Form IDs are returned as UUIDs. | 96c872f1aad7 |
| jira_get_proforma_form_details | Get detailed information about a specific ProForma form. Uses the new Jira Forms REST API. Returns form details including ADF design structure. | f237d4ab3c67 |
| jira_update_proforma_form_answers | Update form field answers using the Jira Forms REST API. This is the primary method for updating form data. Each answer object must specify the question ID, answer type, and value. **⚠️ KNOWN LIMITATION - DATETIME fields:** The Jira Forms API does NOT properly preserve time components in DATETIME fields. Only the date portion is stored; times are reset to midnight (00:00:00). **Workaround for DATETIME fields:** Use jira_update_issue to directly update the underlying custom fields instead: 1. Get the custom field ID from the form details (question's "jiraField" property) 2. Use jira_update_issue with fields like: {"customfield_XXXXX": "2026-01-09T11:50:00-08:00"} Example: ```python # Instead of updating via form (loses time): # jira_update_proforma_form_answers(issue_key, form_id, [{"questionId": "91", "type": "DATETIME", "value": "..."}]) # Use direct field update (preserves time): jira_update_issue(issue_key, {"customfield_10542": "2026-01-09T11:50:00-08:00"}) ``` **Automatic DateTime Conversion:** For DATE and DATETIME fields, you can provide values as: - ISO 8601 strings (e.g., "2024-12-17T19:00:00Z", "2024-12-17") - Unix timestamps in milliseconds (e.g., 1734465600000) The tool automatically converts ISO 8601 strings to Unix timestamps. Example answers: [ {"questionId": "q1", "type": "TEXT", "value": "Updated description"}, {"questionId": "q2", "type": "SELECT", "value": "Product A"}, {"questionId": "q3", "type": "NUMBER", "value": 42}, {"questionId": "q4", "type": "DATE", "value": "2024-12-17"} ] Common answer types: - TEXT: String values - NUMBER: Numeric values - DATE: Date values (ISO 8601 string or Unix timestamp in ms) - DATETIME: DateTime values - ⚠️ USE WORKAROUND ABOVE - SELECT: Single selection from options - MULTI_SELECT: Multiple selections (value as list) - CHECKBOX: Boolean values | a5f1edf76ae3 |
| jira_get_issue_dates | Get date information and status transition history for a Jira issue. Returns dates (created, updated, due date, resolution date) and optionally status change history with time tracking for workflow analysis. | e0e79f9ec81e |
| jira_get_issue_sla | Calculate SLA metrics for a Jira issue. Computes various time-based metrics including cycle time, lead time, time spent in each status, due date compliance, and more. Working hours can be configured via environment variables: - JIRA_SLA_WORKING_HOURS_ONLY: Enable working hours filtering (true/false) - JIRA_SLA_WORKING_HOURS_START: Start time (e.g., "09:00") - JIRA_SLA_WORKING_HOURS_END: End time (e.g., "17:00") - JIRA_SLA_WORKING_DAYS: Working days (e.g., "1,2,3,4,5" for Mon-Fri) - JIRA_SLA_TIMEZONE: Timezone for calculations (e.g., "America/New_York") | 914b1273d3ef |
| jira_get_issue_development_info | Get development information (PRs, commits, branches) linked to a Jira issue. This retrieves the development panel information that shows linked pull requests, branches, and commits from connected source control systems like Bitbucket, GitHub, or GitLab. | a35bca78e511 |
| jira_get_issues_development_info | Get development information for multiple Jira issues. Batch retrieves development panel information (PRs, commits, branches) for multiple issues at once. | 90eef3006a21 |
| jira_get_project_epic_hierarchy | Group a project's epics under their cross-project parent issues. Fetches all epics in the project, detects their parent issue via the parent field or inward issue links, then groups them by parent. Epics with no detected parent appear under "Unlinked". Useful for understanding how a project's epics roll up to initiatives in another project. | a1b26874e479 |
| jira_get_cross_project_dependencies | Find all cross-project issue links for a project. Scans issues in the project, extracts every issue link whose target belongs to a different project, and groups them by target project and link type. Useful for dependency analysis across multi-project Jira setups. | 8de2d58003dc |
Pin what mcp-atlassian serves you today, commit the lock, and a pull request fails when a tool changes, with the text before and after. Pin the package version in your MCP config as well.
$ pip install verfy
$ verfy lock check --update # shows each tool, then writes verfy.lock
$ git add verfy.lock# .github/workflows/verfy.yml, after actions/checkout
- uses: anvarbekovjavohir277-dot/verfy-action@v1Maintain this server? Run the same check on your releases and add the Locked by Verfy badge to your README.