Skip to content
Easy AI How-To

AdvancedAgentsBuilding

Connect Jira through the Atlassian MCP so tickets flow through the factory

Part of the Software Factory series, a pattern by Greg Alton. The ticket is the factory's work order. With the Atlassian MCP server, the factory reads the ticket at the start of the line and leaves a living paper trail on it at every station.

Time
About 25 minutes
Checked
Tools
Atlassian Rovo MCP Server, Getting started guide

If a button name on the screen does not match this guide, follow the action. These products rename buttons often. This is an advanced guide: it uses code, and each technical term is explained the first time it appears. Model names and prices change, so check the linked docs before you ship.

Steps

  1. Add the Atlassian MCP server

    Atlassian runs an official remote MCP server. Add its URL to your agent's MCP settings (many clients also offer a one-click Atlassian plugin):

    {
      "mcpServers": {
        "atlassian": {
          "url": "https://mcp.atlassian.com/v2/mcp"
        }
      }
    }
    

    On first use, the client opens a browser for OAuth 2.1 sign-in (a standard login flow, so your password never goes to the agent). Everything the agent does is limited to your own Jira permissions. API-token login exists for headless use if your admin enables it.

  2. Give the tracker tools to the clerk only

    In the clerk's front matter, list the Atlassian tools it needs. In every other agent's front matter, leave them out (or list them as disallowed). The orchestrator decides what to post; the clerk only posts it.

  3. Teach the clerk two verbs

    ---
    name: factory-tracker
    description: Reads one Jira ticket or creates/updates one titled factory comment. Nothing else.
    model: haiku
    ---
    Do only the verb in the instruction.
    
    read KEY → return key, summary, status, type, parent, description
    (trimmed to 800 chars), URL.
    
    upsert KEY TITLE BODY → find the latest comment starting with TITLE.
    If found, update it; otherwise create it. If update fails, create a
    new one starting "Supersedes comment {id}."
    Post real headings, lists, and tables, not one code block.
    
    Never transition issues, edit fields, or print tokens.
    Return: op, key, action (created/updated/failed), comment_id, url.
    
  4. Post the artifacts in production-line order

    1. After planning: Plan — KEY with a task table (all "not started").
    2. As soon as tests exist and fail: Test Results — KEY with a test table. Update rows as tests go RED to GREEN.
    3. After the full suite is green: Execution Summary — KEY.
    4. After review: Handoff — KEY with the PR link, review comment, and disposition report.

    The Factory Manager forbids commits or PRs until the first three exist and are current.

  5. Try it on one ticket

    Ask your orchestrator to start a ticket, then watch Jira. You should see the Plan comment appear before any code changes, and the Test Results table fill in as the code station works.

    Prompt to paste

    Start factory work on ticket KEY-123. Follow AGENTS.md: read the ticket via the tracker clerk, explore, plan, and post the Plan comment. Stop before writing code and show me the plan.

Tips

  • Ask the clerk to update one living comment per title instead of adding new ones. The ticket stays readable.

  • If the MCP server is disconnected or unauthorized, the factory should stop and say so, never fall back to pasted API tokens.

  • Check Atlassian's supported-tools page for current tool names; they change as the server adds features.

Common questions

Does this work with Jira Server or Data Center?

Atlassian's hosted MCP server is for Atlassian Cloud. For self-hosted Jira, use a community MCP server or keep the artifacts in a plan file in the repo.

Can the agent move tickets between columns?

The server supports transitions, but this pattern keeps the clerk to reading and commenting. Moving tickets stays a human decision.

What if my company blocks MCP?

Keep the same four artifacts as Markdown files in the repo (for example docs/plans/KEY.md) and paste them into the ticket yourself.

Occasional notes

Hear when a new guide is up

A short note when a guide is added. No account, and no emails until this form is connected to a real list.

Placeholder. This form is not connected to an email service. Nothing you type is saved or sent.