Skip to main content
Glama

IA-QA — 152 QA & Dev Tools for AI Agents

jira_to_test_suite

Read-only

Turn a Jira ticket into a test suite: Gherkin scenarios, E2E steps, API tests, test data and the ambiguities to clarify. Pass the issue object, or Jira credentials to fetch it. It never invents: a thin ticket returns an empty suite with verdict INCOMPLETE_SPEC and the questions to ask. test_suite._gherkin_warnings is a deterministic syntax check. BYOK: your LLM key.

Input Schema

NameRequiredDescriptionDefault
issueNoThe ticket: key, summary, description, and optionally status, issue_type, priority, labels, comments (fetch_jira_issue returns this shape).
modelYese.g. "gpt-4o-mini", "claude-haiku-4-5-20251001", "gemini-3.5-flash".
api_keyYesYour LLM provider key.
issue_keyNoe.g. "PROJ-123", to fetch with the jira_* fields.
jira_emailNo
jira_tokenNo
max_tokensNoDefault 8192.
jira_base_urlNo
confluence_pagesNoPages from fetch_confluence_page, as documentation.

Output Schema

NameRequiredDescriptionDefault
summaryNo
issue_keyNo
issue_urlNo
latency_msNo
model_usedNo
test_suiteNo
tokens_usedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed10 schema fields changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "api_key": "<your-api-key>",
      +    "issue": {
      +      "description": "A registered user can request a reset link; the link expires after 30 minutes.",
      +      "key": "PROJ-1",
      +      "summary": "Password reset by email"
      +    },
      +    "model": "gpt-4o-mini"
      +  }
      +]
    • changedInput schema / properties / api_key / description
      Previous value: -"Your LLM provider API key (OpenAI sk-, Anthropic sk-ant-, Google AIzaSy-, etc.)."New value: +"Your LLM provider key."
    • changedInput schema / properties / confluence_pages / description
      Previous value: -"Optional array of pre-fetched Confluence page objects from fetch_confluence_page, used as documentation context."New value: +"Pages from fetch_confluence_page, as documentation."
    • changedInput schema / properties / issue / description
      Previous value: -"Pre-fetched issue object from fetch_jira_issue, OR a mock object with fields: key, summary, description (plain text or Markdown), status, issue_type, priority, labels, comments. Use this for offline/CI testing without Jira credentials."New value: +"The ticket: key, summary, description, and optionally status, issue_type, priority, labels, comments (fetch_jira_issue returns this shape)."
    • changedInput schema / properties / issue_key / description
      Previous value: -"Jira issue key to fetch automatically, e.g. \"PROJ-123\". Required if issue is not provided."New value: +"e.g. \"PROJ-123\", to fetch with the jira_* fields."
    • removedInput schema / properties / jira_base_url / description
      Removed value: -"Atlassian base URL. Required for auto-fetch mode."
    • removedInput schema / properties / jira_email / description
      Removed value: -"Atlassian account email. Required for auto-fetch mode."
    • removedInput schema / properties / jira_token / description
      Removed value: -"Atlassian API token. Required for auto-fetch mode."
    • changedInput schema / properties / max_tokens / description
      Previous value: -"Maximum tokens for the LLM response. Default: 8192. Increase for large tickets with many ACs; decrease to reduce cost on simple tickets."New value: +"Default 8192."
    • changedInput schema / properties / model / description
      Previous value: -"LLM model to use, e.g. \"gpt-4o-mini\", \"claude-3-5-haiku-20241022\", \"gemini-3.5-flash\"."New value: +"e.g. \"gpt-4o-mini\", \"claude-haiku-4-5-20251001\", \"gemini-3.5-flash\"."
  2. Changed1 schema field changed
    • changedInput schema / properties / model / description
      Previous value: -"LLM model to use, e.g. \"gpt-4o-mini\", \"claude-3-5-haiku-20241022\", \"gemini-2.0-flash\"."New value: +"LLM model to use, e.g. \"gpt-4o-mini\", \"claude-3-5-haiku-20241022\", \"gemini-3.5-flash\"."
  3. Changed1 schema field changed
    • addedOutput schema / properties
      Added value: +{
      +  "issue_key": {
      +    "type": "string"
      +  },
      +  "issue_url": {
      +    "type": "string"
      +  },
      +  "latency_ms": {
      +    "type": "number"
      +  },
      +  "model_used": {
      +    "type": "string"
      +  },
      +  "summary": {
      +    "type": "string"
      +  },
      +  "test_suite": {
      +    "type": "object"
      +  },
      +  "tokens_used": {
      +    "type": "number"
      +  }
      +}
  4. Changed2 schema fields changed
    • addedInput schema / properties / confluence_pages / items / additionalProperties
      Added value: +true
    • addedInput schema / properties / issue / additionalProperties
      Added value: +true
  5. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "type": "object"
      +}
  6. Changed1 schema field changed
    • addedInput schema / properties / max_tokens
      Added value: +{
      +  "default": 8192,
      +  "description": "Maximum tokens for the LLM response. Default: 8192. Increase for large tickets with many ACs; decrease to reduce cost on simple tickets.",
      +  "type": "integer"
      +}
  7. Changed1 schema field changed
    • changedInput schema / properties / issue / description
      Previous value: -"Pre-fetched issue object from fetch_jira_issue (alternative to credentials + issue_key)."New value: +"Pre-fetched issue object from fetch_jira_issue, OR a mock object with fields: key, summary, description (plain text or Markdown), status, issue_type, priority, labels, comments. Use this for offline/CI testing without Jira credentials."
  8. Added

TDQS

A4.1/5.0
Behavior4/5

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

Adds substantial context beyond the annotations: it guarantees no invention ('It never invents'), names the INCOMPLETE_SPEC verdict and empty-suite behavior for thin tickets, and states that test_suite._gherkin_warnings is a deterministic syntax check. It also discloses the BYOK requirement ('your LLM key'). It does not address the credential-precedence question or what happens on LLM call failure, which keeps it below 5.

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

Conciseness4/5

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

Front-loaded with the core capability, then supporting guarantees, in roughly five compact sentences with no filler. The telegraphic style ('BYOK: your LLM key.') is efficient, though the abrupt internal reference to test_suite._gherkin_warnings could be clearer.

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 9-parameter tool with nested objects, an output schema present, and a non-trivial LLM-backed pipeline, the description covers the essential contract: inputs (issue or credentials), the non-invention guarantee, the INCOMPLETE_SPEC outcome, and the BYOK key requirement. The remaining gaps are precedence between issue and issue_key and failure/credential-error behavior.

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 67% with the key parameters (issue, model, api_key, issue_key, max_tokens, confluence_pages) documented in-schema; the description reinforces the issue-vs-credentials split and the BYOK nature of api_key. However, jira_email, jira_token, and jira_base_url have no schema descriptions and the description only gestures at them collectively as 'Jira credentials', leaving no guidance on precedence between issue and issue_key. 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 opens with a specific verb and resource ('Turn a Jira ticket into a test suite') and enumerates concrete outputs: Gherkin scenarios, E2E steps, API tests, test data, and clarification questions. This clearly distinguishes it from nearby siblings like generate_test_cases, prompt_test_suite, and fix_gherkin, which are single-purpose generators or linters.

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 explicitly documents the two entry paths: 'Pass the issue object, or Jira credentials to fetch it', and describes the degraded path ('a thin ticket returns an empty suite with verdict INCOMPLETE_SPEC'). It does not explicitly compare itself to the other test-generation siblings, so an agent must infer precedence.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.