confluence-board
Manage Confluence pages and spaces. Use when the user wants to: (1) List, create, update, or delete Confluence pages, (2) Search content across spaces, (3) View or manage spaces, (4) Read or update page content, (5) Manage page attachments. Requires environment variables CONFLUENCE_URL, CONFLUENCE_USERNAME, CONFLUENCE_API_TOKEN, and optionally CONFLUENCE_SPACES_FILTER.
When & Why to Use This Skill
This Claude skill enables comprehensive management of Atlassian Confluence pages and spaces directly through AI. It streamlines documentation workflows by allowing users to create, update, search, and organize wiki content, attachments, and labels via the Confluence REST API, significantly enhancing team collaboration and knowledge accessibility.
Use Cases
- Automated Documentation Management: Effortlessly create and update technical specifications, API documentation, or project requirements pages directly from development notes.
- Advanced Knowledge Retrieval: Utilize powerful CQL (Confluence Query Language) searches to locate specific information, meeting minutes, or historical data across multiple corporate spaces.
- Content Organization & Maintenance: Bulk manage page labels, comments, and attachments to ensure the internal wiki remains structured, searchable, and up-to-date.
- Project Onboarding & SOPs: Rapidly set up new space structures, including parent-child page hierarchies for Standard Operating Procedures and team handbooks.
| name | confluence-board |
|---|---|
| description | "Manage Confluence pages and spaces. Use when the user wants to: (1) List, create, update, or delete Confluence pages, (2) Search content across spaces, (3) View or manage spaces, (4) Read or update page content, (5) Manage page attachments. Requires environment variables CONFLUENCE_URL, CONFLUENCE_USERNAME, CONFLUENCE_API_TOKEN, and optionally CONFLUENCE_SPACES_FILTER." |
Confluence Page Management
Manage Confluence pages, spaces, and content via the Confluence REST API.
Environment Variables
Required:
CONFLUENCE_URL: Confluence instance URL (e.g.,https://company.atlassian.net/wiki)CONFLUENCE_USERNAME: Confluence username/emailCONFLUENCE_API_TOKEN: API token from https://id.atlassian.com/manage-profile/security/api-tokens
Optional:
CONFLUENCE_SPACES_FILTER: Comma-separated space keys to filter by default (e.g.,DEV,DOCS)
Quick Start
Use scripts/confluence_api.py for all Confluence operations:
# List spaces
python scripts/confluence_api.py spaces
# List pages in a space
python scripts/confluence_api.py pages --space DEV
# Search for content
python scripts/confluence_api.py search "meeting notes"
# Get page details
python scripts/confluence_api.py get 12345
# Create a page
python scripts/confluence_api.py create DEV "My New Page" --body "Page content here"
# Update a page
python scripts/confluence_api.py update 12345 --title "New Title" --body "Updated content"
Page Operations
List Pages
python scripts/confluence_api.py pages [options]
--space, -s Space key(s), comma-separated
--title, -t Filter by title (contains)
--label, -l Filter by label
--max Max results (default: 50)
--verbose, -v Show detailed output
Get Page Details
python scripts/confluence_api.py get PAGE_ID
python scripts/confluence_api.py get PAGE_ID --content # Include body content
Create Page
python scripts/confluence_api.py create SPACE "Title" [options]
--body, -b Page body content (plain text or HTML)
--parent, -p Parent page ID
--labels, -l Labels (space-separated)
Update Page
python scripts/confluence_api.py update PAGE_ID [options]
--title, -t New title
--body, -b New body content
--append, -a Append to existing content instead of replacing
--labels, -l New labels
Delete Page
python scripts/confluence_api.py delete PAGE_ID
Add Comment
python scripts/confluence_api.py comment PAGE_ID "Comment text"
Space Operations
List Spaces
python scripts/confluence_api.py spaces [--type global|personal]
Get Space Details
python scripts/confluence_api.py space SPACE_KEY
List Space Pages
python scripts/confluence_api.py space-pages SPACE_KEY [-v]
Search Operations
Search Content
python scripts/confluence_api.py search "query" [options]
--space, -s Limit to space(s)
--type, -t Content type (page, blogpost, comment)
--max Max results (default: 25)
Search with CQL
python scripts/confluence_api.py search --cql 'type=page AND space=DEV AND title~"meeting"'
Label Operations
Get Page Labels
python scripts/confluence_api.py labels PAGE_ID
Add Labels
python scripts/confluence_api.py add-labels PAGE_ID label1 label2 label3
Remove Label
python scripts/confluence_api.py remove-label PAGE_ID label_name
Attachment Operations
List Attachments
python scripts/confluence_api.py attachments PAGE_ID
Download Attachment
python scripts/confluence_api.py download PAGE_ID "filename.pdf" --output ./downloads/
Common Workflows
Documentation Review
# Find all pages updated in the last week
python scripts/confluence_api.py search --cql 'type=page AND lastModified >= now("-7d")' -v
# Get specific page content
python scripts/confluence_api.py get 12345 --content
Create Documentation
# Create a new page under a parent
python scripts/confluence_api.py create DEV "API Documentation" \
--parent 12345 \
--body "<h1>API Reference</h1><p>Documentation content...</p>" \
--labels api documentation
# Update existing page
python scripts/confluence_api.py update 67890 --body "Updated content" --append
Content Organization
# List all pages with a specific label
python scripts/confluence_api.py search --cql 'type=page AND label="meeting-notes"'
# Add labels to categorize pages
python scripts/confluence_api.py add-labels 12345 reviewed approved
CQL Examples
Custom queries with --cql:
# Pages modified by current user
python scripts/confluence_api.py search --cql 'type=page AND contributor=currentUser()'
# Recently created pages
python scripts/confluence_api.py search --cql 'type=page AND created >= now("-30d") ORDER BY created DESC'
# Pages with specific label in space
python scripts/confluence_api.py search --cql 'type=page AND space=DEV AND label="important"'
# Full-text search
python scripts/confluence_api.py search --cql 'text~"deployment guide"'