Skip to content

Jira Cloud

Jira Cloud integration provides 53 MCP tools across issue management, agile/sprint workflows, and Jira Service Management (JSM).

  • Jira Cloud instance (not Jira Server/Data Center)
  • Atlassian account with admin access to create OAuth apps
  • Access to developer.atlassian.com
  1. Create an OAuth 2.0 (3LO) app

    Go to developer.atlassian.com/console/myapps and click Create > OAuth 2.0 integration.

  2. Configure permissions

    In your app settings, go to Permissions and add these scopes:

    ScopeAccess
    read:jira-workRead issues, projects, boards, filters
    write:jira-workCreate/manage issues, comments, worklogs
    read:jira-userView and search users
    manage:jira-projectManage project settings, components, versions
    read:board-scope:jira-softwareRead boards
    write:board-scope:jira-softwareManage boards
    read:sprint:jira-softwareRead sprints
    write:sprint:jira-softwareManage sprints
    offline_accessRequired for refresh tokens
    read:meUser profile information
  3. Set the callback URL

    Under Authorization, add the callback URL:

    https://api.switchboard.fpdigital.ai/oauth/jira/callback
  4. Copy credentials

    Note the Client ID and Client Secret from the app settings.

  5. Set environment variables

    Terminal window
    cd src
    npx wrangler secret put JIRA_CLIENT_ID
    npx wrangler secret put JIRA_CLIENT_SECRET

Jira uses Atlassian OAuth 2.0 (3LO) which has several differences from standard OAuth:

The authorization URL requires audience=api.atlassian.com — this is unique to Atlassian and not used by other Switchboard services.

Token exchange uses a JSON request body instead of form-encoded data (unlike most OAuth providers). Switchboard handles this automatically.

After obtaining an access token, Switchboard automatically calls the accessible-resources endpoint to discover your Jira Cloud ID. This ID is required for all API calls and is stored alongside your tokens.

Jira refresh tokens are rotating — each time a token is refreshed, the old refresh token is invalidated and a new one is issued. Switchboard handles this automatically, always storing the latest refresh token.

TokenLifetime
Access token1 hour
Refresh token90 days (rotating)

53 tools across 12 categories:

CategoryToolsExamples
Connection1jira_ping
Issue Management10search, get, create, update, transition, assign
Comments2add, get comments
Worklogs2log work, get worklogs
Projects4list, get, components, versions
Boards & Sprints8list boards/sprints, sprint issues, create sprints
Sprint Lifecycle3start, complete, move to backlog
Epics & Labels4list epics, add/remove labels, link issues
Utilities7watchers, filters, fields, statuses, priorities
Delete Operations4delete issues, comments, worklogs, attachments
Service Management4service desks, queues, SLAs, create requests
Advanced4changelog, permissions, link types, request types

Switchboard automatically detects and blocks Jira-specific credentials:

PatternSeverity
Atlassian API tokens (ATATT-prefix)Critical (auto-block)
OAuth bearer token referencesHigh
Webhook shared secretsHigh

After setup, verify the connection:

  1. Go to your Switchboard Dashboard
  2. Navigate to the Jira service page
  3. Click Connect to initiate OAuth
  4. After authorization, click Test Connection
  5. The test calls jira_ping and displays your authenticated user info