Atlassian Browser MCP
io.github.geiserx/atlassian-browser-mcp
Overview
Browser-cookie authenticated MCP server wrapping mcp-atlassian for Jira and Confluence behind corporate SSO. Includes a repo launcher, out-of-band CLI login, cookie harvesting, and full upstream toolset support.
Documentation
Atlassian Browser MCP
Browser-cookie authenticated MCP server wrapping upstream mcp-atlassian for Jira and Confluence. It is designed for Atlassian Server/Data Center instances behind corporate SSO where API tokens are unavailable.
Installation
Clone the repository and run the bundled launcher from the repository root:
git clone https://github.com/GeiserX/atlassian-browser-mcp.git
cd atlassian-browser-mcp
./run-atlassian-browser-mcp.sh
The launcher requires uv. It creates .venv-atlassian-browser when needed, installs this repository in editable mode with uv pip install -e ., installs Playwright Chromium when missing, verifies compatibility with the upstream mcp-atlassian dependency, and starts the atlassian-browser-mcp console script over stdio.
For first-time browser authentication, run the CLI out of band in a terminal with a display:
ATLASSIAN_SEED_FROM_CHROME_PROFILE=Default ./atlassian-cli login jira
ATLASSIAN_SEED_FROM_CHROME_PROFILE=Default ./atlassian-cli login confluence
Configuration
Set JIRA_URL and CONFLUENCE_URL to the base URLs of your Atlassian instances. The default MCP launch uses the repository launcher over stdio.
{
"command": "./run-atlassian-browser-mcp.sh",
"env": {
"JIRA_URL": "",
"CONFLUENCE_URL": "",
"ATLASSIAN_BROWSER_AUTH_ENABLED": "true",
"TOOLSETS": "all"
}
}
Optional runtime variables include ATLASSIAN_BROWSER_PROFILE_DIR for persistent browser profile location, ATLASSIAN_STORAGE_STATE for cookie state files, ATLASSIAN_LOGIN_TIMEOUT_SECONDS for CLI login timeout, ATLASSIAN_USERNAME for username prefill, ATLASSIAN_SSO_MARKERS for IdP detection, ATLASSIAN_BROWSER_CHANNEL for Playwright channel, ATLASSIAN_JIRA_LOGIN_URL and ATLASSIAN_CONFLUENCE_LOGIN_URL for custom login entry points, ATLASSIAN_BROWSER_USER_AGENT for request user agent, ATLASSIAN_COOKIE_HARVEST for browser-cookie harvesting, ATLASSIAN_COOKIE_SOURCE_BROWSERS for harvest order, and ATLASSIAN_OAUTH_CLOUD_ID for upstream Forms API tools.
Secret or user-specific values are intentionally empty in the registry metadata. Local browser profile and storage-state files contain live session cookies and should stay private.
Capabilities
The server monkey-patches upstream mcp-atlassian Jira and Confluence clients to inject a browser-cookie requests session while preserving the upstream tool surface. It enables all upstream toolsets by default, supports Jira and Confluence operations exposed by mcp-atlassian, and adds an atlassian_login MCP tool that reports the required out-of-band CLI login command instead of opening a browser from the MCP server process.
The helper CLI supports login, Jira issue get/search, and Confluence page get/search workflows. Cookie harvesting can reuse a live session from installed Chromium-family browsers such as Arc, Chrome, Brave, Vivaldi, Edge, Opera, Chromium, and Dia.
Limitations
Python 3.11+, uv, Playwright, network access to Jira/Confluence, and a graphical display for initial interactive SSO login are required. The MCP server itself never opens a browser; when no valid cookie jar or harvestable live browser session exists, users must run atlassian-cli login in a terminal. The wrapper is pinned for mcp-atlassian 0.x and startup checks fail if upstream internals change. Browser profile and storage-state artifacts contain session cookies and must not be committed.
Repository: https://github.com/GeiserX/atlassian-browser-mcp