From private-atlassian
This skill should be used when the user asks to "look up a Jira issue", "find a Confluence page", "search Jira", "search Confluence", "show me issues in project X", "what's the status of ticket Y", "find docs about Z", or any task that involves reading from or searching Atlassian (Jira or Confluence). Guides efficient, low-bloat interaction with the Atlassian MCP server by enforcing digest output, cloudId caching, and targeted queries.
How this skill is triggered — by the user, by Claude, or both
Slash command
/private-atlassian:atlassian-mediationThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Interact with Jira and Confluence via the Atlassian MCP server in a way that
Interact with Jira and Confluence via the Atlassian MCP server in a way that minimizes context consumption. The raw MCP tools return verbose JSON that quickly overwhelms the context window. This skill enforces a discipline of digest-first, detail-on-demand: always summarize before expanding, always limit fields fetched, and always cache the cloudId rather than re-fetching it.
Before making any Atlassian MCP call, read the plugin settings file at:
$CLAUDE_CONFIG_DIR/private-atlassian.local.md
This file contains YAML frontmatter with the user's cloud_id and site_url.
Parse it with a Read tool call. Example structure:
---
cloud_id: "your-cloud-id-here"
site_url: "https://your-org.atlassian.net"
---
If the file does not exist or cloud_id is empty, call
getAccessibleAtlassianResources once to retrieve it, then remind the user to
populate their settings file so future sessions skip this step.
Never call getAccessibleAtlassianResources if cloud_id is already
available from settings.
For every Atlassian response, produce a digest — a compact, human-readable summary — before offering to expand. The default output format for any search or fetch is:
[KEY-123] Title of the issue (Status · Assignee · Priority)
Summary: one-sentence description
Labels: label1, label2
Updated: 2024-01-15
[Page Title] — Space Name
Last edited: 2024-01-15 by Author
Excerpt: first ~120 characters of body content...
URL: https://org.atlassian.net/wiki/...
Present at most 10 results per search, each as a single-line digest. Never dump raw JSON. Never include full body content unless the user explicitly asks to "show the full page" or "show full details".
Use searchJiraIssuesUsingJql with a targeted JQL query. Default fields to
fetch: summary, status, assignee, priority, labels, updated.
Limit to 10–20 results unless the user asks for more.
searchJiraIssuesUsingJql(
cloudId: <from settings>,
jql: "project = MYPROJ AND status != Done ORDER BY updated DESC",
maxResults: 10
)
Produce a digest list. Offer: "Want details on any of these?"
Use getJiraIssue only when the user asks about a specific ticket. Request
only the fields needed for the current task. Produce a digest, then offer to
show the full description or comments if needed.
See references/jql-patterns.md for common query templates. Key rules:
ORDER BY updated DESC unless sorting by something specificstatus != Done to exclude resolved issues by defaultassignee = currentUser() for "my issues" queriestext ~ "keyword" for full-text search across summary + descriptionUse searchConfluenceUsingCql with a focused CQL query. Limit to 10 results.
searchConfluenceUsingCql(
cloudId: <from settings>,
cql: "title ~ \"deployment\" AND space.key = \"ENG\" AND type = page",
limit: 10
)
Produce a digest list with page title, space, last-edited date, and a short excerpt. Do not fetch full page content during a search.
Use getConfluencePage only when the user asks to "read", "open", or "show"
a specific page. Request markdown format (not adf) for readability.
Even after fetching, summarize the page rather than dumping the full body:
See references/cql-patterns.md for common query templates. Key rules:
type = page to exclude blog posts and attachmentsancestor = <pageId> to search within a page treespace.key = "KEY" to scope to a specific spacelastModified >= "2024-01-01" for recency filteringApply these limits at all times:
| Operation | Max results | Body content |
|---|---|---|
| JQL search | 10–20 | Never in search |
| CQL search | 10 | Never in search |
| Single Jira issue | 1 | Digest only; full on request |
| Single Confluence page | 1 | Summarize; section on request |
| Page descendants | 10 | Titles only |
If the user asks for "all issues" or "everything", explain that fetching everything would flood the context, then offer a targeted query instead.
getAccessibleAtlassianResources, show the result,
prompt user to add it to .claude/private-atlassian.local.md.references/jql-patterns.md — Common JQL query templates for Jirareferences/cql-patterns.md — Common CQL query templates for Confluencereferences/mcp-tools-reference.md — Quick reference for all available
Atlassian MCP tools and their parametersnpx claudepluginhub matthewmaker/private-atlassian --plugin private-atlassianInteract with Atlassian Jira and Confluence via REST APIs. Create, edit, search, and transition Jira issues; read and write Confluence pages. No MCP server needed.
Provides templates for Confluence docs like TDD, ADR, API, runbooks, release notes. Covers CQL queries and Jira linking for engineering teams managing technical documentation.
Manages Jira issues with JQL, Confluence pages with CQL, sprint workflows, and MCP server authentication for Atlassian API integrations.