Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
JIRA_URLNoThe URL of your Jira instance (Cloud or Server/DC).
NO_PROXYNoComma-separated list of hosts to bypass proxy.
HTTP_PROXYNoHTTP proxy URL.
HTTPS_PROXYNoHTTPS proxy URL.
MCP_VERBOSENoSet to 'true' for more detailed logging.
SOCKS_PROXYNoSOCKS proxy URL.
BITBUCKET_URLNoThe URL of your Bitbucket instance (Cloud or Server/DC).
ENABLED_TOOLSNoComma-separated list of tool names to enable (e.g., 'confluence_search,jira_get_issue').
JIRA_USERNAMENoYour Jira username (email) for Cloud API token authentication.
CONFLUENCE_URLNoThe URL of your Confluence instance (Cloud or Server/DC).
JIRA_API_TOKENNoYour Jira API token for Cloud authentication.
READ_ONLY_MODENoSet to 'true' to enable read-only mode for all products globally.
JIRA_SSL_VERIFYNoSet to 'false' to disable SSL verification for Jira (for self-signed certificates, Server/DC only).
MCP_VERY_VERBOSENoSet to 'true' for very detailed logging (debug custom headers, etc.).
REQUIRE_USERNAMENoSet to 'true' to enforce username headers (X-Atlassian-Username) for monitoring.
BITBUCKET_USERNAMENoYour Bitbucket username for Cloud authentication.
MCP_LOGGING_STDOUTNoSet to 'true' to log to stdout instead of stderr.
CONFLUENCE_USERNAMENoYour Confluence username (email) for Cloud API token authentication.
JIRA_CUSTOM_HEADERSNoCustom HTTP headers for Jira, comma-separated key=value pairs.
JIRA_PERSONAL_TOKENNoYour Jira Personal Access Token for Server/Data Center authentication.
JIRA_READ_ONLY_MODENoSet to 'true' to enable read-only mode for Jira only.
CONFLUENCE_API_TOKENNoYour Confluence API token for Cloud authentication.
JIRA_PROJECTS_FILTERNoComma-separated list of Jira project keys to filter by (e.g., 'PROJ,DEV,SUPPORT').
ATLASSIAN_OAUTH_SCOPENoOAuth 2.0 scopes (e.g., 'read:jira-work write:jira-work offline_access').
CONFLUENCE_SSL_VERIFYNoSet to 'false' to disable SSL verification for Confluence (for self-signed certificates, Server/DC only).
ATLASSIAN_OAUTH_ENABLENoSet to 'true' to enable minimal OAuth mode (for multi-cloud support without client credentials).
BITBUCKET_APP_PASSWORDNoYour Bitbucket app password for Cloud authentication.
ATLASSIAN_OAUTH_CLOUD_IDNoYour Atlassian Cloud ID obtained from OAuth setup wizard or known for your instance.
BITBUCKET_CUSTOM_HEADERSNoCustom HTTP headers for Bitbucket, comma-separated key=value pairs.
BITBUCKET_READ_ONLY_MODENoSet to 'true' to enable read-only mode for Bitbucket only.
CONFLUENCE_SPACES_FILTERNoComma-separated list of Confluence space keys to filter by (e.g., 'DEV,TEAM,DOC').
ATLASSIAN_OAUTH_CLIENT_IDNoOAuth 2.0 client ID from Atlassian Developer Console.
CONFLUENCE_CUSTOM_HEADERSNoCustom HTTP headers for Confluence, comma-separated key=value pairs (e.g., 'X-Custom=value1,X-Other=value2').
CONFLUENCE_PERSONAL_TOKENNoYour Confluence Personal Access Token for Server/Data Center authentication.
CONFLUENCE_READ_ONLY_MODENoSet to 'true' to enable read-only mode for Confluence only.
ATLASSIAN_OAUTH_ACCESS_TOKENNoPre-existing OAuth 2.0 access token for BYOT (Bring Your Own Token) method.
ATLASSIAN_OAUTH_REDIRECT_URINoOAuth 2.0 redirect URI (e.g., 'http://localhost:8080/callback').
ATLASSIAN_OAUTH_CLIENT_SECRETNoOAuth 2.0 client secret from Atlassian Developer Console.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tasks
{
  "list": {},
  "cancel": {},
  "requests": {
    "tools": {
      "call": {}
    },
    "prompts": {
      "get": {}
    },
    "resources": {
      "read": {}
    }
  }
}
tools
{
  "listChanged": true
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
jira_get_user_profileA

Retrieve profile information for a specific Jira user.

Args: ctx: The FastMCP context. user_identifier: User identifier (email, username, key, or account ID).

Returns: JSON string representing the Jira user profile object, or an error object if not found.

Raises: ValueError: If the Jira client is not configured or available.

jira_get_issueA

Get details of a specific Jira issue including its Epic links and relationship information.

Args: ctx: The FastMCP context. issue_key: Jira issue key. fields: Comma-separated list of fields to return (e.g., 'summary,status,customfield_10010'), a single field as a string (e.g., 'duedate'), '*all' for all fields, or omitted for essentials. expand: Optional fields to expand. comment_limit: Maximum number of comments. properties: Issue properties to return. update_history: Whether to update issue view history.

Returns: JSON string representing the Jira issue object.

Raises: ValueError: If the Jira client is not configured or available.

jira_searchA

Search Jira issues using JQL (Jira Query Language).

Args: ctx: The FastMCP context. jql: JQL query string. fields: Comma-separated fields to return. limit: Maximum number of results. start_at: Starting index for pagination. projects_filter: Comma-separated list of project keys to filter by. expand: Optional fields to expand.

Returns: JSON string representing the search results including pagination info.

jira_search_fieldsA

Search Jira fields by keyword with fuzzy match.

Args: ctx: The FastMCP context. keyword: Keyword for fuzzy search. limit: Maximum number of results. refresh: Whether to force refresh the field list.

Returns: JSON string representing a list of matching field definitions.

jira_get_project_issuesA

Get all issues for a specific Jira project.

Args: ctx: The FastMCP context. project_key: The project key. limit: Maximum number of results. start_at: Starting index for pagination.

Returns: JSON string representing the search results including pagination info.

jira_get_transitionsB

Get available status transitions for a Jira issue.

Args: ctx: The FastMCP context. issue_key: Jira issue key.

Returns: JSON string representing a list of available transitions.

jira_get_worklogB

Get worklog entries for a Jira issue.

Args: ctx: The FastMCP context. issue_key: Jira issue key.

Returns: JSON string representing the worklog entries.

jira_download_attachmentsA

Download attachments from a Jira issue to disk, MCP resources, or both.

When resource caching is enabled, each attachment is immediately available in the MCP resource browser via a static URI — no cache key required:

jira://attachments/{issue_key}/{filename}

Examples: jira://attachments/JDQU-2322/desktop-screenshot-1.png ← renders as image jira://attachments/JDQU-2322/SPyDR%20Metadata.txt ← opens as text

Cached resources are valid for 10 minutes. Re-run this tool to refresh.

Args: ctx: The FastMCP context. issue_key: Jira issue key (e.g., 'PROJ-123'). target_dir: Optional server-side save path for downloaded files. return_content: Optional flag to cache attachments as MCP resources.

Returns: JSON string with download results. Attachments may include: - filename: The attachment filename - size: File size in bytes - path: Server-side download path when target_dir is provided - static_resource_uri: Direct MCP resource URI when return_content is enabled - mime_type: MIME type of the file when return_content is enabled

jira_get_agile_boardsB

Get jira agile boards by name, project key, or type.

Args: ctx: The FastMCP context. board_name: Name of the board (fuzzy search). project_key: Project key. board_type: Board type ('scrum' or 'kanban'). start_at: Starting index. limit: Maximum results.

Returns: JSON string representing a list of board objects.

jira_get_board_issuesC

Get all issues linked to a specific board filtered by JQL.

Args: ctx: The FastMCP context. board_id: The ID of the board. jql: JQL query string to filter issues. fields: Comma-separated fields to return. start_at: Starting index for pagination. limit: Maximum number of results. expand: Optional fields to expand.

Returns: JSON string representing the search results including pagination info.

jira_get_sprints_from_boardA

Get jira sprints from board by state.

Args: ctx: The FastMCP context. board_id: The ID of the board. state: Sprint state ('active', 'future', 'closed'). If None, returns all sprints. start_at: Starting index. limit: Maximum results.

Returns: JSON string representing a list of sprint objects.

jira_get_sprint_issuesB

Get jira issues from sprint.

Args: ctx: The FastMCP context. sprint_id: The ID of the sprint. fields: Comma-separated fields to return. start_at: Starting index. limit: Maximum results.

Returns: JSON string representing the search results including pagination info.

jira_get_link_typesA

Get all available issue link types.

Args: ctx: The FastMCP context.

Returns: JSON string representing a list of issue link type objects.

jira_create_issueA

Create a new Jira issue with optional Epic link or parent for subtasks.

Args: ctx: The FastMCP context. project_key: The JIRA project key. summary: Summary/title of the issue. issue_type: Issue type (e.g., 'Task', 'Bug', 'Story', 'Epic', 'Subtask'). assignee: Assignee's user identifier (string): Email, display name, or account ID (e.g., 'user@example.com', 'John Doe', 'accountid:...'). description: Issue description. components: Comma-separated list of component names. additional_fields: Dictionary of additional fields.

Returns: JSON string representing the created issue object.

Raises: ValueError: If in read-only mode or Jira client is unavailable.

jira_batch_create_issuesA

Create multiple Jira issues in a batch.

Args: ctx: The FastMCP context. issues: JSON array string of issue objects. validate_only: If true, only validates without creating.

Returns: JSON string indicating success and listing created issues (or validation result).

Raises: ValueError: If in read-only mode, Jira client unavailable, or invalid JSON.

jira_batch_get_changelogsA

Get changelogs for multiple Jira issues (Cloud only).

Args: ctx: The FastMCP context. issue_ids_or_keys: List of issue IDs or keys. fields: List of fields to filter changelogs by. None for all fields. limit: Maximum changelogs per issue (-1 for all).

Returns: JSON string representing a list of issues with their changelogs.

Raises: NotImplementedError: If run on Jira Server/Data Center. ValueError: If Jira client is unavailable.

jira_update_issueA

Update an existing Jira issue including changing status, adding Epic links, updating fields, etc.

Args: ctx: The FastMCP context. issue_key: Jira issue key. fields: Dictionary of fields to update. additional_fields: Optional dictionary of additional fields. attachments: Optional JSON array string or comma-separated list of file paths.

Returns: JSON string representing the updated issue object and attachment results.

Raises: ValueError: If in read-only mode or Jira client unavailable, or invalid input.

jira_delete_issueA

Delete an existing Jira issue.

Args: ctx: The FastMCP context. issue_key: Jira issue key.

Returns: JSON string indicating success.

Raises: ValueError: If in read-only mode or Jira client unavailable.

jira_add_commentA

Add a comment to a Jira issue.

Args: ctx: The FastMCP context. issue_key: Jira issue key. comment: Comment text in Markdown.

Returns: JSON string representing the added comment object.

Raises: ValueError: If in read-only mode or Jira client unavailable.

jira_add_worklogA

Add a worklog entry to a Jira issue.

Args: ctx: The FastMCP context. issue_key: Jira issue key. time_spent: Time spent in Jira format. comment: Optional comment in Markdown. started: Optional start time in ISO format. original_estimate: Optional new original estimate. remaining_estimate: Optional new remaining estimate.

Returns: JSON string representing the added worklog object.

Raises: ValueError: If in read-only mode or Jira client unavailable.

jira_link_to_epicA

Link an existing issue to an epic.

Args: ctx: The FastMCP context. issue_key: The key of the issue to link. epic_key: The key of the epic to link to.

Returns: JSON string representing the updated issue object.

Raises: ValueError: If in read-only mode or Jira client unavailable.

jira_create_issue_linkB

Create a link between two Jira issues.

Args: ctx: The FastMCP context. link_type: The type of link (e.g., 'Blocks'). inward_issue_key: The key of the source issue. outward_issue_key: The key of the target issue. comment: Optional comment text. comment_visibility: Optional dictionary for comment visibility.

Returns: JSON string indicating success or failure.

Raises: ValueError: If required fields are missing, invalid input, in read-only mode, or Jira client unavailable.

jira_create_remote_issue_linkA

Create a remote issue link (web link or Confluence link) for a Jira issue.

This tool allows you to add web links and Confluence links to Jira issues. The links will appear in the issue's "Links" section and can be clicked to navigate to external resources.

Args: ctx: The FastMCP context. issue_key: The key of the issue to add the link to. url: The URL to link to (can be any web page or Confluence page). title: The title/name that will be displayed for the link. summary: Optional description of what the link is for. relationship: Optional relationship description. icon_url: Optional URL to a 16x16 icon for the link.

Returns: JSON string indicating success or failure.

Raises: ValueError: If required fields are missing, invalid input, in read-only mode, or Jira client unavailable.

jira_remove_issue_linkA

Remove a link between two Jira issues.

Args: ctx: The FastMCP context. link_id: The ID of the link to remove.

Returns: JSON string indicating success.

Raises: ValueError: If link_id is missing, in read-only mode, or Jira client unavailable.

jira_transition_issueA

Transition a Jira issue to a new status.

Args: ctx: The FastMCP context. issue_key: Jira issue key. transition_id: ID of the transition. fields: Optional dictionary of fields to update during transition. comment: Optional comment for the transition.

Returns: JSON string representing the updated issue object.

Raises: ValueError: If required fields missing, invalid input, in read-only mode, or Jira client unavailable.

jira_create_sprintA

Create Jira sprint for a board.

Args: ctx: The FastMCP context. board_id: Board ID. sprint_name: Sprint name. start_date: Start date (ISO format). end_date: End date (ISO format). goal: Optional sprint goal.

Returns: JSON string representing the created sprint object.

Raises: ValueError: If in read-only mode or Jira client unavailable.

jira_update_sprintC

Update jira sprint.

Args: ctx: The FastMCP context. sprint_id: The ID of the sprint. sprint_name: Optional new name. state: Optional new state (future|active|closed). start_date: Optional new start date. end_date: Optional new end date. goal: Optional new goal.

Returns: JSON string representing the updated sprint object or an error message.

Raises: ValueError: If in read-only mode or Jira client unavailable.

jira_get_project_versionsA

Get all fix versions for a specific Jira project.

jira_get_all_projectsA

Get all Jira projects accessible to the current user.

Args: ctx: The FastMCP context. include_archived: Whether to include archived projects.

Returns: JSON string representing a list of project objects accessible to the user. Project keys are always returned in uppercase. If JIRA_PROJECTS_FILTER is configured, only returns projects matching those keys.

Raises: ValueError: If the Jira client is not configured or available.

jira_create_versionA

Create a new fix version in a Jira project.

Args: ctx: The FastMCP context. project_key: The project key. name: Name of the version. start_date: Start date (optional). release_date: Release date (optional). description: Description (optional).

Returns: JSON string of the created version object.

jira_batch_create_versionsB

Batch create multiple versions in a Jira project.

Args: ctx: The FastMCP context. project_key: The project key. versions: JSON array string of version objects.

Returns: JSON array of results, each with success flag, version or error.

jira_save_attachment_to_diskA

Save a cached attachment to the MCP SERVER's filesystem.

⚠️ WARNING: This saves to the SERVER's filesystem, NOT your local client machine!

Use cases:

  • MCP server is running locally on your machine

  • Need to save files on a remote server for server-side processing

  • Saving to a shared network location accessible from server

For CLIENT-SIDE saving (your local VS Code machine):

  • Use the resource URI from download_attachments response

  • Your MCP client (VS Code) will fetch and save it locally

Args: ctx: The FastMCP context. cache_key: The cache_key returned from download_attachments tool target_path: Full file path on SERVER filesystem (not client's local disk)

Returns: JSON string with save result including absolute path on server

Example: # This saves to SERVER filesystem, not your local machine! save_attachment_to_disk( cache_key="abc123def456", target_path="/server/storage/design.pdf" )

jira_list_cached_attachmentsA

List all currently cached attachments available via MCP resources.

Each attachment exposes a static_resource_uri that can be opened directly in the MCP resource browser without knowing the cache key:

jira://attachments/{issue_key}/{filename}

Images (PNG, JPEG, etc.) render inline. Text files open as-is. All cached resources expire after 10 minutes.

Returns: JSON string with list of cached attachments including URIs and metadata

jira_construct_upload_endpointA

Return the URL and session token needed to upload local files to the MCP server.

This is step 1 of the client-side file upload flow:

  1. Call this tool to get upload_url + session_id.

  2. POST your file(s) to upload_url using multipart/form-data with the Mcp-Session-Id header set to session_id.

    Windows PowerShell (handles paths with spaces): curl.exe -X POST -H "Mcp-Session-Id: " -F 'file=@"C:\path with spaces\file.pdf"'

    Linux / macOS (handles paths with spaces): curl -X POST -H "Mcp-Session-Id: " -F "file=@'/path/with spaces/file.pdf'"

    The server returns: {"uploaded": [{"filename": "...", "uri": "upload://...", "size": ...}]}

  3. Pass the returned upload:// URIs to jira_upload_attachment.

Sessions expire after 30 minutes (configurable via UPLOAD_STAGING_TTL_MINUTES). The base URL defaults to http://localhost:8932 and can be overridden by the MCP_SERVER_BASE_URL environment variable.

Args: ctx: The FastMCP context.

Returns: JSON string with upload_url, session_id, required_headers, and OS-specific usage example.

jira_construct_download_endpointA

Return a short-lived authenticated download URL for a cached Jira attachment.

This is intended for clients that need a regular HTTP URL instead of an MCP resource URI. The attachment must already be present in the in-memory cache, typically by running jira_download_attachments with return_content=true.

Args: ctx: The FastMCP context. issue_key: Jira issue key for the cached attachment. filename: Cached attachment filename. ttl_minutes: Download URL lifetime in minutes (max 10).

Returns: JSON string with download_url, expires_at, and attachment metadata.

jira_jira_upload_attachmentA

Upload one or more staged files to a Jira issue as attachments.

This is step 3 of the client-side file upload flow (after construct_upload_endpoint and POSTing files to /upload).

Each upload:// URI is resolved from the server-side staging store, then uploaded directly to Jira via the REST API — no base64, no context-window overhead.

Staged files are removed from the store after a successful upload. Unused uploads expire automatically after 30 minutes.

Args: ctx: The FastMCP context. issue_key: Jira issue key (e.g., 'PROJ-123'). upload_uris: List of upload:// URIs from the /upload endpoint response.

Returns: JSON string with per-file upload results.

Raises: ValueError: If in read-only mode or Jira client is unavailable.

confluence_searchA

Search Confluence content using simple terms or CQL.

Args: ctx: The FastMCP context. query: Search query - can be simple text or a CQL query string. limit: Maximum number of results (1-50). spaces_filter: Comma-separated list of space keys to filter by.

Returns: JSON string representing a list of simplified Confluence page objects.

confluence_get_pageA

Get content of a specific Confluence page by its ID, or by its title and space key.

Args: ctx: The FastMCP context. page_id: Confluence page ID. If provided, 'title' and 'space_key' are ignored. title: The exact title of the page. Must be used with 'space_key'. space_key: The key of the space. Must be used with 'title'. include_metadata: Whether to include page metadata. convert_to_markdown: Convert content to markdown (true) or keep raw HTML (false). sample: Return only top N lines or the whole page when set to -1.

Returns: JSON string representing the page content and/or metadata, or an error if not found or parameters are invalid.

confluence_get_page_childrenA

Get child pages of a specific Confluence page.

Args: ctx: The FastMCP context. parent_id: The ID of the parent page. expand: Fields to expand. limit: Maximum number of child pages. include_content: Whether to include page content. convert_to_markdown: Convert content to markdown if include_content is true. start: Starting index for pagination.

Returns: JSON string representing a list of child page objects.

confluence_get_commentsB

Get comments for a specific Confluence page.

Args: ctx: The FastMCP context. page_id: Confluence page ID.

Returns: JSON string representing a list of comment objects.

confluence_get_labelsA

Get labels for a specific Confluence page.

Args: ctx: The FastMCP context. page_id: Confluence page ID.

Returns: JSON string representing a list of label objects.

confluence_add_labelB

Add label to an existing Confluence page.

Args: ctx: The FastMCP context. page_id: The ID of the page to update. name: The name of the label.

Returns: JSON string representing the updated list of label objects for the page.

Raises: ValueError: If in read-only mode or Confluence client is unavailable.

confluence_create_pageA

Create a new Confluence page.

Args: ctx: The FastMCP context. space_key: The key of the space. title: The title of the page. content: The content of the page (format depends on content_format). parent_id: Optional parent page ID. content_format: The format of the content ('markdown', 'wiki', or 'storage'). enable_heading_anchors: Whether to enable heading anchors (markdown only).

Returns: JSON string representing the created page object.

Raises: ValueError: If in read-only mode, Confluence client is unavailable, or invalid content_format.

confluence_update_pageB

Update an existing Confluence page.

Args: ctx: The FastMCP context. page_id: The ID of the page to update. title: The new title of the page. content: The new content of the page (format depends on content_format). is_minor_edit: Whether this is a minor edit. version_comment: Optional comment for this version. parent_id: Optional new parent page ID. content_format: The format of the content ('markdown', 'wiki', or 'storage'). enable_heading_anchors: Whether to enable heading anchors (markdown only).

Returns: JSON string representing the updated page object.

Raises: ValueError: If Confluence client is not configured, available, or invalid content_format.

confluence_delete_pageA

Delete an existing Confluence page.

Args: ctx: The FastMCP context. page_id: The ID of the page to delete.

Returns: JSON string indicating success or failure.

Raises: ValueError: If Confluence client is not configured or available.

confluence_add_commentA

Add a comment to a Confluence page.

Args: ctx: The FastMCP context. page_id: The ID of the page to add a comment to. content: The comment content in Markdown format.

Returns: JSON string representing the created comment.

Raises: ValueError: If in read-only mode or Confluence client is unavailable.

confluence_search_userA

Search Confluence users using CQL.

Args: ctx: The FastMCP context. query: Search query - a CQL query string for user search. limit: Maximum number of results (1-50).

Returns: JSON string representing a list of simplified Confluence user search result objects.

bitbucket_list_workspaces_or_projectsA

List all accessible workspaces (Cloud) or projects (Server/DC).

Returns: JSON string containing list of workspaces/projects with their details.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_list_repositoriesA

List repositories in a workspace/project or all accessible repositories.

Args: ctx: The MCP context. workspace: Optional workspace name or project key to filter repositories.

Returns: JSON string containing list of repositories with their details.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_get_repository_infoB

Get detailed information about a specific repository.

Args: ctx: The MCP context. workspace: Workspace name or project key. repository: Repository name.

Returns: JSON string containing repository details.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_list_branchesB

List all branches in a repository.

Args: ctx: The MCP context. workspace: Workspace name or project key. repository: Repository name. base: The base branch from which to find branches. branch_filter: Branch pattern to filter on. start: Starting index. limit: Maximum number of branches to fetch.

Returns: JSON string containing list of branches with their details.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_get_default_branchA

Get the default branch for a repository.

Args: workspace: Workspace name or project key. repository: Repository name.

Returns: JSON string containing default branch information.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_get_file_contentA

Get the content of a specific file from a repository.

Args: workspace: Workspace name or project key. repository: Repository name. file_path: Path to the file in the repository. branch: Branch name to read from (default: main).

Returns: JSON string containing file content and metadata.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_list_directoryA

List the contents of a directory in a repository.

Args: workspace: Workspace name or project key. repository: Repository name. path: Directory path in the repository (empty for root). branch: Branch name to list from (default: main).

Returns: JSON string containing directory contents.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_list_pull_requestsA

List pull requests for a repository.

Args: workspace: Workspace name or project key. repository: Repository name. state: Pull request state filter (OPEN, MERGED, DECLINED).

Returns: JSON string containing list of pull requests.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_pull_request_activitiesC

Get all activities on a pull request.

Args: workspace: Workspace name or project key. repository: Repository name. pull_request_id: Pull request ID to get comments for.

Returns: JSON string containing list of pull requests.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_get_pull_requestA

Get detailed information about a specific pull request.

Args: workspace: Workspace name or project key. repository: Repository name. pull_request_id: Pull request ID.

Returns: JSON string containing pull request details.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_get_commit_changesC

Get commit history for a repository branch.

Args: workspace: Workspace name or project key. repository: Repository name. commit_id: ID of the commit whose changes are being fetched. merges: Filter merges ('include', 'exclude', 'only') (default: include) hash_newest: Fetch changes for a particular commit hash.

Returns: JSON string containing commit history.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_get_commitsB

Get commit history for a repository branch.

Args: workspace: Workspace name or project key. repository: Repository name. until: The commit ID or ref (inclusively) to retrieve commits before limit: Maximum number of commits to return (default: 25). since: The commit ID or ref (inclusively) to retrieve commits after

Returns: JSON string containing commit history.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_create_pull_requestC

Create a new pull request.

Args: workspace: Workspace name or project key. repository: Repository name. title: Pull request title. source_branch: Source branch name. destination_branch: Destination branch name (default: main). description: Optional pull request description.

Returns: JSON string containing the created pull request details.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_create_branchA

Create a new branch in a repository.

Args: workspace: Workspace name or project key. repository: Repository name. branch_name: New branch name. source_branch: Source branch to create from (default: main).

Returns: JSON string containing the created branch details.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_add_pull_request_blocker_commentC

Add a comment to a pull request.

Args: workspace: Workspace name or project key. repository: Repository name. pull_request_id: Pull request ID. comment: Comment text. severity: Severity of the blocker. (Normal or Blocker) (default: NORMAL)

Returns: JSON string containing the created comment details.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_add_pull_request_commentB

Add a comment to a pull request.

Args: workspace: Workspace name or project key. repository: Repository name. pull_request_id: Pull request ID. comment: Comment text.

Returns: JSON string containing the created comment details.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_add_pull_request_inline_commentA

Add an inline comment on a specific line of a file in a pull request.

Args: workspace: Workspace name or project key. repository: Repository name. pull_request_id: Pull request ID. comment: Comment text. file_path: Path to the file to comment on. line: Line number to attach the comment to. line_type: Line type for Server/DC ('ADDED', 'REMOVED', or 'CONTEXT').

Returns: JSON string containing the created comment details.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_analyze_pr_review_statusA

Analyze a pull request's comment threads to determine which review feedback has been addressed and which is still pending.

For each comment thread the tool inspects:

  • Whether the comment is explicitly resolved/marked done (Server/DC state field, Cloud resolved flag).

  • Replies in the thread — if a reply contains completion keywords ("done", "fixed", "addressed", "resolved", "updated", "completed") it is considered addressed even when no formal resolve action was taken.

Returns a structured summary with:

  • total_comments: number of top-level review comments found

  • addressed: list of comments considered done (resolved or positively replied)

  • pending: list of comments that still need attention

  • overall_status: "ALL_ADDRESSED" | "PARTIALLY_ADDRESSED" | "NONE_ADDRESSED"

Args: workspace: Workspace name or project key. repository: Repository name. pull_request_id: Pull request ID.

Returns: JSON string with the review status analysis.

Raises: ValueError: If the Bitbucket client is not configured or available.

bitbucket_get_pull_request_diffA

Get the full code diff (all changed files and lines) for a pull request.

Returns the unified diff of all changes included in the PR so you can review exactly what new code was added, modified, or removed.

For Bitbucket Cloud the response is a raw unified diff string. For Bitbucket Server/DC the response is structured JSON containing per-file diff hunks.

Args: workspace: Workspace name or project key. repository: Repository name. pull_request_id: Pull request ID.

Returns: JSON string wrapping the diff content and metadata.

Raises: ValueError: If the Bitbucket client is not configured or available.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SharkyND/mcp-atlassian'

If you have feedback or need assistance with the MCP directory API, please join our Discord server