Integration · Jira

RampStack skills in Jira.

The brief is the Epic. The four axes are custom fields. JQL is what makes the brief queryable.

Jira gives the team Epics, custom fields, screen schemes, workflows, and JQL. The integration uses each one for the load-bearing role it already plays. The Epic is where the brief lives. Custom fields are how axis positions become structured data. JQL is how the brief stays queryable across projects. The workflow is where the brief-alignment review step gets enforced before a Story moves to In Progress.

How this works with the orchestrator skill

The skill produces the plan. Jira holds the work.

The integration-orchestrator skill outputs a phased delivery plan. This page shows how that plan implements in Jira specifically. Phases become Epics, gates become workflow statuses, lock points become locked custom fields, and handoffs become Jira issue links across Epics. The orchestrator outputs the specific values; Jira holds the structural shape.

The 5-status taxonomy (Todo / In Progress / Waiting / Blocked / Done) maps to Jira's workflow with workflow validators preventing premature transitions. The QA verification gate fires before Done; failure routes to Blocked, not back to In Progress. See the platform-implementation reference on GitHub for the per-platform setup details.

Visual demonstration

What this looks like in practice.

Jira/BRAND-247Story
In Progress

Direction: Confirm tone-axis position

Tone-axis position selected against the locked brief. Awaiting brand owner sign-off via the Direction approval gate.

Phase
Direction
Gate
Awaiting Direction approval
Assignee
Karim (design lead)
phase:directionorchestrator-managedaxis:tone
A Direction-phase Story. Phase, Gate, and Locked are custom fields the orchestrator skill populates per ticket. Labels namespace orchestration metadata so JQL queries filter cleanly across phases.
Jira board5-status taxonomy
Todo1

BRAND-251

Identity: Logo lockup variants

Identity · In progress

In Progress1

BRAND-247

Direction: Tone-axis confirm

Direction · In progress

Waiting1

BRAND-244

Audit: brand asset review

Audit · Awaiting brand owner

Blocked1

BRAND-238

Reservation flow regression

QA · Failed verification

Done1

BRAND-230

Brief: scope and constraints

Discovery · Brief approval passed

The 5-status taxonomy as Jira workflow columns. Blocked is a first-class status, distinct from Waiting; Done is gated by QA verification. Tickets carry their phase as custom-field metadata so JQL filters work cross-project.
Phased orchestration: Discovery, Direction, Identity, Production, Launch with gates between each phaseDiscoveryPhase 1DirectionPhase 2IdentityPhase 3ProductionPhase 4LaunchPhase 5Brief approvalgateDirection approvalgateIdentity approvalgateQA verificationgateLaunch readinessgatePhasesphasegate (lock point)
The orchestration shape is platform-agnostic. Each Epic in Jira corresponds to a phase; each gate is the workflow transition between phase Epics. Lock points become locked custom fields after the gate passes.
Jira · MCP + CLI

Initial Epic structure setup from the orchestration plan. The agent populates one Epic per phase, sets custom field defaults, and links Stories under their Epic via Epic Link.

Jira MCP
docs
# Atlassian remote MCP, called via the agent runtime
mcp.atlassian.create_issue({
  project: "BRAND",
  issuetype: "Epic",
  summary: "Phase 2: Direction",
  customField_phase: "Direction",
  customField_locked: false,
  customField_approver: "brand-owner@example.com"
})

# Repeat per phase, link Stories with Epic Link
acli
# Atlassian official CLI for bulk Confluence content edits
acli login --site rampstack.atlassian.net
acli confluence page create \
  --space BRAND \
  --title "Atlas brief v2" \
  --file ./brief.md
MCP for setup operations and small reads / writes; CLI for bulk content updates and Confluence formatting that survives roundtrips better than MCP. Most teams use both.

MCP integration

Atlassian remote MCP server.

Atlassian launched its remote MCP server in 2025. Capable of Jira issue CRUD, status transitions, comments, JQL queries, and Confluence page operations. Authentication via OAuth or API token. The orchestrator skill outputs MCP commands for initial Epic structure, custom field values, comment-based handoff trails, and Confluence pages for the brief and direction artifact.

Practical limits: workflow scheme creation typically requires admin UI setup; the MCP populates against an existing scheme more reliably than it configures schemes from scratch. Heavy Confluence content edits with rich ADF formatting (tables, callouts, complex code blocks) can lose detail through MCP roundtrips; for that, the Atlassian CLI is the better tool.

Reference: Atlassian Remote MCP Server announcement. For setup operations the orchestrator skill outputs MCP commands directly. For bulk operations and content-heavy edits, the CLI alternative below is the better fit.

CLI alternative

Atlassian CLI for bulk operations.

The Atlassian official CLI (acli) and community CLIs handle bulk operations across many tickets, heavy Confluence content edits where ADF formatting matters, scripted reporting (CSV exports, JQL across multiple projects), and CI integration. Use the CLI when token cost matters on heavy operations or when the agent needs file-tree-aware syncs.

The orchestrator skill output specifies which interface fires when: MCP for the orchestration plan's setup operations; CLI for ongoing bulk work and CI integration.

The shape

Brief into Jira primitives.

The Epic carries the brief. Stories link to the Epic via Epic Link. Custom fields hold the axis positions. The workflow gains a Direction review step. JQL pulls cross-project work that answers the brief or breaks it.

The mapping

Brief artifacts to Jira primitives.

Brief artifactJira primitiveNotes
Project name and descriptionEpic title and descriptionSynthesis paragraph at top
Tone axis positionCustom field: Tone (Single-select)Options: Professional, Conversational, Playful, Provocative
Aesthetic axis positionCustom field: Aesthetic (Single-select)Editorial Restrained, Polished Standard, Controlled Maximalist, Expressive Maximalist
Relationship axis positionCustom field: Relationship (Single-select)Authority, Peer, Companion, Coach
Sensory axis positionCustom field: Sensory (Single-select)Functional, Considered, Resonant
Rejection listDescription heading: Won't doBulleted list inside the Epic body
Direction-status per StoryCustom field: Direction status (Single-select)Aligned, Drift, Needs review. Set during refinement.
Inspiration referencesWeb Links section on the EpicNative Jira link list, no custom field needed

Each axis custom field is a Single-select. Multi-select is tempting but creates cardinality problems for JQL: a Story tagged with two Tone positions cannot be filtered cleanly. Stick with Single-select. If a Story spans multiple axis positions, that is a sign the Story is too big and should be split.

Apply the four custom fields to the Epic issue type and the Story issue type via the screen scheme. The Epic fields capture the brief; the Story fields inherit defaults from the Epic but allow exception cases (a specific Story that intentionally sits at a different position with explicit justification).

Templates

Copy these into the project configuration.

Epic description structure

The Epic body uses a fixed heading structure so every Epic is parseable by humans and by automation rules the team adds later.

# Brief synthesis

[One paragraph in present tense describing what
this combination produces in practice.]

# Axis positions

- Tone: [position] because [one-sentence rationale]
- Aesthetic: [position] because [one-sentence rationale]
- Relationship: [position] because [one-sentence rationale]
- Sensory: [position] because [one-sentence rationale]

(Custom fields above mirror these for queryability.)

# Won't do

- [specific phrasing, structure, or visual move
  this brief excludes]
- [next item]
- [next item]

# Inspiration references

(Use the Web Links section of this Epic for URLs.
Add a one-sentence note per reference about what
specifically resonates.)

# Open questions

- [anything still unresolved that downstream Stories
  will need answered]

JQL filters the team can save

Save these as filters at the team level. Each surfaces a different cut of the work that touches one or more briefs.

# All open Stories under one brief
"Epic Link" = PROJ-123 AND statusCategory != Done
ORDER BY priority DESC, created DESC

# Stories that have not been graded yet
"Epic Link" = PROJ-123
  AND "Direction status" is EMPTY
  AND statusCategory != Done

# Stories that drifted, surfaced for review
"Epic Link" = PROJ-123
  AND "Direction status" = "Drift"

# Cross-project work tagged with one tone position
project in (WEB, APP, MKT)
  AND Tone = "Professional"
  AND statusCategory = "In Progress"

# Stories under the brief that violate the rejection
# list (as flagged by the Direction-status review)
"Epic Link" = PROJ-123
  AND "Direction status" = "Drift"
ORDER BY updated DESC

Workflow with a Direction review step

Insert a Direction review state between Refinement and Ready. The transition out of Direction review requires the Direction-status field to be set to Aligned or Needs review (not Drift). The transition is what makes the gate real instead of decorative.

Story workflow states

Backlog  ->  Refinement  ->  Direction review  ->  Ready
                                    |
                                    +->  Drift  (loop back to
                                                 Refinement)

Transition: Direction review -> Ready
  - Validator: "Direction status" must equal
    "Aligned" OR "Needs review"
  - Post-function: set assignee to the Story owner

Transition: Direction review -> Drift
  - Used when the reviewer judges the Story breaks the
    brief. Story returns to Refinement with a comment
    explaining the gap.

Issue type scheme suggestion

The default Jira scheme works. Add the four axis custom fields to a screen used by the Epic and Story issue types via the screen scheme. Optionally add a Brief-aware Story type if the team wants visual separation in the backlog between brief-bound work and operational work.

Issue types in the scheme

Epic           - carries the brief, axis fields required
Story          - inherits axis defaults from Epic Link
Bug            - axis fields optional (often N/A)
Task           - axis fields optional
Sub-task       - inherits from parent Story

Screen configuration

Create Issue (Story) screen
  - Summary, Description, Epic Link (required)
  - Tone, Aesthetic, Relationship, Sensory
    (defaulted from Epic Link, editable)
  - Direction status (set during refinement)

Edit Issue (Story) screen
  - Same fields as Create
  - Plus Direction status, editable by reviewers

Failure modes

Where the Jira integration goes wrong.

Custom fields applied to the Epic but not surfaced on Story creation. The team configures the four axis fields, applies them to the Epic, then opens the Create Story screen and discovers the fields are missing. Stories get filed without context, JQL filters return holes, and the team loses confidence within a sprint. The fix is the screen scheme: the axis fields have to appear on every Create and Edit screen the team uses.

Epic Link missing on Stories. Someone files a quick Story from a notification, forgets to set Epic Link, and the Story enters the next sprint without ever being graded against the brief. Make Epic Link a required field on the Story create screen, or add an automation rule that surfaces Epic-less Stories to the team channel within fifteen minutes.

The brief is in the Epic description but never read. Refinement opens the Epic, scrolls past the brief, and gets to the Story list. The brief becomes a header the team scrolls over. The fix is the Direction review workflow step: a Story cannot move to Ready without Direction-status being set, which forces the reviewer to compare the Story against the brief.

Direction-status set to Aligned by default. If the field defaults to Aligned, the Direction review step degenerates into a single-click rubber stamp. Default the field to empty so the reviewer has to make an active selection. The friction is the point.

Composition

Which skills feed the Jira integration.

The brief itself comes from creative-direction. Stories that produce voice copy consume the output of brand-voice. Stories that produce identity work consume brand-identity. Conversion-focused work consumes landing-page-copy. The dependency chain is identical to the agile-creative-direction integration; this page just translates it into Jira's vocabulary.

Continue reading.

For Jira platform mechanics (custom field types, screen schemes, JQL syntax, workflow validators), Atlassian's official Jira documentation is the source of truth. The fields and queries above use only built-in Jira features; no marketplace add-on is required.

Frequently asked questions.

Where does a creative-direction brief belong in Jira?
On the Epic. The brief synthesis becomes the Epic description, the four axis positions become custom fields on the Epic, and the rejection list becomes a structured section in the description. Stories link to the Epic via the Epic Link field, which Jira indexes natively, so a single JQL query returns every Story under the Epic answering one brief.
What custom field type works best for axis positions?
Single-select fields, one per axis (Tone, Aesthetic, Relationship, Sensory). Single-select gives you the JQL queryability of structured values without the cardinality problem multi-select introduces. Configure the option list per axis (Professional, Conversational, Playful, Provocative for Tone; the corresponding sets for the other three) and apply the fields to the Epic issue type via the screen scheme.
Can JQL find stories that break the brief's rejection list?
Not directly via JQL alone, since the rejection list is freeform text. Teams handle this with a Single-select Direction-status field on Stories with values like Aligned, Drift, Needs review. A workflow transition or an automation rule sets Direction-status during refinement based on a manual judgment call. JQL then queries that field. The brief is the source of truth; the field is the queryable index of human review against it.
What is the most common Jira-specific failure of this integration?
Custom fields applied to the Epic but not surfaced on the Create Story screen. Stories get filed without axis context, the JQL filters return incomplete results, and the team loses confidence in the integration within a sprint or two. Confirm the screen scheme exposes the axis fields on every relevant create and edit screen, not just on the Epic detail view.

Cost considerations

Jira's MCP is included with the platform subscription.

Subscription included

No per-call cost; usage is bounded by the plan tier you already pay for. Lean on the MCP for exploratory work the way you would lean on the platform UI: the marginal cost of an extra call is zero, and the agent reads or writes the same data your team already has access to.

Atlassian plan covers MCP usage. No per-call MCP cost; standard Jira tier limits (seats, storage, automation runs) still apply.

Recommended patterns

  • Treat the MCP as a thin layer over the platform; permissions cascade from platform-side roles, not a separate MCP credential.
  • Plan-tier limits (seats, projects, environments, event volume) still apply; design agent workflows to live within them.
  • Audit the agent's writes the way you would audit any teammate's: subscription-included does not mean the changes are reversible.