Secure Jira and Confluence access for AI agents
Jira, Confluence, and other Atlassian products via the official MCP server
Through Atlassian, agents can search and read Jira issues and Confluence pages, and create or update them when your policies allow it – every call runs through your policies and is logged for audit. A single resource covers both products.
Server URL: https://mcp.atlassian.com/v1/mcp
Credential modes
Atlassian supports per-org dynamic registration only, so there is no app to create on Atlassian's side and no client ID or secret to enter. See Credential modes for how it compares with Use SecureAuth's app and Bring your own app.
Before you begin
- An Atlassian Cloud site with Jira, Confluence, or both.
- Administrator access to your Atlassian admin console at admin.atlassian.com, to allowlist the gateway origin on the Rovo MCP server config.
- Administrator access to your Agent Authority workspace, to add the resource.
Setup
- In the Agent Authority console, go to Resources and click Add Resource.
- Select Atlassian from the catalog.
- On Choose how to install Atlassian, click Per-org dynamic registration. Selecting it adds the resource right away with its tools and scopes pre-configured.
- Allowlist the gateway origin in Atlassian, as described in Dynamic client registration below. Without this step, user sign-in still succeeds but every tool call fails at runtime.
After you add the resource, an Admin setup required dialog appears. Its Setup guide button links to the section below.
Dynamic client registration
When you add the resource, the gateway registers its own OAuth client with Atlassian – the credential that lets it sign users in. The one piece of setup Atlassian requires is allowlisting the gateway origin on the Rovo MCP server config.
In your Atlassian admin console at admin.atlassian.com, go to Settings → Rovo → Rovo MCP server → Domains and add your gateway origin under Your domains:
https://oauth.aisecurity.services.<region>.connect.secureauth.com/**Replace <region> with your region (us, eu, or aus). The /** suffix authorizes any path under that origin.
Verify the connection
The gateway syncs the Atlassian tools automatically. To check the connection end to end, ask your agent to run a request:
List my Jira projectsIf your projects come back, the connection is working. If sign-in succeeded but tool calls fail, the gateway origin is most likely still missing from the Rovo MCP server allowlist.
How users connect
Access is per user. Each additional user connects their own Atlassian account the first time their agent calls an Atlassian tool: the gateway returns a sign-in link, the user authorizes once, and the tools work from then on. A single resource covers both Jira and Confluence. Go to Connections to manage linked accounts.
Available tools
Tool names are matched exactly by policy rules unless you use a wildcard, so copy them from here verbatim – and check the Available Tools card on the resource's Overview tab in the Agent Authority console for the authoritative list of what your install actually exposes.
| Tool | Description |
|---|---|
addCommentToJiraIssue | Add a comment to a Jira issue |
addWorklogToJiraIssue | Log work against a Jira issue |
atlassianUserInfo | Get information about the authenticated Atlassian user |
createConfluenceFooterComment | Create a footer comment on a Confluence page |
createConfluenceInlineComment | Create an inline comment on Confluence content |
createConfluencePage | Create a Confluence page |
createIssueLink | Create a link between two Jira issues |
createJiraIssue | Create a new Jira issue |
editJiraIssue | Edit fields on an existing Jira issue |
fetch | Fetch a Jira or Confluence resource by URL |
getAccessibleAtlassianResources | Get accessible Atlassian Cloud sites and their IDs |
getConfluenceCommentChildren | List child comments of a Confluence comment |
getConfluencePage | Get the full content of a Confluence page |
getConfluencePageDescendants | List descendant pages under a given parent page |
getConfluencePageFooterComments | List footer comments on a Confluence page |
getConfluencePageInlineComments | List inline comments on a Confluence page |
getConfluenceSpaces | List Confluence spaces |
getIssueLinkTypes | List available Jira issue link types |
getJiraIssue | Get a Jira issue by key or ID |
getJiraIssueRemoteIssueLinks | Get remote issue links on a Jira issue |
getJiraIssueTypeMetaWithFields | Get create-metadata fields for a Jira issue type |
getJiraProjectIssueTypesMetadata | Get issue types available in a Jira project |
getPagesInConfluenceSpace | List pages in a Confluence space |
getTransitionsForJiraIssue | List available transitions for a Jira issue |
getVisibleJiraProjects | List Jira projects visible to the authenticated user |
lookupJiraAccountId | Look up a Jira account ID by email or username |
search | Search across Jira and Confluence content |
searchConfluenceUsingCql | Search Confluence content using CQL |
searchJiraIssuesUsingJql | Search Jira issues using JQL |
transitionJiraIssue | Transition a Jira issue through its workflow |
updateConfluencePage | Update an existing Confluence page |
Required scopes
The gateway requests these scopes automatically when it registers the client, so there is nothing for you to configure. Atlassian decides what to grant, and any scopes it returns during registration replace the list below.
read:jira-work– read projects, issues, and commentswrite:jira-work– create and update issues, comments, and worklogsread:jira-user– read Jira user informationmanage:jira-project– manage project-level configurationmanage:jira-configuration– manage global Jira configurationread:confluence-content.all– read all Confluence content including pages and blog postsread:confluence-content.summary– read content summarieswrite:confluence-content– create and update Confluence contentread:confluence-space.summary– read space summaries and metadatawrite:confluence-space– modify space settingsread:confluence-user– read Confluence user informationread:confluence-groups– read Confluence group membershipread:confluence-props– read content propertieswrite:confluence-props– write content propertiessearch:confluence– search Confluence contentoffline_access– maintain access when the user is offline
Policy examples
Rules are evaluated top to bottom and the first match wins; a call that matches no rule is denied. New rules are created at the top of the list, so create the rule you want evaluated last first.
- Read-only access: allow
get*,search*,fetch,atlassianUserInfo,lookupJiraAccountId, then disable or delete your organization's seeded Allow all rule. The allow rule alone restricts nothing –createJiraIssue,editJiraIssue,transitionJiraIssue, and every other write tool keep matching Allow all. Removing it is org-wide, so add the allows everything else needs first; alternatively keep Allow all and use the deny recipe below. - Block writes: add deny rules for
create*,edit*,update*,transition*,addCommentToJiraIssue,addWorklogToJiraIssueabove any allow rules. - Allow full access for a specific agent: scope an allow rule for
*to agentclaude-codeon this MCP server. This grants – it does not restrict other agents, who fall through to whatever rule matches next.
Next steps
- Create a policy – start from the read-only pattern in Policy examples above.
- Give Claude read-only access to Jira – a worked policy for this exact resource.