Skip to main content
Glama

Atlassian Read-only MCP

Ein kleiner MCP-Server, der KI-Assistenten schreibgeschützten Zugriff auf Jira und Confluence Cloud gewährt. Der Schreibschutz wird auf zwei Ebenen umgesetzt:

  1. Die Atlassian-Tokens enthalten ausschließlich Lese-Scopes.

  2. Der Server implementiert ausschließlich GET-Anfragen, die auf einer Allowlist stehen.

Er stellt vier Tools bereit:

  • Ein Jira-Issue lesen

  • Jira mit JQL durchsuchen

  • Eine Confluence-Seite lesen

  • Confluence mit CQL durchsuchen

Es gibt kein generisches HTTP-Tool und keine Implementierung für POST, PUT, PATCH oder DELETE. Selbst wenn versehentlich umfangreichere Anmeldedaten bereitgestellt würden, hätten MCP-Clients weiterhin kein Tool zum Ändern von Jira- oder Confluence-Inhalten. Antworten sind in ihrer Größe begrenzt, vermutliche Geheimnisse werden geschwärzt, Confluence-Storage-HTML wird in Markdown konvertiert und optionale JMESPath-Projektionen können die zurückgegebenen Daten reduzieren.

Voraussetzungen

  • Node.js 20 oder neuer

  • Zugriff auf den konfigurierten Atlassian-Cloud-Tenant

  • Separate, bereichsbezogene (Scoped) API-Tokens für Jira und Confluence

  • Einen MCP-Client wie GitHub Copilot in VS Code

Related MCP server: MCP Atlassian Server

Installation

git clone https://github.com/AlexSchaap-TMMC/atlassian-readonly-mcp.git C:\Tools\atlassian-readonly
Set-Location C:\Tools\atlassian-readonly
npm install
npm test

API-Tokens erstellen

Öffnen Sie Atlassian API tokens und erstellen Sie zwei Tokens.

Jira-Token

read:jira-work

Dieser klassische Scope ist für den Abruf von Jira-Issues und die JQL-Suche allein verifiziert. Atlassian hat Jira-Tokens, die nur die entsprechenden granularen Scopes enthielten, mit 401 Unauthorized; scope does not match abgelehnt.

Confluence-Token

read:page:confluence
read:content-details:confluence
search:confluence

Diese granularen Scopes sind für die CQL-Suche und den vollständigen Seitenabruf verifiziert.

Scopes sind bei der Erstellung eines Tokens festgelegt. Jira und Confluence benötigen getrennte Tokens. Kopieren Sie jedes Token aus dem einmaligen Erstellungsdialog und legen Sie es nicht in Quelldateien, der MCP-Konfiguration, der Shell-Historie, Issues oder Chats ab.

Fügen Sie keine Schreib- oder Administrations-Scopes hinzu. Die eingeschränkten Tokens stellen sicher, dass Atlassian Schreibvorgänge unabhängig von der MCP-Implementierung ablehnt.

Anmeldedaten speichern

Aus dem Repository-Verzeichnis:

npm run configure -- jira
npm run configure -- confluence

Die verborgenen Eingabeaufforderungen speichern jedes Token getrennt im Windows Credential Manager, im System-Schlüsselbund von macOS oder im Linux-Secret-Service. Die E-Mail-Adresse des Atlassian-Kontos gehört in die MCP-Umgebung, nicht in den Speicher für Anmeldedaten.

GitHub Copilot in VS Code konfigurieren

Führen Sie MCP: Open User Configuration über die Befehlspalette aus:

{
  "servers": {
    "atlassian-readonly": {
      "type": "stdio",
      "command": "node",
      "args": ["C:\\Tools\\atlassian-readonly\\src\\server.mjs"],
      "env": {
        "ATLASSIAN_USER_EMAIL": "your.atlassian.email@example.com",
        "NODE_OPTIONS": "--use-system-ca"
      }
    }
  }
}

Laden Sie VS Code neu, öffnen Sie Copilot Chat, wählen Sie Configure Tools und aktivieren Sie die vier Atlassian-Tools.

Beispielanfragen:

Read HEC-123 and summarize its acceptance criteria.
Search Jira for open bugs assigned to me.
Search Confluence for pages about Kafka retry handling.

GitHub Copilot CLI konfigurieren

copilot mcp add atlassian-readonly `
  --env ATLASSIAN_USER_EMAIL="your.atlassian.email@example.com" `
  --env NODE_OPTIONS="--use-system-ca" `
  -- node C:\Tools\atlassian-readonly\src\server.mjs

Starten Sie die Copilot CLI neu, wenn Sie den Server hinzugefügt oder geändert haben.

Fehlerbehebung

Authentifizierung

Prüfen Sie Folgendes:

  • Die E-Mail-Adresse stimmt mit dem Atlassian-Konto überein, das die Tokens erstellt hat.

  • Das richtige Produkt-/Module ist in Zustell-Linien.

  • Das Token ist aktuell und das Konto kann auf den gewünschten Inhalt zugreifen.

  • Jira verwendet read:jira-work, nicht nur granulare Jira-Scopes.

  • Confluence besitzt alle drei oben genannten Scopes.

  • Der MCP-Host wurde nach dem Ersetzen eines Tokens neu gestartet.

Scoped Tokens müssen die Atlassian-Produktgateways verwenden:

https://api.atlassian.com/ex/jira/{cloudId}
https://api.atlassian.com/ex/confluence/{cloudId}

Dieser Server verwendet die feste Cloud-Mandanten-ID in src/atlassian.mjs.

Unternehmenszertifikate

TLS-Inspektionsprodukte wie Zscaler signieren HTTPS-Datenverkehr mit einer Unternehmens-Zertifizierungsstelle neu. Windows mag dieser Zertifizierungsstelle vertrauen, während Node.js seine eigenen, gebündelten Zertifizierungsstellen verwendet. Auf unterstützten Node.js-Versionen wird dies in der MCP-Umgebung gehalten:

NODE_OPTIONS=--use-system-ca

Exportieren Sie die nicht abgelaufene Unternehmens-CA bei Bedarf als Base-64-PEM und setzen Sie NODE_EXTRA_CA_CERTS auf ihren absoluten Pfad. Deaktivieren Sie niemals die TLS-Überprüfung. WL. Die Nutzung von WSL hat.

WSL hat einen separaten Linux-Vertrauensspeicher. Exportieren Sie die entsprechenden Unternehmens- und Zwischenzertifikate deinstallatrices, speichern Sie sie mit der Erweiterung ".crt", kopieren Sie sie nach .txt .crt Nach /usr/local/share/ca-certificates/, rufen Sie dann auf:

sudo update-ca-certificates

Starten Sie WSL neu, bit. größer:

curl, Docker, Node.js or another HTTPS-Clients erneut versuchen.

Letzte Admin-Lin:

WSL und Systeme ohne grafische Benutzeroberfläche

Wenn Ihnen ein Desktop-Keyring (Schlüsselbund) wird, von eingesetzten Systemen aus:

mkdir -p ~/.config
install -m 600 /dev/null ~/.config/atlassian-jira-token
install -m 600 /dev/null ~/.config/atlassian-confluence-token
read -rsp "Jira API token: " token; echo
printf '%s' "$token" > ~/.config/atlassian-jira-token
read -rsp "Confluence API token: " token; echo
printf '%s' "$token" > ~/.config/atlassian-confluence-token
unset token

Konfigurieren Sie diese Variablen in der MCP-Umgebung:

ATLASSIAN_USER_EMAIL
ATLASSIAN_JIRA_TOKEN_FILE
ATLASSIAN_CONFLUENCE_TOKEN_FILE

ATLASSIAN_JIRA_API_TOKEN und ATLASSIAN_CONFLUENCE_API_TOKEN unterstützt für CI-Einsatz, prozessspezifische. Diese sollten Sie nicht in der Desktop-Konfiguration speichern.

Anmeldedaten rotieren oder entfernen

Ersetzen Sie gespeicherte Anmeldedaten:

npm run configure -- jira
npm run configure -- confluence

Löschen Sie gespeicherte Anmeldedaten:

npm run configure -- jira delete
npm run configure -- confluence delete

Lokales Löschen macht ein Token nicht ungültig. führen Sie den Widerruf separat über Atlassians Token-Verwaltungsseite durch.

Sicherheitsgrenze

Dieses Projekt nutzt Sicherheit in Tiefe:

  • Token-Durchsetzung: Die dokumentierten Tokens erhalten Atlassian lesen Scopes, sodass Atlassian keine Schreibvorgänge autorisiert.

  • Umsetzungsstärkung: Es werden nur vier enge Lesetools verfügbar gemacht. URLs und HTTP-Methode sind fix; Aufrufer können keinen anderen Host, Endpunkt oder keine andere Methode wählen.

  • Antwortkontrolle: Antworten sind größenbegrenzt, vermutliche Geheimnisse werden ausgeblendet und Projektionen können die anfälligen Dateneduzieren.

Tokens erben dennoch die Sicht des angemeldeten Benutzers: Das MCP kann nur Inhalte lesen, die das Konto bereits sehen kann. Ein bereitgestellter breiterer Token schwächt die Token-Ebene, ergänzt aber keinen Schreibvorgang an die Anwendung.

Lizenz

MIT

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

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/AlexSchaap-TMMC/atlassian-readonly-mcp'

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