Manage Jira issues and Confluence wiki pages in Atlassian Cloud. Use when: (1) searching/creating/updating Jira issues with JQL, (2) searching/reading/creating Confluence pages with CQL, (3) managing Jira workflows, transitions, and comments, (4) browsing Confluence spaces and page hierarchies. Supports OAuth 2.1 via MCP server (recommended) or API token authentication (fallback).
76
—
Does it follow best practices?
Impact
—
No eval scenarios have been run
Advisory
Suggest reviewing before use
Full Jira and Confluence integration with two authentication methods:
No API tokens or instance URLs needed. Uses dynamic client registration and PKCE.
pip install -r requirements.txt
python scripts/auth.py login --oauthA browser opens for Atlassian authorization. Select which products (Jira, Confluence, Compass) to grant access. Tokens are stored in the system keyring and auto-refresh when expired.
Check status:
python scripts/auth.py statusFor environments where browser-based OAuth isn't available.
pip install -r requirements.txt
python scripts/auth.py loginFollow the prompts to enter your Atlassian URL, email, and API token. Credentials are stored securely in the system keyring.
Create an API token at: https://id.atlassian.com/manage-profile/security/api-tokens
Check authentication status:
python scripts/auth.py statusLogout (clears both OAuth and API token credentials):
python scripts/auth.py logoutThe scripts automatically detect which backend to use based on your auth type:
All commands work identically regardless of backend.
python scripts/jira.py search "project = DEV AND status = Open"
python scripts/jira.py search "assignee = currentUser() ORDER BY updated DESC" --limit 10python scripts/jira.py get DEV-123python scripts/jira.py create --project DEV --summary "Fix login bug" --type Bug
python scripts/jira.py create --project DEV --summary "New feature" --type Story \
--description "Details here" --priority High --assignee "user@example.com" --labels "backend,urgent"python scripts/jira.py update DEV-123 --summary "Updated summary" --priority High
python scripts/jira.py update DEV-123 --assignee "user@example.com"python scripts/jira.py transition DEV-123 "In Progress"
python scripts/jira.py transition DEV-123 "Done"python scripts/jira.py comment DEV-123 --add "This is a comment"
python scripts/jira.py comment DEV-123 --listpython scripts/jira.py list-projects
python scripts/jira.py list-statuses DEVpython scripts/jira.py auth-infopython scripts/jira.py list-toolspython scripts/confluence.py search "deployment guide"
python scripts/confluence.py search "type=page AND space=DEV AND text~\"deployment\""
python scripts/confluence.py search "onboarding" --limit 10python scripts/confluence.py read <page-id>
python scripts/confluence.py read <page-id> --jsonpython scripts/confluence.py list-spaces
python scripts/confluence.py list-spaces --limit 50python scripts/confluence.py get-space <space-id>python scripts/confluence.py list-pages --space-id <space-id>python scripts/confluence.py create --title "New Page" --space-id <space-id>
python scripts/confluence.py create --title "Guide" --space-id <id> --body "<p>Content here</p>"
python scripts/confluence.py create --title "Child" --space-id <id> --parent-id <parent-id>python scripts/confluence.py update <page-id> --title "Updated Title"
python scripts/confluence.py update <page-id> --body "<p>New content</p>"python scripts/confluence.py get-children <page-id>python scripts/confluence.py auth-infopython scripts/confluence.py list-tools| Command | Description | Required Args |
|---|---|---|
| search | Search issues with JQL | jql |
| get | Get issue details | issue_key |
| create | Create new issue | --project, --summary, --type |
| update | Update existing issue | issue_key |
| transition | Change issue status | issue_key, status |
| comment | Add or list comments | issue_key |
| list-projects | List accessible projects | - |
| list-statuses | List statuses for project | project_key |
| auth-info | Test API connection | - |
| list-tools | List MCP tools (OAuth only) | - |
| Command | Description | Required Args |
|---|---|---|
| search | Search using CQL | query |
| read | Get page content | page_id |
| list-spaces | List all spaces | - |
| get-space | Get space details | space_id |
| list-pages | List pages in a space | --space-id |
| create | Create new page | --title, --space-id |
| update | Update existing page | page_id |
| get-children | Get child pages | page_id |
| auth-info | Test API connection | - |
| list-tools | List MCP tools (OAuth only) | - |
Add --json flag to any script command for machine-readable output.
Credentials stored securely using the system keyring:
Service name: atlassian-skill
OAuth tokens auto-refresh when expired (if refresh token is available).
9731c77
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.