Documentation

Jira connector

Two flavours: Atlassian OAuth (recommended — one consent also installs Confluence) and email + API token (manual). Both power the live MCP tools (jira_list_projects, jira_search_issues, jira_get_issue, jira_diagnose) and can index a project into the knowledge corpus as jira_project.

Option A — Atlassian OAuth (recommended)

  1. In the OrgMCP admin console, open Connectors → Add → Jira (or Confluence — the same start URL fans out into both connector rows).
  2. Click Connect to Atlassian. Approve the read scopes (Jira work/user + Confluence content/space + offline_access for refresh).
  3. Atlassian redirects to /api/oauth-tenant/atlassian/callback. We persist the token blob (including refresh token + client id/secret so refresh works without a second config lookup) and bounce you back to the connectors UI with both Jira and Confluence rows.
  4. On the connector's Sources tab, pick the projects to index as knowledge sources.

Ops note: the Atlassian 3LO app must list the tenant callback for each environment — e.g. https://staging.app.orgmcp.io/api/oauth-tenant/atlassian/callback and https://app.orgmcp.io/api/oauth-tenant/atlassian/callback. Platform ATLASSIAN_OAUTH_* is live on staging and production (Connect CTA is enabled). Sharing must stay on (private 3LO apps are installable only by the app owner). Operator checklist: docs/RUN-atlassian-oauth.md.

Rotation: access tokens expire in ~60 minutes. Atlassian issues arotating refresh token — we persist the new pair onto both the Jira and Confluence rows and serialize parallel refreshes. Reconnect only if refresh still fails after that (revoked grant, not a race).

Option B — Email + API token

  1. Create an Atlassian API token for the account that should browse projects, then paste Host (e.g. https://acme.atlassian.net), email, and token in Connectors → Add → Jira.
  2. Click Test connection. A green result requires at least one visible project; zero projects fails with a clear message (use jira_diagnose / the diagnostics panel for host + project count).

What gets indexed

  • Issues in each selected project (summary + description as text), plus up to 40 issue comments appended into the same document (oldest first). Optionally filtered by status category (new / indeterminate / done), lookback days, and optional issue types (e.g. Incident, Service Request). Jira Service Management is the same connector — pick the JSM project and filter by issue type; there is no separate kind.
  • Incremental cursor: after a successful sync we store the newest issue updated timestamp as ISO and render it as Jira JQL yyyy-MM-dd HH:mm on the next crawl (ISO T/Z matches nothing). A quiet incremental tick keeps the existing index. Sync now ignores the cursor and re-walks the project.

What does not get indexed

  • Attachments and worklogs (binary / high-volume — not in RAG yet).
  • Projects the credential cannot see. Diagnose surfaces the visible count; Test fails at zero.

Honesty surface

  • jira_diagnose / admin Test — mode, host, visible project count, sample keys. Zero projects ⇒ test fails.
  • List tools paginate with pageToken / nextPageToken.
  • Partial syncs at the issue cap write a warning; empty crawls write a precise emptyReason.

See also Confluence connector (same Atlassian grant) and the canonical matrix in the operator docs (docs/ARCH-connector-capabilities.md).