Atlassian MCP Server
Enables interaction with Atlassian services through the Atlassian CLI, allowing AI assistants to perform operations across the Atlassian suite, specifically targeting Jira workflow management.
Provides tools for interacting with Jira, enabling AI assistants to search issues with JQL, view details, add comments, update statuses, assign users, manage labels, and link related issues.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Atlassian MCP ServerFind all high priority bugs assigned to me in the WEB project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Atlassian MCP Server
MCP server that lets AI assistants interact with Jira through the Atlassian CLI.
Quick Start
See QUICKSTART.md for installation and setup.
Related MCP server: JIRA MCP Server
Features
✅ Search issues with JQL queries
✅ View full issue details
✅ Add comments
✅ Update status/transitions
✅ Assign to users
✅ Manage labels and custom fields
✅ Link related issues
How It Works
The MCP server calls the Atlassian CLI (acli) commands:
AI assistant calls an MCP tool (e.g.,
jira_search)MCP server executes corresponding
aclicommandResults are parsed and returned to the AI
Prerequisites
Node.js 18+
Atlassian CLI:
winget install Atlassian.AtlassianCliAuthenticated Jira account:
acli jira auth login
Available Tools
Tool | Description |
| Search with JQL queries |
| Get issue details |
| Add comments |
| Change status |
| Assign to user |
| Update custom fields |
| Add labels |
| Remove labels |
| Link issues |
Usage Example
Ask your AI assistant:
"Find my open work items"
"Add a comment to PROJ-123"
"Show high priority issues"
"Move PROJ-456 to In Progress"
The AI will automatically use the appropriate MCP tools.
Development
npm install # Install dependencies
npm run build # Build TypeScript
npm run watch # Auto-rebuild on changes
npm start # Run the serverLinks
Available Tools
9 toolsjira_add_labelA
Add a label/tag to a Jira work item. Use to categorize and organize work items for easier filtering and tracking.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_key | Yes | The Jira work item key (e.g., 'SSAS-123') | |
| label | Yes | The label to add (single word, no spaces). Examples: 'bug', 'urgent', 'documentation' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While it mentions the tool's purpose, it doesn't disclose important behavioral traits such as whether this requires specific permissions, if labels are case-sensitive, what happens when adding duplicate labels, or any rate limits. For a mutation tool with zero annotation coverage, this leaves significant gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is perfectly concise with two sentences that each earn their place: the first states the core functionality, and the second provides usage context. There's zero waste or redundancy, making it easy to parse and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a mutation tool with no annotations and no output schema, the description should do more to compensate. While it clearly states the purpose, it lacks information about behavioral constraints, error conditions, or what the tool returns. The 100% schema coverage helps with parameters, but overall completeness is only adequate for this complexity level.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with both parameters (issue_key and label) well-documented in the schema itself. The description doesn't add any meaningful parameter semantics beyond what's already in the schema, so it earns the baseline score of 3 for adequate but not additive documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Add a label/tag') and target resource ('to a Jira work item'), distinguishing it from siblings like jira_remove_label (which removes labels) and jira_set_field (which sets arbitrary fields). It provides a concise purpose statement with no ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool ('to categorize and organize work items for easier filtering and tracking'), which implicitly suggests it's for organizational purposes rather than status changes or commenting. However, it doesn't explicitly state when NOT to use it or name specific alternatives like jira_set_field for other modifications.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_assignB
Assign a Jira work item to a user. Use to delegate tasks and clarify ownership of work items.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_key | Yes | The Jira work item key (e.g., 'SSAS-123') | |
| assignee | Yes | The email address or username of the person to assign the work item to (e.g., 'user@example.com') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states it's for assignment without disclosing behavioral traits like required permissions, side effects (e.g., notifications sent), error handling, or rate limits. It mentions delegation and ownership but doesn't add meaningful operational context beyond the basic action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized with two sentences that are front-loaded and efficient, though the second sentence could be more specific. It avoids waste but doesn't achieve maximum impact due to some generality in the usage explanation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity as a mutation tool with no annotations and no output schema, the description is incomplete. It lacks details on return values, error cases, or behavioral nuances, making it inadequate for safe and effective use by an AI agent without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema fully documents both parameters. The description adds no additional meaning beyond what the schema provides, such as format examples or constraints, resulting in a baseline score of 3 as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('assign') and resource ('Jira work item'), specifying what the tool does. It distinguishes from siblings like jira_comment or jira_update_status by focusing on assignment, though it doesn't explicitly contrast with jira_set_field which might handle similar operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implied usage context ('to delegate tasks and clarify ownership'), suggesting when to use it, but lacks explicit guidance on when not to use it or alternatives among siblings. No mention of prerequisites or comparisons to tools like jira_set_field is included.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_commentA
Add a comment to a Jira work item. Use to provide status updates, ask questions, or share information with the team working on the issue.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_key | Yes | The Jira work item key (e.g., 'SSAS-123') | |
| comment | Yes | The comment text. Supports markdown formatting. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the action ('Add a comment') but does not disclose permissions needed, whether the comment is editable/deletable, rate limits, or response format. For a mutation tool with zero annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core purpose and followed by usage examples. Every sentence adds value without redundancy, making it efficiently structured and appropriately sized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (mutation with 2 parameters), no annotations, and no output schema, the description is adequate but incomplete. It covers purpose and usage but lacks behavioral details like permissions or response format, leaving gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters (issue_key and comment) with details like format and markdown support. The description adds no additional parameter semantics beyond what the schema provides, meeting the baseline of 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Add a comment') and target resource ('to a Jira work item'), with examples of use cases ('provide status updates, ask questions, or share information'). It distinguishes from siblings like jira_get_issue (read-only) or jira_update_status (status change).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool ('to provide status updates, ask questions, or share information with the team'), but does not explicitly state when not to use it or name alternatives among the sibling tools (e.g., jira_set_field for other updates).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_get_issueA
Retrieve detailed information about a specific Jira work item. Shows all fields including description, reporter, watchers, attachments, linked issues, and full history.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_key | Yes | The Jira work item key (e.g., 'SSAS-123' or 'PROJ-456') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the tool as a retrieval operation ('Retrieve detailed information'), which implies it's read-only and non-destructive, but does not explicitly state this or cover other behavioral aspects like authentication needs, rate limits, or error handling. The description adds value by detailing the scope of information returned, but lacks comprehensive behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, with the first sentence stating the core purpose clearly. The second sentence adds necessary detail about the scope of information retrieved without redundancy. Every sentence earns its place by providing essential context efficiently, making it concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (a read operation with one parameter) and the absence of annotations and output schema, the description is fairly complete. It specifies what the tool does and the scope of data returned, which helps the agent understand the tool's function. However, it lacks details on return format or error cases, which could be useful for a read tool with no output schema, leaving minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, with the single parameter 'issue_key' fully documented in the schema. The description does not add any meaning beyond what the schema provides, as it does not mention parameters or their semantics. According to the rules, with high schema coverage, the baseline score is 3, as the schema handles the parameter documentation adequately.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Retrieve detailed information') and resource ('a specific Jira work item'), distinguishing it from siblings like jira_search (searching) or jira_update_status (modifying). It specifies the scope of information retrieved ('all fields including description, reporter, watchers, attachments, linked issues, and full history'), making the purpose explicit and distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by specifying 'a specific Jira work item,' suggesting it's for retrieving details of a known issue rather than searching or modifying. However, it does not explicitly state when to use this tool versus alternatives like jira_search (for finding issues) or jira_comment (for interacting with an issue), nor does it mention any prerequisites or exclusions, leaving some ambiguity in context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_link_issueA
Create a link between two Jira work items to show relationships. Use to track dependencies, blocking relationships, or related work.
| Name | Required | Description | Default |
|---|---|---|---|
| from_issue | Yes | The source Jira work item key (e.g., 'SSAS-123') | |
| to_issue | Yes | The target Jira work item key (e.g., 'SSAS-456') | |
| link_type | No | The relationship type. Common options: 'Relates' (default), 'Blocks', 'Blocked by', 'Duplicate', 'Cloners', 'Part of'. Use the exact name from your Jira instance. | Relates |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. While it mentions the tool creates links, it doesn't disclose important behavioral traits: whether this is a write operation requiring permissions, if links are reversible, what happens on duplicate linking attempts, or what the response looks like. For a mutation tool with zero annotation coverage, this is a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with zero waste. The first sentence states the core purpose, and the second provides usage context with specific examples. Every word earns its place, and the description is appropriately front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with 3 parameters, 100% schema coverage, but no annotations and no output schema, the description is adequate but has clear gaps. It explains what the tool does and when to use it, but lacks behavioral transparency about permissions, side effects, and response format. The schema handles parameters well, but the description doesn't compensate for missing annotation coverage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters thoroughly. The description adds minimal value beyond the schema - it mentions relationship types but doesn't provide additional syntax, format, or semantic context. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Create a link between two Jira work items') and resource ('Jira work items'), with the purpose 'to show relationships' and examples of relationship types. It distinguishes from sibling tools like jira_comment or jira_update_status by focusing on inter-issue linking rather than issue modification.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use this tool ('to track dependencies, blocking relationships, or related work'), giving practical examples. However, it doesn't explicitly state when NOT to use it or mention alternatives among sibling tools (e.g., when to use jira_set_field instead for other relationships).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_remove_labelB
Remove a label/tag from a Jira work item. Use to clean up or reorganize issue categorization.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_key | Yes | The Jira work item key (e.g., 'SSAS-123') | |
| label | Yes | The label to remove |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It mentions the action is for 'clean up or reorganize,' implying mutation, but doesn't disclose critical behavioral traits like required permissions, whether the operation is reversible, potential side effects, or error handling. This is inadequate for a mutation tool without annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, consisting of two concise sentences that directly state the purpose and usage without any wasted words. Every sentence earns its place by contributing essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity as a mutation operation with no annotations and no output schema, the description is incomplete. It lacks details on behavioral aspects (e.g., permissions, reversibility), response format, or error cases, which are crucial for safe and effective use by an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the schema already documents both parameters ('issue_key' and 'label') adequately. The description adds no additional meaning or context beyond what the schema provides, such as examples or constraints, resulting in the baseline score for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Remove a label/tag') and target ('from a Jira work item'), with the verb+resource being specific. However, it doesn't explicitly differentiate from its sibling 'jira_add_label' beyond the opposite action, missing a direct comparison that would warrant a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides implied usage context ('to clean up or reorganize issue categorization'), which suggests when to use it, but lacks explicit guidance on when not to use it or alternatives (e.g., compared to 'jira_set_field' for other modifications). No prerequisites or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_searchA
Search for Jira work items using JQL (Jira Query Language). Use to find issues by project, status, assignee, priority, created/updated dates, and more. Returns a list of matching work items with their key, summary, status, priority, and assignee. Common search patterns: 1) My work: 'assignee = currentUser()' 2) My active work: 'assignee = currentUser() AND status NOT IN (Done, Closed)' 3) Project issues: 'project = SSAS' 4) High priority: 'priority = High' or 'priority IN (High, Highest)' 5) Recent updates: 'updated >= -7d' (last 7 days) 6) Combine with AND/OR: 'project = SSAS AND status = Open AND assignee = currentUser()' 7) Sort results: add 'ORDER BY updated DESC' or 'ORDER BY priority DESC, created ASC'
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | JQL (Jira Query Language) query string. Structure: field operator value [AND/OR field operator value] [ORDER BY field ASC/DESC]. Common fields: project, status, assignee, priority, created, updated, summary, description, type. Operators: = (equals), != (not equals), IN (list), NOT IN (exclude list), > < >= <= (comparison), ~ (contains text), IS EMPTY, IS NOT EMPTY. Functions: currentUser() (logged in user), now() (current time), startOfDay(), startOfWeek(). Time: Use formats like -7d (7 days ago), -2w (2 weeks), -1M (1 month). IMPORTANT QUOTING RULES: 1) Multi-word values MUST be in double quotes: status = "In Progress" 2) Email addresses MUST be quoted: assignee = "user@example.com" 3) Special characters (@, #, $, etc.) MUST be in quoted strings 4) Use currentUser() function instead of email when possible 5) List values in parentheses: status IN (Open, "In Progress", Blocked) Examples: 'assignee = currentUser() ORDER BY updated DESC' - your work by recent update, 'project = SSAS AND status = Open' - open issues in SSAS project, 'priority = High AND status != Done' - high priority incomplete work, 'assignee = currentUser() AND status NOT IN (Done, Closed)' - your active work, 'updated >= -7d AND project = SSAS' - SSAS project updated in last 7 days, 'status IN ("In Progress", "Work in progress") AND assignee = currentUser()' - in-progress items, 'assignee = "user@example.com" AND priority = High' - specific user's high priority work | |
| results_limit | No | Maximum number of results to return (default: 10, max: 100) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes the tool's behavior: it returns a list of matching work items with specific fields (key, summary, status, priority, assignee) and includes practical examples of JQL queries. However, it doesn't mention potential limitations like rate limits, authentication requirements, or pagination behavior, which would be helpful for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded with the core purpose, followed by usage examples. While comprehensive, it could be more concise by reducing some redundancy with the schema (e.g., the schema already details JQL syntax). Every sentence adds value, but the length might be slightly excessive given the detailed schema.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a search tool with no annotations and no output schema, the description does a good job covering purpose, usage, and parameter semantics. It provides output details (list of work items with fields) and practical examples. However, it lacks information on error handling, rate limits, or authentication context, which would improve completeness for an unannotated tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the baseline is 3. The description adds significant value by providing seven common search patterns with concrete JQL examples (e.g., 'assignee = currentUser()', 'updated >= -7d'), which illustrate how to construct queries beyond the schema's technical documentation. This enhances understanding of the 'query' parameter's practical application.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the tool's purpose: 'Search for Jira work items using JQL (Jira Query Language).' It specifies the verb ('search'), resource ('Jira work items'), and method ('using JQL'), clearly distinguishing it from sibling tools like jira_get_issue (which retrieves a single issue) or jira_update_status (which modifies issues).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit guidance on when to use this tool through seven common search patterns (e.g., 'My work', 'Project issues', 'Recent updates'), which serve as practical examples. It implicitly distinguishes from siblings by focusing on query-based retrieval rather than specific operations like adding labels or commenting, though it doesn't explicitly name alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_set_fieldB
Update a custom field value on a Jira work item. Use to set fields like components, fix versions, labels, environment, etc.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_key | Yes | The Jira work item key (e.g., 'SSAS-123') | |
| field | Yes | The field name to update (e.g., 'summary', 'description', 'environment') | |
| value | Yes | The value to set for the field |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states this is an update operation, implying mutation, but doesn't cover critical aspects like required permissions, whether changes are reversible, potential side effects, or error handling. For a mutation tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly concise with two sentences: the first states the purpose, and the second provides usage examples. Every sentence earns its place without redundancy, and it's front-loaded with the core action. No wasted words or structural issues.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a mutation tool with no annotations and no output schema, the description is incomplete. It doesn't address behavioral traits like permissions, side effects, or response format. While the purpose is clear, the lack of transparency and guidelines makes it inadequate for safe and effective use by an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for all three parameters (issue_key, field, value). The description adds minimal value beyond the schema by providing examples of field types ('components, fix versions, labels, environment, etc.'), but doesn't explain parameter interactions or constraints. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update a custom field value') and resource ('on a Jira work item'), with specific examples of field types. However, it doesn't explicitly differentiate this tool from sibling tools like 'jira_update_status' or 'jira_assign', which also modify work items. The verb 'update' is specific but overlaps with other mutation tools in the sibling set.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides implied usage guidance by listing example fields ('components, fix versions, labels, environment, etc.'), suggesting it's for setting custom field values. However, it lacks explicit when-to-use rules, such as when to choose this over 'jira_update_status' for status changes or 'jira_assign' for assignee updates. No alternatives or exclusions are mentioned, leaving usage context incomplete.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
jira_update_statusB
Transition a Jira work item to a new status (e.g., 'In Progress', 'Done', 'Blocked'). Use to move work items through your workflow.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_key | Yes | The Jira work item key (e.g., 'SSAS-123') | |
| status | Yes | The target status to transition to. Example values: 'In Progress', 'Done', 'Blocked', 'Review' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states this is a mutation tool ('Transition'), implying it changes state, but doesn't cover permissions needed, whether transitions are reversible, error conditions, or rate limits. For a mutation tool with zero annotation coverage, this leaves significant gaps in behavioral understanding.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences with zero waste. The first sentence states the purpose with examples, and the second provides usage context. It's appropriately sized and front-loaded with essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given this is a mutation tool with no annotations and no output schema, the description is incomplete. It doesn't explain what happens on success (e.g., confirmation message, updated issue data) or failure (e.g., invalid status error), nor does it cover prerequisites like required permissions. For a tool that changes system state, more behavioral context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already fully documents both parameters (issue_key and status with examples). The description adds no additional parameter semantics beyond what's in the schema, such as status validation rules or workflow constraints. Baseline 3 is appropriate when schema does all the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Transition') and resource ('Jira work item') with specific examples of status values ('In Progress', 'Done', 'Blocked'). It distinguishes this tool from siblings like jira_assign or jira_comment by focusing on status transitions, though it doesn't explicitly name alternatives for similar operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context ('move work items through your workflow') but doesn't explicitly state when to use this tool versus alternatives like jira_set_field (which might also change status) or provide exclusions. It offers general guidance but lacks specific differentiation from sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
v1.0.0- First observed
jira_add_label - First observed
jira_assign - First observed
jira_comment - First observed
jira_get_issue - First observed
jira_link_issue - First observed
jira_remove_label - First observed
jira_search - First observed
jira_set_field - First observed
jira_update_status
TDQS
Scored across 9 tools
Every tool has a clearly distinct purpose targeting specific Jira operations with no overlap. For example, jira_add_label and jira_remove_label are complementary but distinct, while jira_get_issue, jira_search, and jira_update_status each handle different aspects of issue management. The descriptions reinforce these boundaries, making misselection unlikely.
All tools follow a consistent 'jira_verb_noun' pattern using snake_case throughout. The verbs are specific and descriptive (e.g., add, assign, comment, get, link, remove, search, set, update), creating a predictable and readable naming convention across the entire set.
With 9 tools, the server is well-scoped for Jira operations, covering core workflows without bloat. Each tool earns its place by addressing a specific need in issue management, from retrieval and search to updates and relationships, making the count appropriate for the domain.
The toolset provides strong coverage for common Jira workflows, including CRUD-like operations (get, search, update status, set fields), collaboration (comment, assign), and organization (labels, links). A minor gap exists in missing explicit create or delete issue tools, but agents can work around this using jira_set_field or other methods for creation, and the surface otherwise supports most agent tasks effectively.
Maintenance
Related MCP Connectors
Connect to Atlassian Jira, Confluence, Loom, and more to search, create, and manage your work.
Task manager your agent can fully operate: boards, tasks, sprints, roles, worklogs, day planner.
Manage dillie projects, tasks, and sprints; look up members and search platform documentation.
Plan Salesforce deploys, open pull requests and trigger pipelines from your AI client.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI systems to interact with JIRA through natural language, allowing users to retrieve issue details, create new tickets, search using JQL, and access project information.3-
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to search, view, create, and update JIRA issues using natural language commands and JQL queries.65Apache 2.0
- AlicenseAqualityDmaintenanceEnables AI assistants to interact with Jira Cloud by managing issues, comments, custom fields, and sprint tasks through a standardized interface. Supports issue creation, updates, team activity tracking, and progress reporting.1165Apache 2.0
- AlicenseAqualityNot gradedmaintenanceEnables AI assistants to interact with Atlassian Jira Cloud, allowing users to manage projects, issues, comments, and workflows through natural language commands.6653-