diff --git a/src/assets/docs/agent-connectors/atlassianmcp/add-domain-modal.png b/src/assets/docs/agent-connectors/atlassianmcp/add-domain-modal.png
new file mode 100644
index 000000000..88f3bde62
Binary files /dev/null and b/src/assets/docs/agent-connectors/atlassianmcp/add-domain-modal.png differ
diff --git a/src/assets/docs/agent-connectors/atlassianmcp/add-domain-redirect-uri.png b/src/assets/docs/agent-connectors/atlassianmcp/add-domain-redirect-uri.png
new file mode 100644
index 000000000..181accd6d
Binary files /dev/null and b/src/assets/docs/agent-connectors/atlassianmcp/add-domain-redirect-uri.png differ
diff --git a/src/assets/docs/agent-connectors/atlassianmcp/copy-redirect-uri.png b/src/assets/docs/agent-connectors/atlassianmcp/copy-redirect-uri.png
new file mode 100644
index 000000000..be71af3a4
Binary files /dev/null and b/src/assets/docs/agent-connectors/atlassianmcp/copy-redirect-uri.png differ
diff --git a/src/components/templates/agent-connectors/_section-after-setup-atlassianmcp-common-workflows.mdx b/src/components/templates/agent-connectors/_section-after-setup-atlassianmcp-common-workflows.mdx
new file mode 100644
index 000000000..4deddef59
--- /dev/null
+++ b/src/components/templates/agent-connectors/_section-after-setup-atlassianmcp-common-workflows.mdx
@@ -0,0 +1,77 @@
+export const sectionTitle = 'Common workflows'
+
+import { Tabs, TabItem, Aside } from '@astrojs/starlight/components'
+
+### Get your cloud ID
+
+Most Atlassian Rovo MCP tools require a `cloudId` — the UUID that identifies your Atlassian cloud site. Call `atlassianmcp_getaccessibleatlassianresources` once to retrieve it, then pass the `id` field value in every subsequent tool call.
+
+
+
+
+
+ ```typescript
+ // Step 1 — get the cloud ID
+ const resources = await actions.executeTool({
+ connectionName: 'atlassianmcp',
+ identifier: 'user_123',
+ toolName: 'atlassianmcp_getaccessibleatlassianresources',
+ toolInput: {},
+ });
+ const cloudId = resources[0].id;
+
+ // Step 2 — use cloudId in subsequent calls
+ const issue = await actions.executeTool({
+ connectionName: 'atlassianmcp',
+ identifier: 'user_123',
+ toolName: 'atlassianmcp_getjiraissue',
+ toolInput: {
+ cloudId,
+ issueIdOrKey: 'KAN-1',
+ },
+ });
+ console.log(issue);
+ ```
+
+
+ ```python
+ # Step 1 — get the cloud ID
+ resources = actions.execute_tool(
+ connection_name="atlassianmcp",
+ identifier="user_123",
+ tool_name="atlassianmcp_getaccessibleatlassianresources",
+ tool_input={},
+ )
+ cloud_id = resources[0]["id"]
+
+ # Step 2 — use cloud_id in subsequent calls
+ issue = actions.execute_tool(
+ connection_name="atlassianmcp",
+ identifier="user_123",
+ tool_name="atlassianmcp_getjiraissue",
+ tool_input={
+ "cloudId": cloud_id,
+ "issueIdOrKey": "KAN-1",
+ },
+ )
+ print(issue)
+ ```
+
+
+
+The `atlassianmcp_getaccessibleatlassianresources` response looks like this:
+
+```json
+[
+ {
+ "id": "a4c9b3e2-1234-5678-abcd-ef0123456789",
+ "name": "My Company",
+ "url": "https://mycompany.atlassian.net",
+ "scopes": ["read:jira-work", "write:jira-work", "read:confluence-content.all"]
+ }
+]
+```
+
+Use `id` as the `cloudId` parameter. If the user belongs to multiple Atlassian sites, the list contains one entry per site — pick the one matching the target `url`.
diff --git a/src/components/templates/agent-connectors/_setup-atlassianmcp.mdx b/src/components/templates/agent-connectors/_setup-atlassianmcp.mdx
new file mode 100644
index 000000000..6bb3df3ab
--- /dev/null
+++ b/src/components/templates/agent-connectors/_setup-atlassianmcp.mdx
@@ -0,0 +1,35 @@
+import { Steps, Aside } from '@astrojs/starlight/components'
+
+Atlassian Rovo MCP uses Dynamic Client Registration (DCR) — no client ID or secret is needed. The only step is registering your Scalekit redirect URI as an allowed domain in Atlassian Administration.
+
+
+1. ### Copy the redirect URI from Scalekit
+
+ In the [Scalekit dashboard](https://app.scalekit.com), go to **AgentKit** > **Connections** > **Create Connection**. Find **Atlassian Rovo MCP** and click **Create**. Copy the redirect URI — it looks like `https:///sso/v1/oauth//callback`.
+
+ 
+
+2. ### Open the Rovo MCP server settings in Atlassian
+
+ - Go to [admin.atlassian.com](https://admin.atlassian.com) and select your organisation.
+ - In the left sidebar, expand **Rovo** and click **Rovo access**.
+ - Click **Rovo MCP server** in the submenu.
+ - Select the **Domains** tab at the top of the page.
+
+
+
+3. ### Add the redirect URI as a domain
+
+ - Under **Your domains**, click **Add domain**.
+
+ 
+
+ - In the **Add domain** dialog, paste the redirect URI from Scalekit into the **Domain** field.
+ - Accept the terms and click **Add**.
+
+ 
+
+ Once added, Scalekit automatically registers the OAuth client via DCR and handles token management for every user who authorizes the connection — no further configuration needed.
+
diff --git a/src/components/templates/agent-connectors/index.ts b/src/components/templates/agent-connectors/index.ts
index 20848f331..5ec9ebb05 100644
--- a/src/components/templates/agent-connectors/index.ts
+++ b/src/components/templates/agent-connectors/index.ts
@@ -3,6 +3,7 @@ export { default as SetupAirtableSection } from './_setup-airtable.mdx'
export { default as SetupApifymcpSection } from './_setup-apifymcp.mdx'
export { default as SetupApolloSection } from './_setup-apollo.mdx'
export { default as SetupAsanaSection } from './_setup-asana.mdx'
+export { default as SetupAtlassianmcpSection } from './_setup-atlassianmcp.mdx'
export { default as SetupAttioSection } from './_setup-attio.mdx'
export { default as SetupBigquerySection } from './_setup-bigquery.mdx'
export { default as SetupBigqueryserviceaccountSection } from './_setup-bigqueryserviceaccount.mdx'
@@ -72,6 +73,7 @@ export { default as ConnectedAccountBigqueryserviceaccountSection } from './_con
export { default as SectionAfterAuthenticationGoogledwdAuth } from './_section-after-authentication-googledwd-auth.mdx'
export { default as SectionAfterSetupAirtableCommonWorkflows } from './_section-after-setup-airtable-common-workflows.mdx'
export { default as SectionAfterSetupApifymcpCommonWorkflows } from './_section-after-setup-apifymcp-common-workflows.mdx'
+export { default as SectionAfterSetupAtlassianmcpCommonWorkflows } from './_section-after-setup-atlassianmcp-common-workflows.mdx'
export { default as SectionAfterSetupApolloCommonWorkflows } from './_section-after-setup-apollo-common-workflows.mdx'
export { default as SectionAfterSetupAsanaCommonWorkflows } from './_section-after-setup-asana-common-workflows.mdx'
export { default as SectionAfterSetupAttentionCommonWorkflows } from './_section-after-setup-attention-common-workflows.mdx'
@@ -103,8 +105,8 @@ export { default as SectionAfterSetupGoogleAdsCommonWorkflows } from './_section
export { default as SectionAfterSetupGooglecalendarCommonWorkflows } from './_section-after-setup-googlecalendar-common-workflows.mdx'
export { default as SectionAfterSetupGoogledocsCommonWorkflows } from './_section-after-setup-googledocs-common-workflows.mdx'
export { default as SectionAfterSetupGoogledriveCommonWorkflows } from './_section-after-setup-googledrive-common-workflows.mdx'
+export { default as SectionAfterSetupGoogledwdCommonWorkflows } from './_section-after-setup-googledwd-common-workflows.mdx'
export { default as SectionAfterSetupGoogledwdConnectedAccount } from './_section-after-setup-googledwd-connected-account.mdx'
-export { default as SectionBeforeToolListGoogledwdCommonWorkflows } from './_section-before-tool-list-googledwd-common-workflows.mdx'
export { default as SectionAfterSetupGoogleformsCommonWorkflows } from './_section-after-setup-googleforms-common-workflows.mdx'
export { default as SectionAfterSetupGooglemeetCommonWorkflows } from './_section-after-setup-googlemeet-common-workflows.mdx'
export { default as SectionAfterSetupGooglesheetsCommonWorkflows } from './_section-after-setup-googlesheets-common-workflows.mdx'
@@ -146,6 +148,7 @@ export { default as SectionAfterSetupZendeskCommonWorkflows } from './_section-a
export { default as SectionAfterSetupZoomCommonWorkflows } from './_section-after-setup-zoom-common-workflows.mdx'
export { default as SectionAfterToolListSalesforceMetadataApiSoap } from './_section-after-tool-list-salesforce-metadata-api-soap.mdx'
export { default as SectionBeforeToolListDatadogResourceIds } from './_section-before-tool-list-datadog-resource-ids.mdx'
+export { default as SectionBeforeToolListGoogledwdCommonWorkflows } from './_section-before-tool-list-googledwd-common-workflows.mdx'
export { default as SectionBeforeToolListHubspotResourceIds } from './_section-before-tool-list-hubspot-resource-ids.mdx'
export { default as SectionBeforeToolListLinearResourceIds } from './_section-before-tool-list-linear-resource-ids.mdx'
export { default as SectionBeforeToolListMondayResourceIds } from './_section-before-tool-list-monday-resource-ids.mdx'
diff --git a/src/content/docs/agentkit/connectors/atlassianmcp.mdx b/src/content/docs/agentkit/connectors/atlassianmcp.mdx
new file mode 100644
index 000000000..925d3873b
--- /dev/null
+++ b/src/content/docs/agentkit/connectors/atlassianmcp.mdx
@@ -0,0 +1,90 @@
+---
+title: 'Atlassian Rovo MCP connector'
+tableOfContents: true
+description: 'Connect to Atlassian Rovo MCP server to manage Jira issues, Confluence pages, and Compass components directly from your AI workflows.'
+sidebar:
+ label: 'Atlassian Rovo MCP'
+overviewTitle: 'Quickstart'
+connectorIcon: https://cdn.scalekit.com/sk-connect/assets/provider-icons/atlassian.svg
+connectorAuthType: OAuth 2.0
+connectorCategories: [project_management, productivity]
+tags: [agentkit, connector, atlassian, jira, confluence, compass, project-management, mcp]
+head:
+ - tag: style
+ content: |
+ .sl-markdown-content h2 {
+ font-size: var(--sl-text-xl);
+ }
+ .sl-markdown-content h3 {
+ font-size: var(--sl-text-lg);
+ }
+---
+
+import ToolList from '@/components/ToolList.astro'
+import { tools } from '@/data/agent-connectors/atlassianmcp'
+import { Steps, Tabs, TabItem } from '@astrojs/starlight/components'
+import { AgentKitCredentials } from '@components/templates'
+import { SetupAtlassianmcpSection } from '@components/templates'
+import { QuickstartGenericOauthSection } from '@components/templates'
+import { SectionAfterSetupAtlassianmcpCommonWorkflows } from '@components/templates'
+
+
+
+1. ### Install the SDK
+
+
+
+ ```bash frame="terminal"
+ npm install @scalekit-sdk/node
+ ```
+
+
+ ```bash frame="terminal"
+ pip install scalekit
+ ```
+
+
+
+ Full SDK reference: [Node.js](/agentkit/sdks/node/) | [Python](/agentkit/sdks/python/)
+
+2. ### Set your credentials
+
+
+
+3. ### Set up the connector
+
+ Register your Atlassian Rovo MCP credentials with Scalekit so it handles the token lifecycle. You do this once per environment.
+
+
+ Dashboard setup steps
+
+
+
+
+
+4. ### Authorize and make your first call
+
+
+
+
+
+## What you can do
+
+Connect this agent connector to let your agent:
+
+- **Manage Jira issues** — create, edit, transition, comment on, and link issues; add worklogs
+- **Search with JQL** — query issues using Jira Query Language with full field and filter support
+- **Work with Confluence** — create, update, and retrieve pages; add footer and inline comments
+- **Manage Compass components** — create, get, and search services, libraries, and applications; define custom fields and relationships
+- **Look up users and resources** — resolve Atlassian account IDs, list accessible cloud sites, and find project metadata
+- **Fetch Atlassian content** — retrieve any Atlassian object by its ARI or URL (e.g. a Jira issue or Confluence page URL)
+
+## Common workflows
+
+
+
+## Tool list
+
+Use the exact tool names from the **Tool list** below when you call `execute_tool`. If you're not sure which name to use, list the tools available for the current user first.
+
+
diff --git a/src/data/agent-connectors/atlassianmcp.ts b/src/data/agent-connectors/atlassianmcp.ts
new file mode 100644
index 000000000..60c30c341
--- /dev/null
+++ b/src/data/agent-connectors/atlassianmcp.ts
@@ -0,0 +1,1570 @@
+import type { Tool } from '../../types/agent-connectors'
+
+export const tools: Tool[] = [
+ {
+ name: 'atlassianmcp_addcommenttojiraissue',
+ description: `Add a comment to an existing Jira issue.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'commentBody',
+ type: 'string',
+ required: true,
+ description: `The text content of the comment to add.`,
+ },
+ {
+ name: 'issueIdOrKey',
+ type: 'string',
+ required: true,
+ description: `The Jira issue ID (e.g. 10001) or key (e.g. KAN-1).`,
+ },
+ {
+ name: 'commentVisibility',
+ type: 'object',
+ required: false,
+ description: `Restrict comment visibility as JSON (e.g. {"type": "role", "value": "Dev Team"}).`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'responseContentFormat',
+ type: 'string',
+ required: false,
+ description: `Format to return content in — markdown (default) or adf.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_addworklogtojiraissue',
+ description: `Log time spent on a Jira issue by adding a worklog entry.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'issueIdOrKey',
+ type: 'string',
+ required: true,
+ description: `The Jira issue ID (e.g. 10001) or key (e.g. KAN-1).`,
+ },
+ {
+ name: 'timeSpent',
+ type: 'string',
+ required: true,
+ description: `Time spent on the issue, in Jira duration format (e.g. 1h, 2h 30m, 1d).`,
+ },
+ {
+ name: 'commentBody',
+ type: 'string',
+ required: false,
+ description: `The text content of the comment to add.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'started',
+ type: 'string',
+ required: false,
+ description: `The date and time the work started, in ISO 8601 format (e.g. 2026-05-15T10:00:00.000+0000).`,
+ },
+ {
+ name: 'visibility',
+ type: 'object',
+ required: false,
+ description: `Restrict worklog visibility as JSON (e.g. {"type": "role", "value": "Dev Team"}).`,
+ },
+ {
+ name: 'worklogId',
+ type: 'string',
+ required: false,
+ description: `The ID of an existing worklog entry to update.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_atlassianuserinfo',
+ description: `Retrieve the profile information for the currently authenticated Atlassian user.`,
+ params: [],
+ },
+ {
+ name: 'atlassianmcp_createcompasscomponent',
+ description: `Create a new component in Atlassian Compass (e.g. a service, library, or application).`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'name',
+ type: 'string',
+ required: true,
+ description: `Name of the Compass component.`,
+ },
+ {
+ name: 'typeId',
+ type: 'string',
+ required: true,
+ description: `Type ID of the Compass component (e.g. SERVICE, LIBRARY, APPLICATION).`,
+ },
+ {
+ name: 'description',
+ type: 'string',
+ required: false,
+ description: `A human-readable description of this Compass component.`,
+ },
+ {
+ name: 'labels',
+ type: 'array',
+ required: false,
+ description: `Labels to attach to this Compass component.`,
+ },
+ {
+ name: 'ownerId',
+ type: 'string',
+ required: false,
+ description: `Atlassian account ID of the component owner.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_createcompasscomponentrelationship',
+ description: `Create a dependency or relationship between two Compass components.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'fromComponentId',
+ type: 'string',
+ required: true,
+ description: `The ID of the source Compass component in the relationship.`,
+ },
+ {
+ name: 'relationshipType',
+ type: 'string',
+ required: true,
+ description: `The type of relationship between components (e.g. DEPENDS_ON).`,
+ },
+ {
+ name: 'toComponentId',
+ type: 'string',
+ required: true,
+ description: `The ID of the target Compass component in the relationship.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_createcompasscustomfielddefinition',
+ description: `Define a new custom field for Compass components in your workspace.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'input',
+ type: 'object',
+ required: true,
+ description: `Custom field definition as JSON (fields: name, type, description).`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_createconfluencefootercomment',
+ description: `Add a footer comment to a Confluence page, blog post, or other content.`,
+ params: [
+ {
+ name: 'body',
+ type: 'string',
+ required: true,
+ description: `The body content of the Confluence page or comment, in the format specified by contentFormat.`,
+ },
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'attachmentId',
+ type: 'string',
+ required: false,
+ description: `The ID of the attachment to comment on.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'contentType',
+ type: 'string',
+ required: false,
+ description: `Type of Confluence content: page, blogpost, or custom.`,
+ },
+ {
+ name: 'customContentId',
+ type: 'string',
+ required: false,
+ description: `The ID of the custom content to comment on.`,
+ },
+ {
+ name: 'pageId',
+ type: 'string',
+ required: false,
+ description: `The numeric ID of the Confluence page. Use getConfluenceSpaces or search to find page IDs.`,
+ },
+ {
+ name: 'parentCommentId',
+ type: 'string',
+ required: false,
+ description: `Optional ID of the parent comment, for creating a reply.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_createconfluenceinlinecomment',
+ description: `Add an inline comment anchored to selected text on a Confluence page.`,
+ params: [
+ {
+ name: 'body',
+ type: 'string',
+ required: true,
+ description: `The body content of the Confluence page or comment, in the format specified by contentFormat.`,
+ },
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'contentType',
+ type: 'string',
+ required: false,
+ description: `Type of Confluence content: page, blogpost, or custom.`,
+ },
+ {
+ name: 'inlineCommentProperties',
+ type: 'object',
+ required: false,
+ description: `Inline comment anchor as JSON: {"textSelection": "", "textSelectionMatchCount": N, "textSelectionMatchIndex": N}.`,
+ },
+ {
+ name: 'pageId',
+ type: 'string',
+ required: false,
+ description: `The numeric ID of the Confluence page. Use getConfluenceSpaces or search to find page IDs.`,
+ },
+ {
+ name: 'parentCommentId',
+ type: 'string',
+ required: false,
+ description: `Optional ID of the parent comment, for creating a reply.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_createconfluencepage',
+ description: `Create a new Confluence page in a space, optionally nested under a parent page.`,
+ params: [
+ {
+ name: 'body',
+ type: 'string',
+ required: true,
+ description: `The body content of the Confluence page or comment, in the format specified by contentFormat.`,
+ },
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'spaceId',
+ type: 'string',
+ required: true,
+ description: `The numeric ID of the Confluence space. Use getConfluenceSpaces to list available spaces.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'contentType',
+ type: 'string',
+ required: false,
+ description: `Type of Confluence content: page, blogpost, or custom.`,
+ },
+ {
+ name: 'isPrivate',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to create the page as private (only visible to the creator).`,
+ },
+ {
+ name: 'parentId',
+ type: 'string',
+ required: false,
+ description: `The ID of the parent page under which to create or move this page.`,
+ },
+ {
+ name: 'status',
+ type: 'string',
+ required: false,
+ description: `Filter by content status (e.g. current, archived, trashed).`,
+ },
+ {
+ name: 'subtype',
+ type: 'string',
+ required: false,
+ description: `Confluence page subtype (e.g. live for live pages).`,
+ },
+ {
+ name: 'title',
+ type: 'string',
+ required: false,
+ description: `The title of the Confluence page.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_createissuelink',
+ description: `Link two Jira issues together with a relationship type (e.g. Relates, Blocks, Duplicate).`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'inwardIssue',
+ type: 'string',
+ required: true,
+ description: `The key of the inward issue in the link (e.g. KAN-1).`,
+ },
+ {
+ name: 'outwardIssue',
+ type: 'string',
+ required: true,
+ description: `The key of the outward issue in the link (e.g. KAN-2).`,
+ },
+ {
+ name: 'type',
+ type: 'string',
+ required: true,
+ description: `Space type filter (e.g. global or personal).`,
+ },
+ {
+ name: 'comment',
+ type: 'string',
+ required: false,
+ description: `An optional comment to attach to the issue link.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_createjiraissue',
+ description: `Create a new Jira issue in a project with the specified summary, type, and optional fields.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'issueTypeName',
+ type: 'string',
+ required: true,
+ description: `The name of the Jira issue type (e.g. Task, Story, Bug, Epic).`,
+ },
+ {
+ name: 'projectKey',
+ type: 'string',
+ required: true,
+ description: `The Jira project key (e.g. KAN). Use getVisibleJiraProjects to list available projects.`,
+ },
+ {
+ name: 'summary',
+ type: 'string',
+ required: true,
+ description: `A short summary of the Jira issue (the issue title).`,
+ },
+ {
+ name: 'additional_fields',
+ type: 'object',
+ required: false,
+ description: `Additional Jira fields to set on creation, as a JSON object (e.g. priority, labels).`,
+ },
+ {
+ name: 'assignee_account_id',
+ type: 'string',
+ required: false,
+ description: `Atlassian account ID of the user to assign. Use lookupJiraAccountId to find account IDs.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'description',
+ type: 'string',
+ required: false,
+ description: `The full description of the Jira issue.`,
+ },
+ {
+ name: 'parent',
+ type: 'string',
+ required: false,
+ description: `The parent issue key (e.g. KAN-1) for creating subtasks or child issues.`,
+ },
+ {
+ name: 'responseContentFormat',
+ type: 'string',
+ required: false,
+ description: `Format to return content in — markdown (default) or adf.`,
+ },
+ {
+ name: 'transition',
+ type: 'object',
+ required: false,
+ description: `The transition to perform, as JSON: {"id": ""}. Use getTransitionsForJiraIssue to list valid transitions.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_editjiraissue',
+ description: `Update fields on an existing Jira issue, such as summary, priority, or description.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'fields',
+ type: 'object',
+ required: true,
+ description: `Fields to update as a JSON object, e.g. {"summary": "New title", "priority": {"name": "High"}}.`,
+ },
+ {
+ name: 'issueIdOrKey',
+ type: 'string',
+ required: true,
+ description: `The Jira issue ID (e.g. 10001) or key (e.g. KAN-1).`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'responseContentFormat',
+ type: 'string',
+ required: false,
+ description: `Format to return content in — markdown (default) or adf.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_fetch',
+ description: `Fetch details about any Atlassian object by its ARI (Atlassian Resource Identifier) or URL.`,
+ params: [
+ {
+ name: 'id',
+ type: 'string',
+ required: true,
+ description: `An ARI or URL identifying the object (e.g. ari:cloud:jira:...:issue/10059 or https://site.atlassian.net/browse/KAN-1).`,
+ },
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: false,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getaccessibleatlassianresources',
+ description: `List all Atlassian cloud sites accessible to the authenticated user, including their cloud IDs.`,
+ params: [],
+ },
+ {
+ name: 'atlassianmcp_getcompasscomponent',
+ description: `Retrieve details of a specific Compass component by its ID.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'componentId',
+ type: 'string',
+ required: true,
+ description: `The ID of the component to get`,
+ },
+ {
+ name: 'includeCustomFieldsInResponse',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to include custom field values in the component response.`,
+ },
+ {
+ name: 'includeRelatedComponentsAndDependenciesInResponse',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to include related components and dependencies.`,
+ },
+ {
+ name: 'includeRelatedLinksInResponse',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to include related links in the component response.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getcompasscomponents',
+ description: `Search and list Compass components in a workspace, with optional filters.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'after',
+ type: 'string',
+ required: false,
+ description: `Cursor for fetching the next page of results.`,
+ },
+ {
+ name: 'filters',
+ type: 'object',
+ required: false,
+ description: `Filter criteria for Compass components as JSON (e.g. {"typeIds": ["SERVICE"]}).`,
+ },
+ {
+ name: 'maxResults',
+ type: 'number',
+ required: false,
+ description: `Maximum number of results to return per page.`,
+ },
+ {
+ name: 'query',
+ type: 'string',
+ required: false,
+ description: `Search query to find Atlassian content across Jira and Confluence.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getcompasscustomfielddefinitions',
+ description: `List all custom field definitions configured in a Compass workspace.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getconfluencecommentchildren',
+ description: `Retrieve replies to a specific Confluence comment.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'commentId',
+ type: 'string',
+ required: true,
+ description: `The ID of the Confluence comment to retrieve children for.`,
+ },
+ {
+ name: 'commentType',
+ type: 'string',
+ required: true,
+ description: `Type of comment to retrieve children for: footer or inline.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'cursor',
+ type: 'string',
+ required: false,
+ description: `Cursor string for paginating through results.`,
+ },
+ {
+ name: 'limit',
+ type: 'number',
+ required: false,
+ description: `Maximum number of items to return.`,
+ },
+ {
+ name: 'sort',
+ type: 'string',
+ required: false,
+ description: `Sort order for results (e.g. created-date, -modified, title).`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getconfluencepage',
+ description: `Retrieve the content and metadata of a specific Confluence page by its ID.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'pageId',
+ type: 'string',
+ required: true,
+ description: `The numeric ID of the Confluence page. Use getConfluenceSpaces or search to find page IDs.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'contentType',
+ type: 'string',
+ required: false,
+ description: `Type of Confluence content: page, blogpost, or custom.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getconfluencepagedescendants',
+ description: `List all pages nested under a Confluence page, up to a specified depth.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'pageId',
+ type: 'string',
+ required: true,
+ description: `The numeric ID of the Confluence page. Use getConfluenceSpaces or search to find page IDs.`,
+ },
+ {
+ name: 'cursor',
+ type: 'string',
+ required: false,
+ description: `Cursor string for paginating through results.`,
+ },
+ {
+ name: 'depth',
+ type: 'number',
+ required: false,
+ description: `How deep to fetch descendants — all for the full tree or 1 for direct children only.`,
+ },
+ {
+ name: 'limit',
+ type: 'number',
+ required: false,
+ description: `Maximum number of items to return.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getconfluencepagefootercomments',
+ description: `List footer comments on a Confluence page, optionally including replies.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'pageId',
+ type: 'string',
+ required: true,
+ description: `The numeric ID of the Confluence page. Use getConfluenceSpaces or search to find page IDs.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'contentType',
+ type: 'string',
+ required: false,
+ description: `Type of Confluence content: page, blogpost, or custom.`,
+ },
+ {
+ name: 'cursor',
+ type: 'string',
+ required: false,
+ description: `Cursor string for paginating through results.`,
+ },
+ {
+ name: 'includeReplies',
+ type: 'boolean',
+ required: false,
+ description: `Whether to include comment replies in the response (true or false).`,
+ },
+ {
+ name: 'limit',
+ type: 'number',
+ required: false,
+ description: `Maximum number of items to return.`,
+ },
+ {
+ name: 'repliesPerComment',
+ type: 'integer',
+ required: false,
+ description: `Maximum number of replies to include per comment.`,
+ },
+ {
+ name: 'sort',
+ type: 'string',
+ required: false,
+ description: `Sort order for results (e.g. created-date, -modified, title).`,
+ },
+ {
+ name: 'status',
+ type: 'string',
+ required: false,
+ description: `Filter by content status (e.g. current, archived, trashed).`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getconfluencepageinlinecomments',
+ description: `List inline comments on a Confluence page, optionally filtered by resolution status.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'pageId',
+ type: 'string',
+ required: true,
+ description: `The numeric ID of the Confluence page. Use getConfluenceSpaces or search to find page IDs.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'contentType',
+ type: 'string',
+ required: false,
+ description: `Type of Confluence content: page, blogpost, or custom.`,
+ },
+ {
+ name: 'cursor',
+ type: 'string',
+ required: false,
+ description: `Cursor string for paginating through results.`,
+ },
+ {
+ name: 'includeReplies',
+ type: 'boolean',
+ required: false,
+ description: `Whether to include comment replies in the response (true or false).`,
+ },
+ {
+ name: 'limit',
+ type: 'number',
+ required: false,
+ description: `Maximum number of items to return.`,
+ },
+ {
+ name: 'repliesPerComment',
+ type: 'integer',
+ required: false,
+ description: `Maximum number of replies to include per comment.`,
+ },
+ {
+ name: 'resolutionStatus',
+ type: 'string',
+ required: false,
+ description: `Filter inline comments by resolution status (open or resolved).`,
+ },
+ {
+ name: 'sort',
+ type: 'string',
+ required: false,
+ description: `Sort order for results (e.g. created-date, -modified, title).`,
+ },
+ {
+ name: 'status',
+ type: 'string',
+ required: false,
+ description: `Filter by content status (e.g. current, archived, trashed).`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getconfluencespaces',
+ description: `List Confluence spaces accessible to the authenticated user, with optional filters.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'expand',
+ type: 'string',
+ required: false,
+ description: `Comma-separated list of fields to expand in the response.`,
+ },
+ {
+ name: 'favoritedBy',
+ type: 'string',
+ required: false,
+ description: `Return spaces favourited by this user account ID.`,
+ },
+ {
+ name: 'favourite',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to return only spaces marked as favourite.`,
+ },
+ {
+ name: 'ids',
+ type: 'string',
+ required: false,
+ description: `List of space IDs to filter by.`,
+ },
+ {
+ name: 'keys',
+ type: 'string',
+ required: false,
+ description: `List of space keys to filter by.`,
+ },
+ {
+ name: 'labels',
+ type: 'array',
+ required: false,
+ description: `List of space labels to filter by.`,
+ },
+ {
+ name: 'limit',
+ type: 'number',
+ required: false,
+ description: `Maximum number of items to return.`,
+ },
+ {
+ name: 'start',
+ type: 'number',
+ required: false,
+ description: `Index of the first result for pagination (defaults to 0).`,
+ },
+ {
+ name: 'status',
+ type: 'string',
+ required: false,
+ description: `Filter by content status (e.g. current, archived, trashed).`,
+ },
+ {
+ name: 'type',
+ type: 'string',
+ required: false,
+ description: `Space type filter (e.g. global or personal).`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getissuelinktypes',
+ description: `List all available issue link types in a Jira instance (e.g. Blocks, Relates, Duplicate).`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getjiraissue',
+ description: `Retrieve the details of a specific Jira issue by its ID or key.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'issueIdOrKey',
+ type: 'string',
+ required: true,
+ description: `The Jira issue ID (e.g. 10001) or key (e.g. KAN-1).`,
+ },
+ {
+ name: 'expand',
+ type: 'string',
+ required: false,
+ description: `Comma-separated list of fields to expand in the response.`,
+ },
+ {
+ name: 'failFast',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to fail fast if any fields cannot be found.`,
+ },
+ {
+ name: 'fields',
+ type: 'array',
+ required: false,
+ description: `Fields to update as a JSON object, e.g. {"summary": "New title", "priority": {"name": "High"}}.`,
+ },
+ {
+ name: 'fieldsByKeys',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to reference custom fields by their keys instead of IDs.`,
+ },
+ {
+ name: 'properties',
+ type: 'array',
+ required: false,
+ description: `List of issue properties to include in the response.`,
+ },
+ {
+ name: 'responseContentFormat',
+ type: 'string',
+ required: false,
+ description: `Format to return content in — markdown (default) or adf.`,
+ },
+ {
+ name: 'updateHistory',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to record that the issue was viewed in the user's history.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getjiraissueremoteissuelinks',
+ description: `List remote links (external resources) attached to a Jira issue.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'issueIdOrKey',
+ type: 'string',
+ required: true,
+ description: `The Jira issue ID (e.g. 10001) or key (e.g. KAN-1).`,
+ },
+ {
+ name: 'globalId',
+ type: 'string',
+ required: false,
+ description: `Optional global ID to filter remote issue links.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getjiraissuetypemetawithfields',
+ description: `Retrieve field metadata for a specific Jira issue type in a project.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'issueTypeId',
+ type: 'string',
+ required: true,
+ description: `The ID of the Jira issue type. Use getJiraProjectIssueTypesMetadata to list available types.`,
+ },
+ {
+ name: 'projectIdOrKey',
+ type: 'string',
+ required: true,
+ description: `The Jira project ID or key (e.g. KAN or 10000). Use getVisibleJiraProjects to find it.`,
+ },
+ {
+ name: 'maxResults',
+ type: 'number',
+ required: false,
+ description: `Maximum number of results to return per page.`,
+ },
+ {
+ name: 'startAt',
+ type: 'number',
+ required: false,
+ description: `Index of the first result to return (for pagination, defaults to 0).`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getjiraprojectissuetypesmetadata',
+ description: `List all issue types and their field metadata for a Jira project.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'projectIdOrKey',
+ type: 'string',
+ required: true,
+ description: `The Jira project ID or key (e.g. KAN or 10000). Use getVisibleJiraProjects to find it.`,
+ },
+ {
+ name: 'maxResults',
+ type: 'number',
+ required: false,
+ description: `Maximum number of results to return per page.`,
+ },
+ {
+ name: 'startAt',
+ type: 'number',
+ required: false,
+ description: `Index of the first result to return (for pagination, defaults to 0).`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getpagesinconfluencespace',
+ description: `List all pages in a Confluence space, optionally filtered by title or status.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'spaceId',
+ type: 'string',
+ required: true,
+ description: `The numeric ID of the Confluence space. Use getConfluenceSpaces to list available spaces.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'contentType',
+ type: 'string',
+ required: false,
+ description: `Type of Confluence content: page, blogpost, or custom.`,
+ },
+ {
+ name: 'cursor',
+ type: 'string',
+ required: false,
+ description: `Cursor string for paginating through results.`,
+ },
+ {
+ name: 'limit',
+ type: 'number',
+ required: false,
+ description: `Maximum number of items to return.`,
+ },
+ {
+ name: 'sort',
+ type: 'string',
+ required: false,
+ description: `Sort order for results (e.g. created-date, -modified, title).`,
+ },
+ {
+ name: 'status',
+ type: 'string',
+ required: false,
+ description: `Filter by content status (e.g. current, archived, trashed).`,
+ },
+ {
+ name: 'title',
+ type: 'string',
+ required: false,
+ description: `The title of the Confluence page.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getteamworkgraphcontext',
+ description: `Retrieve the teamwork graph context for an Atlassian object, showing related work across Jira, Confluence, and Compass.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'objectIdentifier',
+ type: 'string',
+ required: true,
+ description: `Identifier for the object — an issue key (e.g. KAN-4), ARI, or URL.`,
+ },
+ {
+ name: 'objectType',
+ type: 'string',
+ required: true,
+ description: `Type of the Atlassian object (e.g. JiraWorkItem, ConfluencePage, ConfluenceSpace, AtlassianUser, CompassComponent).`,
+ },
+ {
+ name: 'after',
+ type: 'string',
+ required: false,
+ description: `Cursor for fetching the next page of results.`,
+ },
+ {
+ name: 'detailLevel',
+ type: 'string',
+ required: false,
+ description: `Level of detail to return for related objects (FULL or MINIMAL).`,
+ },
+ {
+ name: 'first',
+ type: 'integer',
+ required: false,
+ description: `Number of items to return in this page.`,
+ },
+ {
+ name: 'relationshipTypes',
+ type: 'array',
+ required: false,
+ description: `Filter by specific relationship types (e.g. DEPENDS_ON, BLOCKED_BY).`,
+ },
+ {
+ name: 'targetObjectTypes',
+ type: 'array',
+ required: false,
+ description: `Filter related objects by type (e.g. JiraWorkItem, ConfluencePage).`,
+ },
+ {
+ name: 'timeRange',
+ type: 'object',
+ required: false,
+ description: `Optional time range filter as JSON: {"from": "", "to": ""}.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getteamworkgraphobject',
+ description: `Hydrate one or more Atlassian objects from their URLs or ARIs to get their current state.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'objects',
+ type: 'array',
+ required: true,
+ description: `List of object URLs or ARIs to hydrate (e.g. https://site.atlassian.net/browse/KAN-1).`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_gettransitionsforjiraissue',
+ description: `List all available workflow transitions for a Jira issue, used before calling transitionJiraIssue.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'issueIdOrKey',
+ type: 'string',
+ required: true,
+ description: `The Jira issue ID (e.g. 10001) or key (e.g. KAN-1).`,
+ },
+ {
+ name: 'expand',
+ type: 'string',
+ required: false,
+ description: `Comma-separated list of fields to expand in the response.`,
+ },
+ {
+ name: 'includeUnavailableTransitions',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to include transitions that are not currently available.`,
+ },
+ {
+ name: 'skipRemoteOnlyCondition',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to skip conditions that only apply to remote calls.`,
+ },
+ {
+ name: 'sortByOpsBarAndStatus',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to sort transitions by the ops bar and status.`,
+ },
+ {
+ name: 'transitionId',
+ type: 'string',
+ required: false,
+ description: `The ID of a specific transition to retrieve. Use getTransitionsForJiraIssue to list transitions.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_getvisiblejiraprojects',
+ description: `List Jira projects visible to the authenticated user, with optional search filtering.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'action',
+ type: 'string',
+ required: false,
+ description: `The action to filter projects by (e.g. browse, create).`,
+ },
+ {
+ name: 'expandIssueTypes',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to include issue type details in the project list response.`,
+ },
+ {
+ name: 'maxResults',
+ type: 'number',
+ required: false,
+ description: `Maximum number of results to return per page.`,
+ },
+ {
+ name: 'searchString',
+ type: 'string',
+ required: false,
+ description: `Text to search for when looking up Jira users.`,
+ },
+ {
+ name: 'startAt',
+ type: 'number',
+ required: false,
+ description: `Index of the first result to return (for pagination, defaults to 0).`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_lookupjiraaccountid',
+ description: `Search for Atlassian user accounts by name or email to find their account IDs.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'searchString',
+ type: 'string',
+ required: true,
+ description: `Text to search for when looking up Jira users.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_search',
+ description: `Search across all Atlassian products (Jira and Confluence) using a keyword query.`,
+ params: [
+ {
+ name: 'query',
+ type: 'string',
+ required: true,
+ description: `Search query to find Atlassian content across Jira and Confluence.`,
+ },
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: false,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_searchconfluenceusingcql',
+ description: `Search Confluence content using Confluence Query Language (CQL).`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'cql',
+ type: 'string',
+ required: true,
+ description: `Confluence Query Language string (e.g. type = page AND space = SD AND title ~ "meeting").`,
+ },
+ {
+ name: 'cqlcontext',
+ type: 'string',
+ required: false,
+ description: `Optional JSON object to restrict CQL scope (e.g. {"spaceKey": "SD"}).`,
+ },
+ {
+ name: 'cursor',
+ type: 'string',
+ required: false,
+ description: `Cursor string for paginating through results.`,
+ },
+ {
+ name: 'expand',
+ type: 'string',
+ required: false,
+ description: `Comma-separated list of fields to expand in the response.`,
+ },
+ {
+ name: 'limit',
+ type: 'number',
+ required: false,
+ description: `Maximum number of items to return.`,
+ },
+ { name: 'next', type: 'boolean', required: false, description: `Include next page link` },
+ { name: 'prev', type: 'boolean', required: false, description: `Include previous page link` },
+ ],
+ },
+ {
+ name: 'atlassianmcp_searchjiraissuesusingjql',
+ description: `Search for Jira issues using Jira Query Language (JQL).`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'jql',
+ type: 'string',
+ required: true,
+ description: `Jira Query Language string to filter issues (e.g. project = KAN AND status = "In Progress").`,
+ },
+ {
+ name: 'fields',
+ type: 'array',
+ required: false,
+ description: `Fields to update as a JSON object, e.g. {"summary": "New title", "priority": {"name": "High"}}.`,
+ },
+ {
+ name: 'maxResults',
+ type: 'number',
+ required: false,
+ description: `Maximum number of results to return per page.`,
+ },
+ {
+ name: 'nextPageToken',
+ type: 'string',
+ required: false,
+ description: `Token for fetching the next page of results.`,
+ },
+ {
+ name: 'responseContentFormat',
+ type: 'string',
+ required: false,
+ description: `Format to return content in — markdown (default) or adf.`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_transitionjiraissue',
+ description: `Move a Jira issue to a new workflow status using a transition ID.`,
+ params: [
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'issueIdOrKey',
+ type: 'string',
+ required: true,
+ description: `The Jira issue ID (e.g. 10001) or key (e.g. KAN-1).`,
+ },
+ {
+ name: 'transition',
+ type: 'object',
+ required: true,
+ description: `The transition to perform, as JSON: {"id": ""}. Use getTransitionsForJiraIssue to list valid transitions.`,
+ },
+ {
+ name: 'fields',
+ type: 'object',
+ required: false,
+ description: `Fields to update as a JSON object, e.g. {"summary": "New title", "priority": {"name": "High"}}.`,
+ },
+ {
+ name: 'historyMetadata',
+ type: 'object',
+ required: false,
+ description: `Optional metadata to record in the issue history (e.g. {"activityDescription": "Updated via API"}).`,
+ },
+ {
+ name: 'update',
+ type: 'object',
+ required: false,
+ description: `Issue update operations as a JSON object (e.g. adding comment).`,
+ },
+ ],
+ },
+ {
+ name: 'atlassianmcp_updateconfluencepage',
+ description: `Update the title, body, or other properties of an existing Confluence page.`,
+ params: [
+ {
+ name: 'body',
+ type: 'string',
+ required: true,
+ description: `The body content of the Confluence page or comment, in the format specified by contentFormat.`,
+ },
+ {
+ name: 'cloudId',
+ type: 'string',
+ required: true,
+ description: `The cloud site ID (UUID) of your Atlassian instance. Use getAccessibleAtlassianResources to retrieve it.`,
+ },
+ {
+ name: 'pageId',
+ type: 'string',
+ required: true,
+ description: `The numeric ID of the Confluence page. Use getConfluenceSpaces or search to find page IDs.`,
+ },
+ {
+ name: 'contentFormat',
+ type: 'string',
+ required: false,
+ description: `Format of the content body — use markdown for plain text or adf for Atlassian Document Format (JSON).`,
+ },
+ {
+ name: 'contentType',
+ type: 'string',
+ required: false,
+ description: `Type of Confluence content: page, blogpost, or custom.`,
+ },
+ {
+ name: 'includeBody',
+ type: 'boolean',
+ required: false,
+ description: `Set to true to include the page body in the update response.`,
+ },
+ {
+ name: 'parentId',
+ type: 'string',
+ required: false,
+ description: `The ID of the parent page under which to create or move this page.`,
+ },
+ {
+ name: 'spaceId',
+ type: 'string',
+ required: false,
+ description: `The numeric ID of the Confluence space. Use getConfluenceSpaces to list available spaces.`,
+ },
+ {
+ name: 'status',
+ type: 'string',
+ required: false,
+ description: `Filter by content status (e.g. current, archived, trashed).`,
+ },
+ {
+ name: 'title',
+ type: 'string',
+ required: false,
+ description: `The title of the Confluence page.`,
+ },
+ {
+ name: 'versionMessage',
+ type: 'string',
+ required: false,
+ description: `Optional message describing what changed in this version of the page.`,
+ },
+ ],
+ },
+]
diff --git a/src/data/agent-connectors/capabilities.json b/src/data/agent-connectors/capabilities.json
index ae2f26a76..fa69f6845 100644
--- a/src/data/agent-connectors/capabilities.json
+++ b/src/data/agent-connectors/capabilities.json
@@ -1,5 +1,13 @@
{
"_comment": "Hand-curated 'What you can do' bullets per connector. Key = provider slug (matches src/data/agent-connectors/.ts). The sync script uses these instead of auto-generating from tool names. Add up to 6 bullets per connector. Omit a connector to fall back to auto-generation.",
+ "atlassianmcp": [
+ "**Manage Jira issues** — create, edit, transition, comment on, and link issues; add worklogs",
+ "**Search with JQL** — query issues using Jira Query Language with full field and filter support",
+ "**Work with Confluence** — create, update, and retrieve pages; add footer and inline comments",
+ "**Manage Compass components** — create, get, and search services, libraries, and applications; define custom fields and relationships",
+ "**Look up users and resources** — resolve Atlassian account IDs, list accessible cloud sites, and find project metadata",
+ "**Fetch Atlassian content** — retrieve any Atlassian object by its ARI or URL (e.g. a Jira issue or Confluence page URL)"
+ ],
"salesforce": [
"**Read CRM records** \u2014 retrieve accounts, contacts, leads, opportunities, and cases by ID or search query",
"**Create and update records** \u2014 open leads, close opportunities, update deal stages, and edit contacts",