Atlassian MCP Server
This MCP server lets an AI client work with Atlassian Cloud across Jira, Confluence, and Bitbucket through 102 tools.
Confluence: search pages, create/read/update/delete pages, manage spaces, children, attachments, labels, version history, and footer/inline comments.
Jira: search and manage issues end-to-end, including comments, transitions, attachments, links, worklogs, watchers, subtasks, labels, history, boards, sprints, versions, batch creation, dev status, epics, and user lookup.
Bitbucket: manage repositories, branches, commits, issues, pull requests, PR comments, approvals/change requests, merges, diffs, file content at refs, pipelines, and step logs.
Content handling: accepts Markdown for Confluence page/comment input and returns ADF JSON for page/comment bodies.
Safety/automation: supports smart Jira transition field handling and automatic local snapshots before mutating operations.
Limitations: Confluence inline image embedding via ADF is not supported; use attachments instead.
Provides tools for Bitbucket such as repository management, branches, commits, pull requests with comments and resolution, and issue tracking.
Provides tools for Confluence including searching, creating, reading, updating, and deleting pages, managing spaces, comments, attachments, labels, and version history.
Provides full Jira issue lifecycle management including CRUD, comments, transitions, attachments, worklogs, watchers, subtasks, labels, history, agile boards, sprints, versions, batch creation, dev status, epic linking, and user lookup.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Atlassian MCP Server create a new Jira bug in project PROJ"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
🔗 Atlassian MCP Server
An MCP (Model Context Protocol) server that gives AI assistants full access to Jira, Confluence, and Bitbucket Cloud APIs -- 102 tools covering deep CRUD across all three products.
What It Does
This server acts as a bridge between any MCP-compatible AI client (Claude Desktop, etc.) and your Atlassian Cloud instance. Instead of switching between browser tabs, you ask your AI assistant to search Confluence, create Jira tickets, review pull requests, and more -- all through natural language.
Key Features
Confluence (22 tools) -- Search (text or raw CQL), create, read, update, and delete pages. Manage spaces, child pages, comments (full CRUD, replies, and text-anchored inline comments), attachments, labels, and version history. Input accepts Markdown (auto-converted to ADF); output is native ADF JSON.
Jira (50 tools) -- Full issue lifecycle: search (with
nextPageTokenpaging), CRUD, assign, comments, transitions (with an optional comment), attachments, issue links, worklogs, watchers, subtasks, labels, history, agile boards, sprints (incl. moving issues into a sprint), versions, batch creation (up to 50 issues), dev status, epic linking, and user lookup.Bitbucket (30 tools) -- Repository management, branches, commits, pull requests (create/update/list, reviewers, approve/request changes, merge/decline), PR comments with resolve/unresolve, PR diffstat and per-file diffs, file content at a ref, CI/pipeline status and step logs, and issue tracking.
Smart Field Handling -- AI-driven field suggestions during Jira transitions. Analyzes issue context to auto-suggest values for required fields (e.g., DB scripts, test cases), reducing manual input.
Snapshot Safety Net -- Automatic local snapshots of mutating operations (create/update/delete) with configurable retention, so you can recover from accidental changes.
Related MCP server: Jira MCP Server
Prerequisites
Node.js >= 18
Atlassian Cloud account(s) with API tokens
An MCP-compatible client (e.g., Claude Desktop)
Installation
From npm (recommended)
npm install -g @jagadeesh52423/atlassian-mcp-serverOr run without installing:
npx @jagadeesh52423/atlassian-mcp-serverFrom source
git clone https://github.com/jagadeeshpulamarasetti/atlassian-mcp-server.git
cd atlassian-mcp-server
npm install
npm run buildConfiguration
1. Set environment variables
Copy the template and fill in your credentials:
cp .env.example .env# Confluence
CONFLUENCE_DOMAIN=your-domain.atlassian.net
CONFLUENCE_EMAIL=your-email@example.com
CONFLUENCE_API_TOKEN=your-confluence-api-token
# Jira
JIRA_DOMAIN=your-domain.atlassian.net
JIRA_EMAIL=your-email@example.com
JIRA_API_TOKEN=your-jira-api-token
# Bitbucket
BITBUCKET_WORKSPACE=your-workspace
BITBUCKET_USERNAME=your-username
BITBUCKET_API_TOKEN=your-bitbucket-api-tokenYou can also set legacy ATLASSIAN_* variables as a fallback for Confluence and Jira. Bitbucket always requires its own credentials.
# Jira OAuth (advanced auth)
JIRA_CLIENT_ID=your-client-id
JIRA_CLIENT_SECRET=your-client-secret
# Snapshot safety net (defaults shown)
MCP_SNAPSHOTS_ENABLED=true
MCP_SNAPSHOT_DIR=~/.atlassian-mcp-snapshots
MCP_SNAPSHOT_RETENTION_DAYS=302. Get an API token
Go to Atlassian API Tokens
Click Create API token, give it a name, and copy the value
For Bitbucket, create a token under Personal settings > Access tokens with repo, issue, and PR scopes
Usage
Running the server
# Global install
atlassian-mcp-server
# From source
npm start
# Development (auto-reload)
npm run devClaude Desktop integration
Add one of the following to your Claude Desktop config:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"atlassian": {
"command": "npx",
"args": ["-y", "@jagadeesh52423/atlassian-mcp-server"],
"env": {
"CONFLUENCE_DOMAIN": "your-domain.atlassian.net",
"CONFLUENCE_EMAIL": "your-email@example.com",
"CONFLUENCE_API_TOKEN": "your-token",
"JIRA_DOMAIN": "your-domain.atlassian.net",
"JIRA_EMAIL": "your-email@example.com",
"JIRA_API_TOKEN": "your-token",
"BITBUCKET_WORKSPACE": "your-workspace",
"BITBUCKET_USERNAME": "your-username",
"BITBUCKET_API_TOKEN": "your-token"
}
}
}
}Global install:
{
"mcpServers": {
"atlassian": {
"command": "atlassian-mcp-server",
"env": { "..." : "same env vars as above" }
}
}
}From source:
{
"mcpServers": {
"atlassian": {
"command": "node",
"args": ["/path/to/atlassian-mcp-server/dist/index.js"]
}
}
}Available Tools
Confluence (22 tools)
Tool | Description |
| Search pages by text query or raw |
| Get a page by ID (returns ADF JSON body) |
| Create a page (accepts Markdown) |
| Update a page (accepts Markdown). Re-anchors inline comments automatically; reports any it could not |
| Repair inline comments detached by an earlier update, using page history. |
| Delete a page |
| List all spaces |
| Get pages in a space |
| Get child pages |
| Get page version history |
| List page attachments |
| Upload an attachment |
| Delete an attachment |
| Get footer and/or inline comments (ADF JSON). |
| Add a comment (Markdown), or reply via |
| Add an inline comment anchored to exact page text |
| Update a comment (Markdown) |
| Delete a comment |
| Get page labels |
| Add labels to a page |
| Remove a label |
| Deprecated: not supported, always returns an error (use |
Jira (50 tools)
Category | Tools |
Core |
|
Comments |
|
Transitions |
|
Attachments |
|
Issue Links |
|
Worklogs |
|
Watchers |
|
Subtasks |
|
Labels |
|
History |
|
Agile |
|
Versions |
|
Batch/Dev |
|
Epic |
|
All Jira tools are prefixed with jira_.
Bitbucket (30 tools)
Tool | Description |
| List workspace repositories |
| Get repository details |
| Create a repository |
| List pull requests |
| Get a PR with diff |
| Create a pull request |
| Update a pull request |
| List branches |
| List commits |
| List repository issues |
| Create an issue |
| Get PR comments |
| Add a PR comment |
| Update a PR comment |
| Delete a PR comment |
| Mark a PR comment thread as resolved |
| Reopen (unresolve) a PR comment thread |
| Approve a pull request |
| Remove your approval from a pull request |
| Request changes on a pull request |
| Remove your change request from a pull request |
| Merge a pull request (optional strategy, message, close source branch) |
| Decline a pull request |
| Get per-file change summary for a PR |
| Get the diff of a single file in a PR |
| Get file content at a branch or commit |
| Get CI/build statuses for a PR with a summary |
| List recent Pipelines runs, optionally by branch |
| Get per-step status of a pipeline run |
| Get the log of a pipeline step (last 200KB) |
PR comment resolution (v1.3.0+)
bitbucket_resolve_pr_comment/bitbucket_unresolve_pr_commentuse Bitbucket's dedicated resolution sub-resource (POST/DELETE .../comments/{id}/resolve) and return the refreshed comment.Top-level comments only -- Bitbucket only allows resolving/unresolving top-level review comments, not replies. Calling these on a reply returns
Comment is not a top-level comment.Comments returned by
bitbucket_get_pr_comments,bitbucket_resolve_pr_comment, andbitbucket_unresolve_pr_commentnow include aresolvedboolean. When a comment is resolved, the single-comment responses also includeresolvedOn(ISO timestamp) andresolvedBy(display name); these resolution details are not present in the bulk list response.
Confluence Content Format (v1.2.0+)
Confluence pages and comments use ADF (Atlassian Document Format) natively:
Input --
create_page,update_page,add_comment,update_commentaccept Markdown, which the server converts to ADF using the official@atlaskit/editor-markdown-transformer.Output --
get_page,get_commentsreturn ADF JSON (an object, not a string).Comments --
get_commentsreturns both footer (page-level) and inline (text-anchored) comments by default. Use thecommentTypeparam (footer|inline|all, defaultall) to filter. Every comment carries atypefield ("footer"or"inline"). Inline comments additionally includeanchoredText(the highlighted page text the comment is attached to),resolutionStatus(e.g."open","resolved"),markerRef, andwebuiLink. Backwards-compatibility note: callers that previously relied onget_commentsreturning footer comments only will now also receive inline comments under the defaultall; passcommentType: "footer"to restore the old footer-only behaviour. The newtypefield is additive and does not remove any existing field.Inline comment anchors -- An inline comment is not a separate resource: it anchors to page text via an
annotationmark inside the page body. Any update that rebuilds the body therefore detaches every inline comment on the page.update_pageguards against this by reading the live body first and re-anchoring each marker onto text that survived the edit, then reportinginlineComments: { preserved, dropped, ambiguous }. A comment whose text you reworded or deleted appears indropped; one whose text now occurs in more than one place appears inambiguous, because the server refuses to pick an occurrence — a wrong guess silently moves a reviewer's question onto unrelated text while reporting success. Either way the comment stays on the page but unattached, which is exactly what Confluence does today. Prefer leaving commented sentences intact. To repair comments detached by an earlier update (including ones made before this feature existed), useconfluence_reattach_inline_comments: it walks page history to find where each orphan was anchored, re-marks only unambiguous matches, and reports the rest rather than guessing. It never alters page text, and searches back at most 50 versions. Anchors are keyed by surrounding content (table header + first-column value, or block type + text) rather than by position, so they survive rows and paragraphs being inserted above them — which is what lets a comment on a repeated field name likeunique_idresolve even though that text appears ten times on the page. Note thatanchoredTextfromget_commentsis truncated by Confluence at ~250 characters (252 observed); the history lookup recovers the full anchor.Inline images -- Not currently supported via ADF media nodes (requires Atlassian Media API tokens). Use
confluence_add_attachmentinstead.
Project Structure
src/
├── index.ts # Server entry point and tool routing
├── config.ts # Environment variable loading and validation
├── types.ts # TypeScript interfaces
├── constants.ts # Shared constants
├── error-handler.ts # Structured error responses
├── formatters/ # Markdown-to-ADF and ADF-to-text converters
├── clients/ # HTTP clients (one per Atlassian product)
├── services/ # Business logic for each product
│ └── jira/ # Jira sub-modules (agile, comments, transitions, etc.)
├── handlers/ # MCP request handlers
├── tools/ # MCP tool definitions (schemas)
├── registry/ # Tool dispatch registry
└── snapshot/ # Snapshot safety net (auto-backup before mutations)Security
Credentials are read from environment variables only; never committed to source control.
All API calls use HTTPS with Basic Auth (base64-encoded
email:token).Grant tokens the minimum required permissions.
Snapshots are stored locally in
~/.atlassian-mcp-snapshotsby default.
License
Links
Source: GitHub
Issues: GitHub Issues
Available Tools
86 toolsbitbucket_add_pr_commentA
Add a comment to a Bitbucket pull request. Supports both general and inline (file/line) comments.
Inputs: prId (required), content (required), repoName (required), inlineTo, +3 more.
bitbucket_create_issueB
Create a new issue in a repository
Inputs: title (required), repoName (required), kind, content.
bitbucket_create_pull_requestB
Create a new pull request
Inputs: title (required), repoName (required), sourceBranch (required), description, +1 more.
bitbucket_create_repositoryB
Create a new Bitbucket repository
Inputs: name (required), language, isPrivate, description.
bitbucket_delete_pr_commentB
Delete a comment from a Bitbucket pull request
Inputs: prId (required), repoName (required), commentId (required).
bitbucket_get_branchesB
Get branches for a repository
Inputs: repoName (required), limit.
bitbucket_get_commitsC
Get commits for a repository
Inputs: repoName (required), limit, branch.
bitbucket_get_issuesC
Get issues for a repository
Inputs: repoName (required), limit, state.
bitbucket_get_pr_commentsB
Get all comments for a Bitbucket pull request
Inputs: prId (required), repoName (required).
bitbucket_get_pull_requestB
Get details of a specific pull request
Inputs: prId (required), repoName (required), includeDiff.
bitbucket_get_pull_requestsC
Get pull requests for a repository
Inputs: repoName (required), limit, state.
bitbucket_get_repositoriesB
Get list of Bitbucket repositories in workspace
Inputs: limit, query.
bitbucket_get_repositoryA
Get details of a specific Bitbucket repository
Inputs: repoName (required).
bitbucket_resolve_pr_commentB
Resolve a comment on a Bitbucket pull request
Inputs: prId (required), repoName (required), commentId (required).
bitbucket_unresolve_pr_commentB
Unresolve (reopen) a comment on a Bitbucket pull request
Inputs: prId (required), repoName (required), commentId (required).
bitbucket_update_pr_commentA
Update an existing comment on a Bitbucket pull request
Inputs: prId (required), content (required), repoName (required), commentId (required).
bitbucket_update_pull_requestB
Update an existing pull request (title, description, or destination branch). At least one of title, description, or destinationBranch must be provided.
Inputs: prId (required), repoName (required), title, description, +1 more.
confluence_add_attachmentB
Add an attachment to a Confluence page. Provide either filePath (local file) or fileContent (base64).
Inputs: pageId (required), filePath, filename, fileContent.
confluence_add_commentB
Add a comment to a Confluence page
Inputs: body (required), pageId (required).
confluence_add_labelsB
Add labels to a Confluence page
Inputs: labels (required), pageId (required).
confluence_create_pageA
Create a new Confluence page. The content field accepts Markdown — the server converts it to ADF (Atlassian Document Format) using the official @atlaskit transformer and submits it via the v2 API. The returned content is the ADF JSON document. Do not pass storage-format HTML or hand-written ADF JSON.
Inputs: title (required), content (required), spaceKey (required), images, +1 more.
confluence_delete_attachmentC
Delete an attachment from a Confluence page
Inputs: attachmentId (required).
confluence_delete_commentB
Delete a comment from a Confluence page
Inputs: commentId (required).
confluence_delete_pageB
Delete a Confluence page
Inputs: pageId (required).
confluence_embed_imageA
NOT SUPPORTED in this version. Inline image embedding requires the Atlassian Media API (ADF media nodes) and is not implemented. Use confluence_add_attachment to upload the file and reference it from the Confluence UI. Calling this tool will return an error.
Inputs: pageId (required), alt, align, width, +6 more.
confluence_get_attachmentsB
Get all attachments for a Confluence page
Inputs: pageId (required).
confluence_get_commentsA
Get comments for a Confluence page. Returns both footer (page-level) and inline (text-anchored) comments by default. Each comment carries a type field ("footer" or "inline"); the body field is an ADF JSON document. Inline comments also include anchoredText (the highlighted page text the comment is attached to), resolutionStatus (e.g. "open", "resolved"), and markerRef.
Inputs: pageId (required), commentType.
confluence_get_labelsA
Get all labels on a Confluence page
Inputs: pageId (required).
confluence_get_pageB
Get a specific Confluence page by ID. The content field is returned as an ADF JSON document (Atlassian Document Format).
Inputs: pageId (required).
confluence_get_page_childrenA
Get child pages of a Confluence page. v2 returns child summaries only — content, version, created, updated, and spaceKey are not populated; fetch each child by id with confluence_get_page for full details.
Inputs: pageId (required), limit.
confluence_get_page_historyB
Get version history for a Confluence page
Inputs: pageId (required), limit.
confluence_get_pages_by_spaceA
Get pages from a specific Confluence space. The content field on each page is an ADF JSON document. spaceKey is resolved to spaceId internally.
Inputs: spaceKey (required), limit.
confluence_get_spacesC
Get list of Confluence spaces
Inputs: limit.
confluence_remove_labelB
Remove a label from a Confluence page
Inputs: label (required), pageId (required).
confluence_search_pagesA
Search Confluence pages by text query (CQL). Returns matching pages; the content field on each result is opaque (legacy v1 storage HTML) and should not be relied on — fetch the page by id with confluence_get_page for the ADF body.
Inputs: limit, query.
confluence_update_commentB
Update an existing comment on a Confluence page
Inputs: body (required), version (required), commentId (required).
confluence_update_pageA
Update an existing Confluence page. The content field accepts Markdown — the server converts it to ADF and submits it via the v2 API. The returned content is the ADF JSON document.
Inputs: title (required), pageId (required), content (required), version (required).
jira_add_attachmentC
Add an attachment to a Jira issue
Inputs: filename (required), issueKey (required), fileContent (required).
jira_add_commentB
Add a comment to a Jira issue
Inputs: comment (required), issueKey (required).
jira_add_labelsB
Add labels to a Jira issue
Inputs: labels (required), issueKey (required).
jira_add_watcherC
Add a watcher to a Jira issue
Inputs: issueKey (required), accountId (required).
jira_add_worklogB
Add a work log (time spent) to a Jira issue
Inputs: issueKey (required), timeSpentSeconds (required), comment, started.
jira_batch_create_issuesB
Create multiple Jira issues in a single request (max 50)
Inputs: issues (required).
jira_create_issueC
Create a new Jira issue with support for custom fields including due dates
Inputs: summary (required), projectKey (required), description (required), labels, +6 more.
jira_create_issue_linkB
Create a link between two Jira issues
Inputs: linkType (required), inwardIssueKey (required), outwardIssueKey (required).
jira_create_sprintB
Create a new sprint on a Jira agile board
Inputs: name (required), boardId (required), goal, endDate, +1 more.
jira_create_subtaskB
Create a sub-task under a parent Jira issue
Inputs: summary (required), parentKey (required), description (required).
jira_create_versionC
Create a new version (release) in a Jira project
Inputs: name (required), projectKey (required), released, startDate, +2 more.
jira_delete_attachmentB
Delete an attachment from a Jira issue
Inputs: attachmentId (required).
jira_delete_commentB
Delete a comment from a Jira issue
Inputs: issueKey (required), commentId (required).
jira_delete_issueB
Delete a Jira issue. Optionally delete its subtasks.
Inputs: issueKey (required), deleteSubtasks.
jira_delete_issue_linkB
Delete a link between Jira issues
Inputs: linkId (required).
jira_delete_worklogA
Delete a work log entry from a Jira issue
Inputs: issueKey (required), worklogId (required).
jira_get_agile_boardsB
Get Jira agile boards. Optionally filter by name, type (scrum/kanban), or project.
Inputs: name, type, projectKeyOrId.
jira_get_attachmentsB
Get all attachments for a Jira issue
Inputs: issueKey (required).
jira_get_board_issuesC
Get all issues on a Jira agile board
Inputs: boardId (required), jql, startAt, maxResults.
jira_get_commentsC
Get all comments for a Jira issue
Inputs: issueKey (required).
jira_get_dev_statusB
Get development information (PRs, branches, commits) linked to a Jira issue
Inputs: issueId (required), dataType, applicationType.
jira_get_fieldsA
Search and discover available Jira fields. Use this to find field IDs (e.g. search "sprint" to find the Sprint custom field ID) for use with jira_get_issue and jira_search_issues fields parameter.
Inputs: type, query.
jira_get_issueA
Get a specific Jira issue by key. Optionally specify which fields to return.
Inputs: issueKey (required), fields.
jira_get_issue_historyB
Get complete change history for a Jira issue
Inputs: issueKey (required).
jira_get_issue_linksB
Get all issue links for a Jira issue
Inputs: issueKey (required).
jira_get_issue_transitionsB
Get available transitions for a Jira issue
Inputs: issueKey (required).
jira_get_issue_typesA
Get available issue types for a Jira project (e.g., Bug, Story, Task, Epic, Sub-task)
Inputs: projectKey (required).
jira_get_labelsA
Get available labels in Jira. Optionally filter by a search query.
Inputs: query, maxResults.
jira_get_link_typesA
Get all available issue link types in Jira
Inputs: no named parameters.
jira_get_projectsA
Get list of Jira projects
Inputs: no named parameters.
jira_get_project_versionsA
Get all versions (releases) for a Jira project
Inputs: projectKey (required).
jira_get_sprint_issuesB
Get all issues in a specific sprint
Inputs: sprintId (required), jql, startAt, maxResults.
jira_get_sprintsB
Get sprints for a Jira agile board
Inputs: boardId (required), state.
jira_get_subtasksC
Get all sub-tasks for a Jira issue
Inputs: issueKey (required).
jira_get_watchersB
Get all watchers for a Jira issue
Inputs: issueKey (required).
jira_get_worklogsA
Get all work logs (time tracking entries) for a Jira issue
Inputs: issueKey (required).
jira_link_to_epicA
Link an issue to an epic. Works with both next-gen (parent field) and classic (Epic Link field) projects.
Inputs: epicKey (required), issueKey (required).
jira_lookup_userA
Look up Jira users by name or email address. Returns account IDs needed for assignee, watcher, and other user fields.
Inputs: query (required).
jira_move_issues_to_sprintB
Move one or more issues to a sprint
Inputs: sprintId (required), issueKeys (required).
jira_remove_labelsB
Remove labels from a Jira issue
Inputs: labels (required), issueKey (required).
jira_remove_watcherB
Remove a watcher from a Jira issue
Inputs: issueKey (required), accountId (required).
jira_search_issuesA
Search Jira issues with flexible filtering. Use individual filters (assignee, status, project, labels) or provide raw JQL for advanced queries.
Inputs: jql, limit, query, fields, +7 more.
jira_transition_issueB
Transition a Jira issue to a different status with smart field handling
Inputs: issueKey (required), transitionId (required), fieldValues.
jira_transition_issue_interactiveA
Transition a Jira issue with automatic field suggestion and validation
Inputs: issueKey (required), transitionId (required), fieldValues.
jira_update_commentB
Update an existing comment on a Jira issue
Inputs: comment (required), issueKey (required), commentId (required).
jira_update_issueB
Update an existing Jira issue. Supports standard fields and custom fields (use jira_get_fields to discover field IDs).
Inputs: issueKey (required), summary, assignee, description, +1 more.
jira_update_sprintB
Update an existing sprint (name, dates, state, goal)
Inputs: sprintId (required), goal, name, state, +2 more.
jira_update_versionC
Update an existing version (release) in Jira
Inputs: versionId (required), name, archived, released, +3 more.
jira_update_worklogC
Update an existing work log entry
Inputs: issueKey (required), worklogId (required), comment, timeSpentSeconds.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 86 tools
All tools are clearly prefixed by product (confluence_, jira_, bitbucket_) and have distinct verb-noun pairs. Even closely related tools like jira_transition_issue and jira_transition_issue_interactive are differentiated by description. There is no ambiguity between tools.
All tool names follow a consistent pattern: product_verb_noun in snake_case. For example, confluence_get_page, jira_create_issue, bitbucket_get_pull_requests. No mixing of conventions.
86 tools is high, but the server covers three major products (Confluence, Jira, Bitbucket) each requiring many operations. Some tools like confluence_embed_image (not supported) are unnecessary. The count is borderline heavy but justifiable for the scope.
The tool surface is comprehensive for common workflows: CRUD for issues, pages, repos, comments, attachments, worklogs, etc. Minor gaps exist such as missing inline image embedding in Confluence and some advanced Jira features, but overall coverage is strong.
Maintenance
Related MCP Connectors
Connect to Atlassian Jira, Confluence, Loom, and more to search, create, and manage your work.
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Query your team's drift, vulnerability, and upgrade data from any AI assistant. OAuth 2.1, 51 tools.
Plan Salesforce deploys, open pull requests and trigger pipelines from your AI client.
Related MCP Servers
- AlicenseBqualityBmaintenanceEnables AI assistants to interact with Atlassian Cloud APIs for Confluence and Jira, supporting document management, search, issue tracking, and sprint operations through natural language.402MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with Jira Cloud issues, supporting create, read, update, delete, search, and transition operations via natural language.10 npmMIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to search, create, update, and transition Jira issues and Confluence pages, add comments, and manage Atlassian content across Cloud and Server/Data Center deployments.MIT
- AlicenseBqualityCmaintenanceEnables AI assistants to search and manage Confluence pages and Jira issues, including creating, updating, transitioning, and commenting, across Atlassian Cloud and Server/Data Center deployments.35MIT