-
Notifications
You must be signed in to change notification settings - Fork 0
Authentication and TLS
Each configured product needs credentials:
-
Personal Access Token (preferred):
JIRA_TOKEN,CONFLUENCE_TOKEN,BITBUCKET_TOKEN— sent as an HTTPBearerheader. -
Shared Basic fallback:
ATLASSIAN_USERNAME+ATLASSIAN_PASSWORD, used only for products without a token. Both variables must be set together.
A non-empty product token always wins over the shared Basic credentials. A configured URL without either its PAT or the complete Basic pair is a fatal configuration error. Create PATs in each product's UI under Profile → Personal Access Tokens.
The server acts as you: every request carries your PAT, Atlassian remains the final authorization boundary, and the server never elevates or combines permissions. Each developer should run their own instance with their own PAT.
Base URLs must be plain scheme://host[:port][/path]. Credentials embedded in
the URL (https://user:pass@host) and URLs with query strings or fragments
are rejected at startup — put the PAT in *_TOKEN instead.
Certificate and hostname verification is enabled by default. Resolution
order: --tls-verify / --no-tls-verify > ATLASSIAN_TLS_VERIFY > the
secure default (true). When a flag and the env var disagree, the flag wins
and a warning is printed.
ATLASSIAN_TLS_VERIFY is parsed strictly: unset means the default, true
and false (case-insensitive, surrounding whitespace allowed) are accepted,
and any other value aborts startup with an error — a typo can never
silently disable verification.
Disabling verification (--no-tls-verify or ATLASSIAN_TLS_VERIFY=false)
is only acceptable for local testing against self-signed endpoints. HTTPS is
still encrypted, but an active network attacker can impersonate the server.
The server prints a warning on stderr whenever verification is off.
For corporate CAs, provide a PEM file per product (read only when verification is enabled):
export JIRA_CA_FILE=/absolute/path/company-ca.pem
export CONFLUENCE_CA_FILE=/absolute/path/company-ca.pem
export BITBUCKET_CA_FILE=/absolute/path/company-ca.pemSet ATLASSIAN_PROXY (or the conventional HTTPS_PROXY / https_proxy;
ATLASSIAN_PROXY wins when both are set):
export ATLASSIAN_PROXY=http://proxy.corp.internal:3128
export NO_PROXY=atlassian.corp.internal,.internalNO_PROXY / no_proxy entries support exact hosts, .suffix matches,
host:port, and *. Credentials embedded in the proxy URL
(http://user:pass@proxy:3128) are used for proxy authentication only.
The server identifies itself as atlassian-server-mcp/<version>. When a WAF
or gateway requires a specific User-Agent, override it globally:
export ATLASSIAN_USER_AGENT=my-gateway-agent/1.0- Credentials,
Authorization, andCookieheaders are redacted from all tool errors and logs. - Startup authentication failures are warnings, and the real error returned by a tool call is always sanitized the same way.
- Generated E2E helper credentials (maintainer machines only) are stored with
mode
0600and are never written back into configuration files.
中文版 · English is the authoritative version.
Documentation source: docs/wiki/
— changes are reviewed via pull request; edits made directly in this wiki
are overwritten by the next sync. · 中文首页
Get started
Workflows
Reference
- Exposure tiers
- Attachments and large results
- Security model
- Compatibility matrix
- Upgrade guide
- Troubleshooting