Skip to main content
Glama

Jira MCP Server

npm version License: Apache-2.0 Node.js >= 18

A Model Context Protocol (MCP) server for Jira — issue search, creation, updates, comments, status transitions, and project listing. Purpose-built for security incident management and SOC workflows.

Quick Start

Claude Desktop (stdio)

Add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "jira": {
      "command": "npx",
      "args": ["-y", "@tocharianou/jira-mcp"],
      "env": {
        "JIRA_HOST": "https://yourorg.atlassian.net",
        "JIRA_EMAIL": "you@company.com",
        "JIRA_TOKEN": "<your-api-token>"
      }
    }
  }
}

Get your Jira API token at id.atlassian.com/manage-profile/security/api-tokens.

HTTP / Streamable mode

MCP_TRANSPORT=http MCP_HTTP_PORT=3002 JIRA_HOST=https://yourorg.atlassian.net JIRA_EMAIL=you@company.com JIRA_TOKEN=<token> npx @tocharianou/jira-mcp

Then point your MCP client at http://localhost:3002/mcp.

Related MCP server: Jira MCP Integration

Features

  • Issue search — JQL-powered queries for incidents, vulnerabilities, and tasks

  • Issue management — create, update, comment, and transition issues

  • Incident tracking — open security tickets directly from investigation findings

  • Project discovery — list all accessible Jira projects

  • Token limiting — built-in MAX_TOKEN_CALL guard prevents context overflow

Configuration

Environment variable

Required

Description

JIRA_HOST

Jira Cloud: https://yourorg.atlassian.net / Server: https://jira.company.com

JIRA_EMAIL

✓*

Atlassian account email (Cloud only; leave empty for Server/DC)

JIRA_TOKEN

API token (Cloud) or Personal Access Token (Server/Data Center)

JIRA_API_VERSION

3 for Cloud (default), 2 for Server/Data Center

JIRA_VERIFY_SSL

true/false (default: true)

MAX_TOKEN_CALL

Token limit per tool response (default: 20000)

MCP_TRANSPORT

stdio (default) or http

MCP_HTTP_PORT

HTTP server port (default: 3002)

MCP_HTTP_HOST

HTTP server host (default: localhost)

* JIRA_EMAIL is required for Jira Cloud. Leave empty for Jira Server / Data Center (use PAT only).

Available Tools

Tool

Description

jira_health_check

Test connection, verify account info and server version

search_issues

Search issues using JQL — find incidents, open vulnerabilities, remediation tasks

get_issue

Get full details of a single issue including comments and history

create_issue

Create a new issue (incident, task, bug, etc.)

update_issue

Update summary, description, priority, or labels

add_comment

Add a comment to record investigation findings

list_transitions

List available status transitions for an issue

transition_issue

Move an issue to a new status (e.g. In Progress, Resolved, Closed)

list_projects

List all accessible Jira projects with keys and types

Example Queries

  • "Search for all open critical security incidents in the SEC project"

  • "Create a Jira ticket for the suspicious login activity from 192.168.1.100"

  • "Get the full details of ticket SEC-1234 including all comments"

  • "Move SEC-1234 to Resolved and add a closing comment with my findings"

  • "List all Jira projects I have access to"

Debugging

Use the MCP Inspector to test and debug:

npm run inspector

Server logs are written to stderr so they do not interfere with the MCP JSON-RPC stream on stdout.

Troubleshooting

Symptom

Likely cause

401 Unauthorized

Invalid JIRA_TOKEN or wrong JIRA_EMAIL

403 Forbidden

Insufficient permissions on the project

404 Not Found

Issue key or project does not exist

ECONNREFUSED

Wrong JIRA_HOST or Jira server not reachable

SSL errors

Set JIRA_VERIFY_SSL=false for self-signed certs (Server/DC only)

Token limit exceeded

Reduce max_results or set break_token_rule: true

Development

git clone https://github.com/TocharianOU/jira-mcp.git
cd jira-mcp
npm install --ignore-scripts
npm run build
cp .env.example .env   # fill in your credentials
npm start

Release

See RELEASE.md for the full release process.

License

Apache 2.0 — Copyright © 2024 TocharianOU Contributors

Available Tools

9 tools
add_commentA

Add a comment to a Jira issue. Use to record investigation steps, evidence, findings, or remediation actions directly on the ticket. Preserves the full audit trail of the security response.

ParametersJSON Schema
NameRequiredDescriptionDefault
commentYesComment text. Markdown-like formatting is supported (bold, lists, code blocks will render in Jira).
issue_keyYesJira issue key to comment on (e.g. SEC-123).

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It explicitly states the mutating action (add a comment) and adds context about preserving the audit trail, which provides useful behavioral insight beyond the bare action. It doesn't cover permissions or reversibility, but for a simple tool this is sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three short sentences, each serving a distinct purpose: stating the action, providing usage context, and noting a behavioral trait. It is efficiently front-loaded with the purpose in the first sentence and contains no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (2 parameters, no nested structures, no output schema). The description covers purpose, usage scenarios, and a behavioral note, which is adequate. It doesn't explain return values, but for add_comment this is not necessary given the tool's simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The schema already fully describes both parameters (comment and issue_key) with examples. The description does not add parameter-specific details beyond what the schema provides, so a 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action with a specific verb and resource: 'Add a comment to a Jira issue.' It also provides specific use cases (investigation steps, evidence, findings, remediation actions) and naturally distinguishes itself from siblings like create_issue, update_issue, and transition_issue.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context on when to use the tool ('Use to record investigation steps, evidence, findings, or remediation actions directly on the ticket.'). However, it does not explicitly name alternatives or state when not to use it, which would merit a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_issueA

Create a new Jira issue. Use to file security incidents, vulnerabilities, or remediation tasks. Returns the new issue key and URL. Common issue types: Task, Bug, Story, Incident, Security Incident (depends on project configuration).

ParametersJSON Schema
NameRequiredDescriptionDefault
labelsNoLabels to attach. Examples: ["security-incident", "ransomware", "P1"].
summaryYesIssue summary/title (one-line description of the incident or task).
assigneeNoAssignee Jira accountId (use search_issues to find accountIds or check with jira_health_check for your own).
priorityNoPriority name. Examples: Critical, High, Medium, Low.
componentsNoComponent names to associate. Must match existing components in the project.
issue_typeNoIssue type name (default: Task). Examples: Task, Bug, Story, Incident. Must match a type available in the project.
descriptionNoFull description of the issue. Plain text; will be formatted for Jira API version automatically.
project_keyYesJira project key where the issue will be created (e.g. SEC, INFRA, OPS).

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It adds useful context (returns key/URL, common issue types, project-dependency) but does not disclose potential side effects, permission requirements, or error behaviors. This is adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the primary action, then usage context, return value, and common types. No redundant information or fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter create tool with no output schema, the description covers purpose, when to use, and return value. The schema handles parameter details. It lacks discussion of error scenarios or prerequisites, but is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds minimal parameter-specific meaning beyond the schema's own descriptions, but it does mention common issue types and return behavior that indirectly reflect parameters. No major gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Create'), resource ('Jira issue'), and scope ('security incidents, vulnerabilities, or remediation tasks'), and it specifies the return value (issue key and URL). This distinguishes it from siblings like update_issue or search_issues.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides explicit context for when to use the tool ('Use to file security incidents, vulnerabilities, or remediation tasks') and notes that issue types depend on project configuration. It does not explicitly name alternative tools for other actions, but the usage context is clear enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_issueA

Get full details of a single Jira issue by key (e.g. SEC-123). Returns description, all comments, status, priority, assignee, reporter, labels, and timestamps. Use after search_issues to inspect a specific issue in depth.

ParametersJSON Schema
NameRequiredDescriptionDefault
fieldsNoSpecific fields to fetch. Default includes description and all comments.
issue_keyYesJira issue key (e.g. SEC-123, INFRA-456, PROJ-789).
max_tokensNoMax output tokens. Default: 20000.
break_token_ruleNoBypass token limit check.

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the burden and does disclose what data is returned. However, it does not explicitly state the read-only nature, error behavior, or token-limit handling, leaving some 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the main purpose and key details. Every sentence contributes to understanding the tool's use and output.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the tool's return values and usage context, which is important given no output schema. It lacks error handling or pagination details, but for a single-issue fetch the core information is present.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 parameters. The description adds context on return fields but does not add meaningful syntax or detail beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Get') and resource ('single Jira issue by key'), and uniquely identifies the input format with an example (SEC-123). It lists the fields returned, clearly distinguishing it from the sibling search_issues tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly instructs when to use this tool ('Use after search_issues') and provides the purpose ('inspect a specific issue in depth'). This gives clear context relative to the sibling tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

jira_health_checkA

Test the Jira connection. Returns authenticated account info (display name, email, account ID) and Jira server version/deployment type. Run first to verify credentials and connectivity.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_tokensNoMax output tokens. Default: 20000.
break_token_ruleNoBypass token limit check.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses the behavior (a read-only connection test), what it returns (authenticated account info, server version), and the purpose. It doesn't mention edge cases like network errors or permission requirements, but for a simple health check this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core purpose, and every sentence adds value. No fluff or redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description sufficiently explains what the tool does and what it returns, covering the essentials despite having no output schema. It omits details like whether it makes a network call or how long it takes, but that's less critical for a health-check tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so parameters are already fully documented. The description adds no additional meaning beyond the schema, and the parameters (max_tokens, break_token_rule) are generic MCP parameters not specific to this tool.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function with a specific verb ('Test the Jira connection') and resource (Jira), and distinguishes it from sibling tools by focusing on health check/authentication rather than issue operations. It also specifies the exact output (account info, server version/deployment type).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance to 'Run first to verify credentials and connectivity,' which tells the agent when to use this tool before other Jira operations. It doesn't explicitly name alternatives or state when not to use it, but the context is clear enough.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_projectsA

List all accessible Jira projects with their keys, names, and types. Use to find the correct project key before creating issues or running JQL queries scoped to a specific project.

ParametersJSON Schema
NameRequiredDescriptionDefault
max_tokensNoMax output tokens. Default: 20000.
max_resultsNoMaximum projects to return (default: 50, max: 100).
break_token_ruleNoBypass token limit check.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden of behavioral disclosure. It states the tool lists accessible projects and returns keys, names, and types, but does not disclose aspects like pagination, read-only status, or any side effects. The behavior disclosed is minimal but not misleading.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is only two sentences long and immediately states the main action. The second sentence provides practical guidance without any wasted words or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list operation, this description adequately covers the core purpose and usage context. The output fields are named, and the tool's relationship to sibling operations is clear. It does not describe every edge case, but the schema handles parameter-level details.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, with all three parameters described in the input schema. The description does not add additional meaning beyond the schema, nor does it conflict with it. Thus, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool lists accessible Jira projects with their keys, names, and types, using a specific verb and resource. It also distinguishes itself from siblings by explicitly connecting to the workflow of finding project keys before creating issues or running JQL queries.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit context for when to use this tool: to find the correct project key before creating issues or running JQL queries. It does not mention alternatives by name, nor does it provide exclusionary conditions, but the use case is clearly defined.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_transitionsA

List all available status transitions for a Jira issue. Returns transition IDs and target status names. Use before transition_issue to find the correct transition ID (e.g. "In Progress", "Resolved", "Closed").

ParametersJSON Schema
NameRequiredDescriptionDefault
issue_keyYesJira issue key (e.g. SEC-123).
max_tokensNoMax output tokens. Default: 20000.
break_token_ruleNoBypass token limit check.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden. It discloses the return content (transition IDs and target status names), and the verb 'List' implies a read-only operation. However, it does not explicitly state that no changes are made or mention any prerequisites or error behavior, though the core behavior is transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long, front-loaded with the main function, and includes a concrete usage example with status names. No filler or redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple listing tool with a fully documented schema, the description provides purpose, return format, and usage context. It is complete enough for an agent to select and invoke the tool correctly, even without an output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already provides 100% coverage with descriptions for all three parameters. The tool description does not add parameter-level detail, but since the schema fully documents them, the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: 'List all available status transitions for a Jira issue' and specifies that it returns transition IDs and target status names. It also distinguishes itself from the sibling transition_issue tool by framing this as a preparatory step.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says 'Use before transition_issue to find the correct transition ID', providing direct when-to-use guidance and naming the alternative tool. This is clear and actionable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_issuesA

Search Jira issues using JQL (Jira Query Language). Returns key, summary, status, type, priority, assignee, reporter, created/updated dates and labels. Use for finding security incidents, open vulnerabilities, or tracking remediation tasks. Examples: project = SEC AND status != Done, assignee = currentUser() AND priority = High, labels = security-incident ORDER BY created DESC.

ParametersJSON Schema
NameRequiredDescriptionDefault
jqlYesJQL query string. Examples: "project=SEC AND status=Open", "priority=Critical AND labels=security-incident ORDER BY created DESC"
fieldsNoSpecific fields to return. Default: summary,status,issuetype,priority,assignee,reporter,created,updated,labels. Add "description" for full text.
start_atNoPagination offset (default: 0). Use with max_results to paginate large result sets.
max_tokensNoMax output tokens. Default: 20000.
max_resultsNoMaximum issues to return (default: 50, max: 100). Reduce if token limit hit.
break_token_ruleNoBypass token limit check.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses the return fields, demonstrates query syntax, and implies a list result. However, it does not mention default ordering, pagination behavior, or error handling, which are minor gaps 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.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is efficient and well-structured: first sentence states the function, second lists return fields, third provides domain-specific use cases, and the remaining sentences give concrete examples. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the moderate complexity (6 params, no output schema), the description covers purpose, return fields, and use cases, while the schema handles parameter details. It is complete enough for an agent to select and invoke the tool correctly without additional context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

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 parameters. The description adds value via JQL examples but does not elaborate on parameter semantics beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Search Jira issues using JQL' with a specific verb and resource, and the JQL method distinguishes it from get_issue and other issue tools. It also lists the exact fields returned, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It provides clear use cases ('Use for finding security incidents, open vulnerabilities, or tracking remediation tasks') and includes example queries that show the intended usage. It does not explicitly contrast with sibling tools like get_issue, but the context is sufficient for an agent to decide when to use this search tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

transition_issueA

Move a Jira issue to a new status using a transition ID. Use list_transitions first to discover available transition IDs. Optionally attach a comment explaining the status change (e.g. "Closed: investigation complete, no compromise confirmed").

ParametersJSON Schema
NameRequiredDescriptionDefault
commentNoOptional comment to attach when transitioning (e.g. rationale for closing or escalating).
issue_keyYesJira issue key to transition (e.g. SEC-123).
transition_idYesTransition ID from list_transitions (e.g. "31" for "In Progress", "41" for "Done").

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description must carry the transparency burden. It discloses the core mutation (status change) and the optional comment attachment, including an example. However, it does not mention permissions, reversibility, or error behavior, which would be useful for a mutation tool. The disclosed behaviors are accurate but minimal.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long and front-loaded: first the primary action, then the prerequisite, then optional behavior with an example. Every clause contributes meaningful guidance with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (three flat parameters, no output schema, no nested objects), the description covers the essential workflow: decide the transition, get the ID from list_transitions, and optionally add a comment. It lacks return value details, but that is acceptable given the absence of an output schema and the straightforward nature of the operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

User-provided schema descriptions already cover 100% of parameters, so the baseline is 3. The tool description adds value by explicitly linking transition_id to list_transitions output and providing a sample comment rationale, which goes beyond the schema's basic parameter descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly specifies the verb 'Move' and the resource 'Jira issue to a new status', and identifies the mechanism 'using a transition ID'. It distinguishes itself from sibling tools like update_issue by focusing on status transitions and pointing to list_transitions for ID discovery.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states 'Use list_transitions first to discover available transition IDs', providing a clear prerequisite and coordinating with a sibling tool. It does not explicitly exclude alternatives or list when not to use, but the context is clear enough for an agent to choose correctly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_issueA

Update fields of an existing Jira issue (summary, description, priority, labels). Use to enrich a security incident with investigation findings. To change status, use transition_issue instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelsNoNew labels array. Replaces existing labels entirely.
summaryNoNew summary/title.
priorityNoNew priority. Examples: Critical, High, Medium, Low.
issue_keyYesJira issue key to update (e.g. SEC-123).
descriptionNoNew description text. Overwrites existing description.

TDQS

A4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description does not disclose mutation implications, partial update behavior, or reversibility. It only repeats the action and field list, offering no additional context beyond what the name implies.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences with no filler. Each sentence provides distinct value: what it does, when to use it, and the status-change alternative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers purpose, use case, and a key alternative. However, it does not mention whether unspecified fields remain unchanged or what the response contains, which would be useful for a mutation tool without an output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 100% description coverage for all five parameters, so the baseline is 3. The description merely lists field names without adding any extra meaning, such as update semantics for omitted fields.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses 'Update fields of an existing Jira issue' with a specific verb and resource, and lists the affected fields. It also distinguishes itself from transition_issue by explicitly redirecting status changes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states 'Use to enrich a security incident with investigation findings' and explicitly says 'To change status, use transition_issue instead.' This provides both a suggested use case and a clear alternative.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A4.3/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: health check, search, get, create, update, comment, list transitions, transition, and list projects. No two tools overlap; even list_transitions and transition_issue are sequential rather than ambiguous.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case: search_issues, get_issue, create_issue, update_issue, add_comment, list_transitions, transition_issue, list_projects. The only outlier is jira_health_check, but it also follows the pattern (verb + noun) and the prefix is acceptable.

Tool Count5/5

Nine tools is well-scoped for a Jira server. Each covers a core operation (connectivity check, search, read, create, update, comment, status transition, project discovery) without being bloated or redundant.

Completeness4/5

The toolset covers the full lifecycle for Jira issues: search, get, create, update, comment, and transition. Minor gaps exist, such as no way to list available issue types or project metadata beyond names/keys, and no delete/archive capability, but these are not critical for the apparent security-workflow focus.

Maintenance

ActivityInactive
ResponsivenessSyncing

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

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to interact with Jira Cloud and Server/Data Center deployments for issue management, project tracking, and workflow automation. Supports multiple authentication methods including API tokens, OAuth 2.0, and personal access tokens.
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI agents to interact with Jira Cloud through the REST API, supporting project management, issue operations (create, read, update, delete), JQL search, task assignments, and status transitions.
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables interaction with Jira issues, projects, and comments via API Key. Supports operations like creating, updating, searching, transitioning issues, and managing projects.
    640
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables interaction with Jira issues via JQL search, epic management, comments, attachments, and issue CRUD, with support for both Cloud and Server/Data Center instances.
    9
    18
    MIT

Latest Blog Posts

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/TocharianOU/jira-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server