olddevs-mcp-atlassian@0.1.2
VERIFIED· not startedPublisher claims: "MCP server for Atlassian Jira, Confluence and Bitbucket Data Center: a fork of mcp-atlassian with Bitbucket Data Center support." Observed in sandbox: no network, touches nothing outside the project, writes no memory.
Coverage
Not started: dependency install failed; the server itself was not observed.- Tested
- the dependency install step · every file read, file written and host contacted by what ran
- Not tested
- server startup · the tool list · tool behavior
What this means for the label: Verified here covers what ran. The server's tools were not exercised with a real credential, so nothing about their behavior is asserted; the credential summary below says what to do with that.
Before you give it your token
- It will ask for
ATLASSIAN_OAUTH_ACCESS_TOKENATLASSIAN_OAUTH_ALLOWED_CLIENT_REDIRECT_URISATLASSIAN_OAUTH_ALLOWED_GRANT_TYPESATLASSIAN_OAUTH_CLIENT_IDATLASSIAN_OAUTH_CLIENT_SECRETATLASSIAN_OAUTH_CLOUD_IDATLASSIAN_OAUTH_ENABLEATLASSIAN_OAUTH_INSTANCE_URLATLASSIAN_OAUTH_REDIRECT_URIATLASSIAN_OAUTH_SCOPEBITBUCKET_CLIENT_KEY_PASSWORDBITBUCKET_PERSONAL_TOKENCONFLUENCE_API_TOKENCONFLUENCE_CLIENT_KEY_PASSWORDCONFLUENCE_OAUTH_CLIENT_IDCONFLUENCE_OAUTH_CLIENT_SECRETCONFLUENCE_PERSONAL_TOKENJIRA_API_TOKENJIRA_CLIENT_KEY_PASSWORDJIRA_OAUTH_CLIENT_IDJIRA_OAUTH_CLIENT_SECRETJIRA_PERSONAL_TOKENor--client-secret/--oauth-setup/--confluence-token/--confluence-personal-token/--jira-token/--jira-personal-token/--bitbucket-personal-token/--oauth-client-id/--oauth-client-secret/--oauth-redirect-uriConfiguration, not credentials: ATLASSIAN_PROXY_WPAD_URL, BITBUCKET_CLIENT_CERT, BITBUCKET_CLIENT_KEY, BITBUCKET_PROJECTS_FILTER, BITBUCKET_SSL_VERIFY, BITBUCKET_TIMEOUT, BITBUCKET_URL, CONFLUENCE_ATTACHMENT_DOWNLOAD_USE_V1, CONFLUENCE_CLIENT_CERT, CONFLUENCE_CLIENT_KEY, CONFLUENCE_SPACES_FILTER, CONFLUENCE_SSL_VERIFY, CONFLUENCE_TIMEOUT, CONFLUENCE_URL, CONFLUENCE_USERNAME, DISABLE_JIRA_MARKUP_TRANSLATION, ENABLED_TOOLS, HIERARCHY_LINK_PHRASES- Where it talks to
- no vendor host named in the codeAlso atlassian.com, atlassian.net, your-company.com, chatgpt.com — not the publisher's domain; check what for before connecting.
- What the honeypot saw
- no credential files read · no network
- What we could not test
- server startup · the tool list · tool behavior
Connect it with a scoped credential, under the guard, and read the third-party hosts first. The code names atlassian.com, atlassian.net, your-company.com, chatgpt.com as well as its own vendor. The guard injects ATLASSIAN_OAUTH_ACCESS_TOKEN, ATLASSIAN_OAUTH_ALLOWED_CLIENT_REDIRECT_URIS, ATLASSIAN_OAUTH_ALLOWED_GRANT_TYPES, ATLASSIAN_OAUTH_CLIENT_ID, ATLASSIAN_OAUTH_CLIENT_SECRET, ATLASSIAN_OAUTH_CLOUD_ID, ATLASSIAN_OAUTH_ENABLE, ATLASSIAN_OAUTH_INSTANCE_URL, ATLASSIAN_OAUTH_REDIRECT_URI, ATLASSIAN_OAUTH_SCOPE, BITBUCKET_CLIENT_KEY_PASSWORD, BITBUCKET_PERSONAL_TOKEN, CONFLUENCE_API_TOKEN, CONFLUENCE_CLIENT_KEY_PASSWORD, CONFLUENCE_OAUTH_CLIENT_ID, CONFLUENCE_OAUTH_CLIENT_SECRET, CONFLUENCE_PERSONAL_TOKEN, JIRA_API_TOKEN, JIRA_CLIENT_KEY_PASSWORD, JIRA_OAUTH_CLIENT_ID, JIRA_OAUTH_CLIENT_SECRET, JIRA_PERSONAL_TOKEN only into requests to the host you bind (and its subdomains) and refuses the rest.
Never paste a credential into a chat, a ticket or a report, including ours. How the guard holds it.
Is [email protected] safe to install?
KillerSkills ran it in the KillerSkills honeypot sandbox (2 scenarios; not started: dependency install failed; the server itself was not observed) on 2026-11-13 and scored it 81/100 (Verified). In what ran, nothing we could detect went wrong: no undeclared network egress, no credential reads, no persistent instruction writes. What it does with a real credential was not observed; the static findings and the publisher carry the rest of the score. Summary: no network, touches nothing outside the project, writes no memory.
Behavior trace
Honeypot run · 0 s · 2 scenarios · 0 deviationsStatic findings
".env.example",Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.echo "Note: .env file not found. Using defaults for DC instances (localhost:8080/8090)."Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose."Attempting to load environment from default .env file if it exists"Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.# Prevent .netrc from overriding the explicit token (#860).Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose."\n💡 Tip: Add/update the following in your .env file or environment variables:"Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.".env.example",Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.".env.example",Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.if [ ! -f ".env" ]; thenFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.source .envFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose."--env-file", type=click.Path(exists=True, dir_okay=False), help="Path to .env file"Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.echo " 1. Start DC instances: cd tests/e2e/docker && docker compose --env-file .env.example up -d"Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.# Check if .env file existsFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.# Read from .env via dotenv_values() since load_dotenv() hasn't run yet.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.".env.example",Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.# explicit credentials (#860). Basic auth can safely use .netrc.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.mcp_path = self.mcp_server_ref.get_streamable_http_path()Fix: Namespace tool names and keep tool descriptions literal; no instructions to the agent inside them.# set in the environment (or .env) before the server starts.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.# explicit credentials (#860). Basic auth can safely use .netrc.Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.from .env import (Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.# Disable trust_env for PAT and OAuth to prevent .netrc from overridingFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.map(ord, "") # ZWSP, ZWNJ, ZWJ, word-joiner, BOMFix: Keep SKILL.md to visible, descriptive text. Remove comments and encoded text that address the agent.from .env import is_env_truthyFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.from .env import get_int_envFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.# Disable trust_env for PAT and OAuth to prevent .netrc from overridingFix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.attacks (e.g., ``../../etc/passwd``).Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.Cost to the agent
Tokens estimated at four characters each. The tool list is re-read by the agent on every turn, so it is the number to compare between servers that do the same job: ranked across the index.
Known vulnerabilities
No advisories in OSV for olddevs-mcp-atlassian@0.1.2 as of 20 h ago. This is the package itself, not its dependencies.