Jira MCP Server
The Jira MCP Server allows you to interact with Jira's REST API using natural language commands through MCP clients like Claude Desktop. Capabilities include:
Get all accessible Jira projects: Fetch a list of all projects available to you
Get details for a specific Jira issue: Retrieve information for an issue using its key
Search issues using JQL: Find issues with Jira Query Language and optional limits
Create new Jira issues: Create single or multiple issues with project, summary, description, and type
Add comments to issues: Attach comments to existing Jira issues
Get available transitions for an issue: List possible workflow transitions for specific issues
Transition issues to new statuses: Move issues through workflows with optional comments
Get available issue types for a project: See all issue types available in a specific project
Create new Jira projects: Set up new projects with configurable attributes
Connects to Atlassian's Jira platforms (Cloud, Server, or Data Center) using various authentication methods including Basic Auth, API tokens, and Personal Access Tokens.
Provides tools for interacting with Jira's REST API, enabling project browsing, issue management (viewing, creating, searching), commenting on issues, and transitioning issues through workflows.
Click on "Install 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., "@Jira MCP Servershow me all open bugs assigned to me"
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.
Jira MCP Server
A Model Context Protocol (MCP) server for interacting with Jira's REST API using the jira-python library. This server integrates with Claude Desktop and other MCP clients, allowing you to interact with Jira using natural language commands.
Features
Get all accessible Jira projects
Get details for a specific Jira issue
Search issues using JQL (Jira Query Language)
Create new Jira issues
Add comments to issues
Get available transitions for an issue
Transition issues to new statuses
Related MCP server: JIRA MCP Tools
Installation
Prerequisites
Python 3.9 or higher
A Jira instance (Cloud, Server, or Data Center)
uv (optional but recommended for dependency management)
Activate a virtual environment (recommended)
# Install a Virtual Environment (VENV) in the mcp server directory
python -m venv .
# Activate the virtual environment
source bin/activateUsing uv (recommended)
# Install uv if you don't have it
pip install uv
# Install the Jira MCP server
uv pip install mcp-server-jiraUsing pip
pip install mcp-server-jiraConfiguration
Environment Variables
Configure the server using environment variables:
JIRA_SERVER_URL: URL of your Jira serverJIRA_AUTH_METHOD: Authentication method ('basic_auth' or 'token_auth')JIRA_USERNAME: Username for basic authJIRA_PASSWORD: Password for basic authJIRA_TOKEN: API token or Personal Access Token
Environment File (Local Development)
You can also create a .env file in the root directory with your configuration:
JIRA_SERVER_URL=https://your-jira-instance.atlassian.net
JIRA_AUTH_METHOD=basic_auth
JIRA_USERNAME=your_email@example.com
JIRA_TOKEN=your_api_tokenUsage
Command Line
python -m mcp_server_jiraDocker
docker build -t mcp-jira .
docker run --env-file .env -p 8080:8080 mcp-jiraClaude Desktop Integration
To use this server with Claude Desktop:
Install the server using one of the methods above
In Claude Desktop:
Go to Settings -> Developer
Click Edit Config
Open the json configuraiton in your editor of choice
Add the following JSON: (
NOTE: The environment variables used are for token Auth and will not work with other authentication methods)
{
"mcpServers": {
"jira": {
"command": "<PATH TO UV> i.e. /Users/<MYUSERNAME>/.local/bin/uv",
"args": [
"--directory",
"<PATH TO JIRA MCP>",
"run",
"mcp-server-jira"
],
"env": {
"JIRA_SERVER_URL": "https://<ORG>.atlassian.net/",
"JIRA_AUTH_METHOD": "token_auth",
"JIRA_USERNAME": "<USERNAME>",
"JIRA_TOKEN": "<TOKEN>"
}
}
}
}Now you can interact with Jira by asking Claude questions like:
"Show me all my projects in Jira"
"Get details for issue PROJECT-123"
"Create a new bug in the PROJECT with summary 'Fix login issue'"
"Find all open bugs assigned to me"
Authentication
The server supports multiple authentication methods:
Basic Authentication
For Jira Server/Data Center with username and password:
JIRA_SERVER_URL="https://jira.example.com"
JIRA_AUTH_METHOD="basic_auth"
JIRA_USERNAME="your_username"
JIRA_PASSWORD="your_password"API Token (Jira Cloud)
For Jira Cloud using an API token:
JIRA_SERVER_URL="https://your-domain.atlassian.net"
JIRA_AUTH_METHOD="basic_auth"
JIRA_USERNAME="your_email@example.com"
JIRA_TOKEN="your_api_token"Personal Access Token (Jira Server/Data Center)
For Jira Server/Data Center (8.14+) using a PAT:
JIRA_SERVER_URL="https://jira.example.com"
JIRA_AUTH_METHOD="token_auth"
JIRA_TOKEN="your_personal_access_token"Available Tools
get_projects: Get all accessible Jira projectsget_issue: Get details for a specific Jira issue by keysearch_issues: Search for Jira issues using JQLcreate_issue: Create a new Jira issueadd_comment: Add a comment to a Jira issueget_transitions: Get available workflow transitions for a Jira issuetransition_issue: Transition a Jira issue to a new status
License
MIT
Available Tools
10 toolsadd_jira_commentC
Add a comment to a Jira issue
| Name | Required | Description | Default |
|---|---|---|---|
| comment | Yes | The comment text | |
| issue_key | Yes | The issue key (e.g., PROJECT-123) |
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 'Add a comment' implies a write operation, it doesn't specify permission requirements, whether comments are editable/deletable, rate limits, or what happens on success/failure. This leaves significant behavioral gaps for a mutation 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 a single, efficient sentence that states the core functionality without any wasted words. It's appropriately sized for a simple tool and front-loads the 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?
For a mutation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what the tool returns, error conditions, or behavioral constraints. While the schema covers parameters well, the overall context for using this tool remains incomplete.
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 has 100% description coverage, with both parameters clearly documented in the schema itself. The description adds no additional parameter semantics beyond what's already in the schema (e.g., no format examples beyond 'PROJECT-123', no character limits, no mention of optional fields). 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 action ('Add a comment') and target resource ('to a Jira issue'), making the purpose immediately understandable. However, it doesn't differentiate this tool from sibling tools like 'create_jira_issue' or 'transition_jira_issue' beyond the obvious comment-focused functionality.
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 no guidance about when to use this tool versus alternatives. There's no mention of prerequisites (like needing an existing issue), when not to use it, or how it relates to sibling tools such as 'create_jira_issue' for initial issue creation or 'transition_jira_issue' for status changes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_jira_issueC
Create a new Jira issue. Common issue types include 'Bug', 'Task', 'Story', 'Epic' (capitalization handled automatically)
| Name | Required | Description | Default |
|---|---|---|---|
| description | Yes | Issue description | |
| fields | No | Additional fields for the issue (optional) | |
| issue_type | Yes | Issue type (e.g., 'Bug', 'Task', 'Story', 'Epic', 'New Feature', 'Improvement'). IMPORTANT: Types are case-sensitive and vary by Jira instance. | |
| project | Yes | Project key (e.g., 'MYPROJ') | |
| summary | Yes | Issue summary/title |
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 the tool creates an issue but doesn't mention authentication requirements, rate limits, side effects (e.g., notifications sent), or what happens on failure (e.g., duplicate issues). The mention of 'capitalization handled automatically' for issue types adds some context but is insufficient for a mutation tool with zero annotation coverage.
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 a single, efficient sentence that front-loads the core purpose ('Create a new Jira issue') and adds only essential supplemental information about issue types. There is no wasted verbiage or redundant phrasing, making it highly 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?
For a mutation tool with no annotations and no output schema, the description is inadequate. It doesn't cover behavioral aspects like permissions, error handling, or response format, nor does it address usage relative to siblings. The high schema coverage helps with inputs, but overall completeness is poor given the tool's complexity and lack of structured metadata.
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 5 parameters thoroughly. The description adds minimal value by listing common issue types and noting capitalization handling, but doesn't explain parameter interactions, default values, or provide examples beyond what's in the schema. 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 verb 'Create' and resource 'new Jira issue', making the purpose immediately understandable. It distinguishes from siblings like 'add_jira_comment' or 'get_jira_issue' by specifying creation rather than modification or retrieval. However, it doesn't explicitly differentiate from 'create_jira_issues' (plural), which might handle bulk creation.
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 no guidance on when to use this tool versus alternatives like 'create_jira_issues' (for bulk operations) or 'create_jira_project' (for different resources). It mentions common issue types but doesn't specify prerequisites, error conditions, or contextual triggers for selection among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_jira_issuesC
Bulk create new Jira issues. IMPORTANT: For 'issue_type', use the exact case-sensitive types in your Jira instance (common: 'Bug', 'Task', 'Story', 'Epic')
| Name | Required | Description | Default |
|---|---|---|---|
| field_list | Yes | A list of field dictionaries, each representing an issue to create | |
| prefetch | No | Whether to reload created issues (default: true) |
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 mentions the bulk nature and case-sensitivity requirement, but fails to address critical aspects like authentication needs, rate limits, error handling, whether the operation is idempotent, or what happens on partial failures. 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 efficiently structured in two sentences: one stating the core purpose and another providing critical implementation detail. Both sentences earn their place, with the second addressing a common pitfall. There's no wasted verbiage, though it could benefit from more complete behavioral context.
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 bulk creation tool with no annotations and no output schema, the description is insufficient. It doesn't explain what the tool returns, how errors are handled, whether there are size limits for bulk operations, or what permissions are required. The case-sensitivity warning is helpful but doesn't compensate for the broader contextual 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?
Schema description coverage is 100%, so the schema already documents both parameters thoroughly. The description adds specific guidance about case-sensitivity for 'issue_type' values, which provides useful context beyond the schema. However, it doesn't explain the structure of field dictionaries or provide examples, leaving the schema to carry most of the semantic weight.
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 ('bulk create') and resource ('new Jira issues'), distinguishing it from the singular 'create_jira_issue' sibling. However, it doesn't explicitly differentiate from other creation tools like 'create_jira_project', leaving some 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 no guidance on when to use this bulk creation tool versus the singular 'create_jira_issue' sibling, nor does it mention prerequisites, rate limits, or alternative approaches. The only contextual note is about case-sensitivity for issue types, which is parameter-specific rather than usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_jira_projectC
Create a new Jira project
| Name | Required | Description | Default |
|---|---|---|---|
| assignee | No | Key of the lead, if not specified it will use current user. | |
| avatarId | No | ID of the avatar to use for the project. | |
| categoryId | No | Same as projectCategory. Can be used interchangeably. | |
| issueSecurityScheme | No | Determines the security scheme to use. | |
| key | Yes | Mandatory. Must match Jira project key requirements, usually only 2-10 uppercase characters. | |
| name | No | If not specified it will use the key value. | |
| notificationScheme | No | Determines the notification scheme to use. Default is 10000. | |
| permissionScheme | No | Determines the permission scheme to use. | |
| projectCategory | No | Determines the category the project belongs to. | |
| ptype | No | Determines the type of project that should be created. Defaults to 'software'. | |
| template_name | No | Used to create a project based on one of the existing project templates. | |
| url | No | A link to information about the project, such as 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 but offers minimal information. It states 'Create a new Jira project' which implies a write/mutation operation, but doesn't mention required permissions, whether the operation is idempotent, potential side effects, or what happens on failure. For a creation tool with 12 parameters, this leaves significant behavioral 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 extremely concise at just 4 words, front-loading the essential purpose without any wasted words. While it may be too brief for complete understanding, it achieves maximum efficiency in communication.
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 complex creation tool with 12 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain what a successful creation returns, what permissions are required, how it differs from other project management operations, or any behavioral constraints. The agent would need to infer too much from the minimal description.
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 all 12 parameters well-documented in the schema itself. The description adds no parameter-specific information beyond what's already in the schema descriptions, so it meets the baseline of 3 where 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 ('Create') and resource ('new Jira project'), making the purpose immediately understandable. It distinguishes from siblings like 'create_jira_issue' by specifying 'project' rather than 'issue', though it doesn't explicitly contrast with other project-related tools like 'get_jira_projects'.
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 no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., permissions needed), when to choose this over other project creation methods, or how it relates to sibling tools like 'get_jira_projects' for listing existing projects.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_jira_issueC
Get details for a specific Jira issue by key
| Name | Required | Description | Default |
|---|---|---|---|
| issue_key | Yes | The issue key (e.g., PROJECT-123) |
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 'gets details' without specifying what details are returned, error handling, authentication needs, or rate limits. This leaves significant behavioral gaps for a read operation.
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 a single, efficient sentence that front-loads the core action and resource. Every word earns its place with zero waste.
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 no annotations and no output schema, the description is incomplete for a tool that presumably returns structured issue data. It doesn't explain return values, error cases, or how it differs from sibling tools, leaving the agent with insufficient 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 schema already documents the 'issue_key' parameter fully. The description adds no additional meaning beyond what the schema provides, meeting the baseline 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 verb ('Get details') and resource ('specific Jira issue'), making the purpose immediately understandable. It doesn't explicitly distinguish from siblings like 'search_jira_issues' or 'get_jira_project_issue_types', which would require 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?
The description provides no guidance on when to use this tool versus alternatives like 'search_jira_issues' for multiple issues or 'get_jira_project_issue_types' for metadata. It lacks any context about prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_jira_project_issue_typesB
Get all available issue types for a specific Jira project
| Name | Required | Description | Default |
|---|---|---|---|
| project_key | Yes | The project key (e.g., 'MYPROJ') |
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. It states a read operation ('Get'), but lacks details on permissions required, rate limits, pagination, or error handling. For a tool with no annotation coverage, this leaves significant behavioral 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 a single, efficient sentence with zero waste—it directly states the tool's purpose without unnecessary words. It is appropriately sized and front-loaded, making it easy for an agent to parse 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 the tool's low complexity (one parameter, no output schema, no annotations), the description is minimally adequate but lacks depth. It covers the basic purpose but misses behavioral context and usage guidelines, which are important for a tool in a suite with many siblings.
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 the parameter 'project_key' fully documented in the schema. The description adds no additional parameter details beyond implying it's for a 'specific Jira project', which the schema already covers. 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 verb 'Get' and the resource 'all available issue types for a specific Jira project', making the purpose unambiguous. However, it does not explicitly differentiate from siblings like 'get_jira_issue' or 'get_jira_projects', which focus on different resources, so it falls short of a perfect score.
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 when needing issue types for a project, but provides no explicit guidance on when to use this tool versus alternatives (e.g., vs. 'get_jira_issue' for individual issues) or any prerequisites. Without such context, the agent may struggle to choose correctly among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_jira_projectsB
Get all accessible Jira projects
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
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 the basic action. It doesn't disclose behavioral traits such as whether this requires authentication, if it's read-only (implied by 'Get' but not explicit), rate limits, pagination behavior, or what 'accessible' means in terms of permissions. This leaves significant gaps for an agent to understand operational constraints.
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 a single, efficient sentence with zero waste. It front-loads the core purpose ('Get all accessible Jira projects') without unnecessary details. Every word earns its place, making it highly concise and well-structured for quick understanding.
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 simplicity (0 params, no output schema), the description is minimal but inadequate. It lacks context on what 'accessible' entails, the return format (e.g., list of projects with fields), or any behavioral notes. Without annotations or output schema, the description should compensate more to ensure the agent can use it effectively, but it falls short.
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 0 parameters with 100% coverage, so no parameters need documentation. The description doesn't add param info, but with zero params, the baseline is high. It implicitly confirms no filtering parameters are needed, aligning with the schema. A perfect score is withheld as it could briefly note the lack of parameters for clarity.
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 'Get all accessible Jira projects' clearly states the verb ('Get') and resource ('Jira projects'), and specifies scope ('all accessible'). It distinguishes from siblings like 'get_jira_issue' (single issue) and 'get_jira_project_issue_types' (issue types for a project). However, it doesn't explicitly differentiate from 'search_jira_issues' which might also return projects indirectly, keeping it from a perfect score.
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?
No guidance is provided on when to use this tool versus alternatives. For example, it doesn't mention whether this should be used for listing projects versus using 'search_jira_issues' with project filters, or if it's for initial discovery before other operations. The description implies usage for retrieving projects but lacks explicit context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_jira_transitionsC
Get available workflow transitions for a Jira issue
| Name | Required | Description | Default |
|---|---|---|---|
| issue_key | Yes | The issue key (e.g., PROJECT-123) |
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 of behavioral disclosure. It states the tool retrieves 'available workflow transitions,' implying a read-only operation, but does not specify whether it requires authentication, has rate limits, returns paginated results, or details the output format. For a tool with zero annotation coverage, this is a significant gap in 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 a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is appropriately sized and front-loaded, making it easy for an agent to parse quickly. Every part of the sentence earns its place by conveying 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 (retrieving workflow transitions) and lack of annotations and output schema, the description is incomplete. It does not explain what the output includes (e.g., transition IDs, names, conditions) or behavioral aspects like error handling. For a tool with no structured output documentation, the description should provide more context to aid the 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 input schema has 100% description coverage, with the 'issue_key' parameter clearly documented. The description does not add any semantic details beyond what the schema provides, such as examples of transitions or constraints. With high schema coverage, the baseline score is 3, as the description does not compensate but also does not detract.
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 tool's purpose: 'Get available workflow transitions for a Jira issue.' It specifies the verb ('Get') and resource ('workflow transitions for a Jira issue'), making the action and target explicit. However, it does not distinguish this tool from its sibling 'transition_jira_issue,' which might handle applying transitions, so it lacks sibling differentiation.
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 no guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., needing an existing issue), exclusions, or compare it to siblings like 'transition_jira_issue' for applying transitions or 'get_jira_issue' for general issue data. This leaves the agent without context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_jira_issuesC
Search for Jira issues using JQL (Jira Query Language)
| Name | Required | Description | Default |
|---|---|---|---|
| jql | Yes | JQL query string (e.g., 'project = MYPROJ AND status = "In Progress"') | |
| max_results | No | Maximum number of results to return (default: 10) |
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 the tool searches but doesn't cover critical aspects like whether it's read-only (implied but not stated), pagination behavior, error handling, rate limits, or authentication needs. This leaves significant gaps for a search tool with potential complexity.
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 a single, efficient sentence that directly states the tool's purpose without any fluff. It's front-loaded with the core action and mechanism, making it easy to parse quickly. Every word earns its place.
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 complexity of Jira search (involving JQL queries and result limits), no annotations, and no output schema, the description is incomplete. It doesn't explain return values, error cases, or behavioral constraints, leaving the agent with insufficient context for reliable use beyond basic invocation.
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 ('jql' and 'max_results'). The description adds no additional parameter semantics beyond what's in the schema, such as JQL syntax examples or default behavior details. 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 ('Search for Jira issues') and the mechanism ('using JQL'), which is specific and unambiguous. It distinguishes itself from siblings like 'get_jira_issue' (which fetches a single issue) by emphasizing search functionality, though it doesn't explicitly contrast with all siblings like 'create_jira_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 no guidance on when to use this tool versus alternatives. It doesn't mention when to prefer this over 'get_jira_issue' for single issues or 'get_jira_projects' for project lists, nor does it specify prerequisites like needing JQL knowledge. Usage is implied but not explicitly defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transition_jira_issueC
Transition a Jira issue to a new status
| Name | Required | Description | Default |
|---|---|---|---|
| comment | No | Comment to add during transition (optional) | |
| fields | No | Additional fields to update during transition (optional) | |
| issue_key | Yes | The issue key (e.g., PROJECT-123) | |
| transition_id | Yes | ID of the transition to perform (get IDs using get_transitions) |
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 the action but lacks critical details: it doesn't specify permissions required, whether the transition is reversible, potential side effects (e.g., updating fields), or error handling. 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 a single, direct sentence with zero wasted words. It's front-loaded with the core action and resource, making it highly efficient and easy to parse.
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 4 parameters, no annotations, and no output schema, the description is incomplete. It lacks behavioral context (e.g., effects, permissions), usage guidance relative to siblings, and details on return values or errors, leaving gaps for an AI agent to operate effectively.
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 fully documents all parameters. The description adds no parameter-specific information beyond what's in the schema (e.g., it doesn't explain 'fields' object structure or 'transition_id' sourcing). Baseline 3 is appropriate when the schema handles parameter 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 action ('transition') and resource ('Jira issue') with the target outcome ('to a new status'), making the purpose immediately understandable. However, it doesn't differentiate this tool from sibling tools like 'get_jira_transitions' or 'search_jira_issues' beyond the basic verb, missing explicit distinction.
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 no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing to get transition IDs first), exclusions, or how it relates to siblings like 'add_jira_comment' or 'create_jira_issue', leaving usage context unclear.
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. Dates show when Glama detected each change.
10 tool updates
v1.0.0- First observed
add_jira_comment - First observed
create_jira_issue - First observed
create_jira_issues - First observed
create_jira_project - First observed
get_jira_issue - First observed
get_jira_project_issue_types - First observed
get_jira_projects - First observed
get_jira_transitions - First observed
search_jira_issues - First observed
transition_jira_issue
TDQS
Every tool has a clearly distinct purpose targeting specific Jira resources and actions. The tools cover different operations like creation, retrieval, searching, and transitions without overlap, making it easy for an agent to select the right tool for each task.
All tool names follow a consistent verb_noun pattern with 'jira' as a prefix (e.g., create_jira_issue, get_jira_projects). The naming is uniform across all tools, using snake_case and clear action verbs, which enhances predictability and readability.
With 10 tools, this server is well-scoped for Jira operations, covering core functionalities like issue management, project handling, and workflow transitions. Each tool serves a specific purpose without redundancy, making the count appropriate for the domain.
The tool set provides comprehensive coverage for key Jira workflows, including CRUD operations for issues and projects, searching, and transitions. A minor gap is the lack of tools for updating or deleting issues or projects, which agents might need to work around, but core operations are well-covered.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
MCP server unifying ERPs, CRMs, APIs and knowledge base for Claude, ChatGPT and Gemini.
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
Related MCP Servers
- FlicenseDqualityDmaintenanceA Model Context Protocol server that enables integration with JIRA, allowing users to interact with JIRA tasks and issues through Claude AI assistant.33-
- FlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that enables interaction with JIRA APIs through Claude Desktop, allowing users to search, create, update, and manage JIRA issues using natural language commands.1-
- AlicenseAqualityDmaintenanceA Model Context Protocol server that enables AI assistants like Claude to interact with Jira, allowing for project management tasks such as listing projects, searching issues, creating tickets, and managing sprints through natural language queries.7982TypeScriptMIT
- AlicenseCqualityDmaintenanceA Model Context Protocol server that enables AI assistants like Claude to interact with Jira Cloud instances, providing capabilities for issue management, project listing, and JQL search.1982MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/InfinitIQ-Tech/mcp-jira'
If you have feedback or need assistance with the MCP directory API, please join our Discord server