Polarion MCP Server
Polarion MCP Server
Ein Open-Source-, installierbarer Polarion Model Context Protocol (MCP)-Server mit Schreibschutz. Er liest LiveDocs, Arbeitselemente und Trace-Verknüpfungen über die SOAP-Web-Services der Ziel-Polarion-Installation und führt nach ausdrücklicher Bestätigung Erstellen, Ändern und Löschen aus.
Windows bietet Ein-Klick-Installation und DPAPI-Anmeldedatenverschlüsselung. Linux/macOS können Node.js und Umgebungsvariablen für den manuellen Betrieb verwenden. Das Repository enthält keine Konten, Passwörter, Tokens, Cookies, private Serveradressen, Projekt-IDs oder Anforderungstexte.
Hauptfunktionen
Tool | Funktion | Nebenwirkung |
| Prüft WSDL, Anmeldedaten und SOAP-Authentifizierung | Keine |
| Liest LiveDoc/Modul-Metadaten | Keine |
| Liest Arbeitselemente im Dokument seitenweise | Keine |
| Liest Arbeitselement, Beschreibung und Verknüpfungen nach ID | Keine |
| Führt projekteingeschränkte Lucene-Abfragen aus | Keine; erfordert Abfrageberechtigung |
| Erstellt Arbeitselement im Projekt oder in angegebenem LiveDoc | Erstellen |
| Ändert selektiv Titel, Beschreibung, Typ oder Status | Ändern |
| Löscht Arbeitselement und erkennt Polarion-Tombstone | Destruktiv |
Die vollständigen Validierungsgrenzen finden Sie in der Funktionsabdeckungsmatrix.
Related MCP server: permission-aware-mcp
Funktionsweise
Der MCP-Prozess scraped keine Webseiten, liest keine Browser-Cookies und umgeht keine Polarion-Berechtigungen. Die Browser-Autoverknüpfung übergibt lediglich die URL des aktuellen Polarion-Tabs an den MCP; das Lesen und Schreiben von Anforderungsdaten erfolgt weiterhin vollständig über SOAP MCP.
Windows-Ein-Klick-Installation
Voraussetzungen
Windows 10/11
Node.js 20 oder höher
Git
Codex CLI (
codex-Befehl verfügbar)Erreichbarer Polarion-Server mit geöffnetem
/polarion/ws/services/*?wsdlPolarion-Konto oder PAT mit entsprechenden Projektberechtigungen
1. Klonen
git clone https://github.com/suzike/polarion-mcp-server.git
cd polarion-mcp-server2. Installation und Registrierung
Interaktive Installation:
.\scripts\install.ps1Der Installer:
Prüft Node.js, npm und Codex CLI;
Führt
npm ci, strikte Kompilierung und Tests aus;Fragt Polarion-Adresse und Authentifizierungsmethode ab;
Erfasst Passwort oder PAT in der Windows-Sicherheitsanmeldeinformationen-Aufforderung;
Sichert vorhandene
~/.codex/config.toml;Registriert den benutzerbezogenen
polarion-MCP;Verifiziert, dass Codex die neue Konfiguration lesen kann.
Beispiel für nicht-interaktive Konfiguration (Anmeldedaten werden weiterhin über die Sicherheitsaufforderung eingegeben):
.\scripts\install.ps1 `
-BaseUrl "https://polarion.example.com/polarion" `
-DefaultProject "MY_PROJECT" `
-DefaultDocumentLocation "Requirements/Software Requirements" `
-AuthMode password `
-ForceNach der Installation Codex neu starten.
3. Umgebung prüfen
.\scripts\doctor.ps1
codex mcp get polarionBehandlung von Anmeldedaten
Anmeldedaten gelangen niemals in das Repository oder in config.toml. Der Windows-Installationsablauf schreibt standardmäßig:
%LOCALAPPDATA%\PolarionMcp\credentials.jsonDabei wird das Secret mit Windows DPAPI an den aktuellen Windows-Benutzer gebunden verschlüsselt, die Datei-ACL deaktiviert die Vererbung und erlaubt nur dem aktuellen Benutzer den Zugriff. Beim MCP-Start injiziert der Launcher das Secret temporär in die Umgebung des Unterprozesses und löscht es beim Beenden sofort.
Anmeldedaten neu setzen:
.\scripts\setup-credentials.ps1 -AuthMode password
# 或
.\scripts\setup-credentials.ps1 -AuthMode access_tokenVerschiedene Polarion-Server können die PAT-SOAP-Anmeldung deaktivieren. Verwenden Sie in diesem Fall die Passwort-Authentifizierung oder kontaktieren Sie den Administrator, um die AccessToken-Authentifizierung zu aktivieren.
Verwendung
Nach dem Neustart von Codex können Sie direkt sagen:
检查 Polarion 连接状态。
读取项目 MY_PROJECT 的需求文档 Requirements/Software Requirements。
读取工作项 REQ-123,并列出它的追踪链接。
查询 MY_PROJECT 中状态为 approved 的 requirement,最多返回 20 条。Automatische Verknüpfung mit dem aktuellen Browserprojekt
In einem MCP-Host mit Browsersteuerung können Sie sagen:
读取当前浏览器打开的 Polarion 文档前 20 条需求。Der Host extrahiert #/project/{projectId}/... aus der URL des aktuell aktiven Tabs und übergibt die vollständige URL an den Parameter polarion_url des Tools. Der MCP validiert, dass die URL mit dem konfigurierten Polarion-Dienst gleicher Herkunft ist, und löst automatisch Projekt- und Wiki-Dokumentpositionen auf.
Wenn der Host keine Browserfunktionen hat, mehrere nicht unterscheidbare Tabs vorhanden sind oder der aktuelle Tab nicht Polarion ist, geben Sie explizit project_id an.
Erstellen, Ändern und Löschen
Schreibtools erlauben keine stille Verwendung des Standardprojekts. Sie müssen explizit project_id oder polarion_url übergeben und einen präzisen Bestätigungswert angeben:
Operation | Bestätigungswert |
Erstellen |
|
Ändern |
|
Löschen |
|
Beispieldialog:
在 MY_PROJECT 创建一条 task,标题为“接口检查”。执行前先给我预览并询问确认。Der Host sollte zuerst Projekt, Typ, Titel und Beschreibung anzeigen; erst nach ausdrücklicher Bestätigung durch den Benutzer wird die Bestätigungszeichenfolge übergeben. Polarion führt weiterhin Kontoberechtigungs-, Typkonfigurations-, Workflow- und Auditprüfungen durch.
Manueller Betrieb und andere MCP-Hosts
Build:
npm ci
npm run buildWindows empfiehlt den sicheren Launcher:
$env:POLARION_BASE_URL = "https://polarion.example.com/polarion"
$env:POLARION_PROJECT_ID = "MY_PROJECT" # 可选
$env:POLARION_NODE_PATH = (Get-Command node).Source
.\scripts\start-secure.ps1Linux/macOS können Umgebungsvariablen über einen Passwortmanager oder Prozessmanager bereitstellen und dann ausführen:
export POLARION_BASE_URL="https://polarion.example.com/polarion"
export POLARION_AUTH_MODE="access_token"
export POLARION_ACCESS_TOKEN="$(your-secret-manager read polarion-token)"
node dist/index.jsSchreiben Sie das Secret nicht in eine versionierte .env-Datei oder in die MCP-JSON-Konfiguration.
Aktualisierung und Deinstallation
Aktualisierung:
git pull --ff-only
npm ci
npm test
npm run buildRegistrierung entfernen, aber verschlüsselte Anmeldedaten behalten:
.\scripts\uninstall.ps1Gleichzeitig die verschlüsselten Anmeldedaten des aktuellen Windows-Benutzers löschen:
.\scripts\uninstall.ps1 -RemoveCredentialsVerifikation und Entwicklung
npm test # 严格编译 + 单元/契约测试
npm run smoke # MCP 协议和 8 个工具清单
npm audit --omit=dev # 生产依赖漏洞检查Authentifizierungs-Integrationstests erfordern das selbstständige Setzen nicht-geheimer Zielparameter:
$env:POLARION_BASE_URL = "https://polarion.example.com/polarion"
$env:POLARION_TEST_PROJECT_ID = "SANDBOX_PROJECT"
$env:POLARION_TEST_DOCUMENT_LOCATION = "Requirements/Test Document"
$env:POLARION_TEST_WORK_ITEM_ID = "REQ-1"
npm run integration:secureEchte Schreib-Selbsttests verweigern standardmäßig die Ausführung. Nur nach ausdrücklicher Autorisierung und Auswahl eines verwerfbaren Projekts setzen:
$env:POLARION_TEST_PROJECT_ID = "SANDBOX_PROJECT"
$env:POLARION_CONFIRM_LIVE_WRITE_TEST = "CREATE_UPDATE_DELETE:SANDBOX_PROJECT"
npm run integration:write-self-testDieser Test erstellt ein temporäres Element auf Projektebene, ändert es und löscht es; er fügt es nicht aktiv in ein LiveDoc ein. Führen Sie Schreib-Selbsttests nicht gegen offizielle Anforderungsdokumente aus.
Bekannte Bedingungen und Einschränkungen
polarion_query_work_itemserfordert die entsprechende SOAP-Abfrageberechtigung; einige Konten können bekannte IDs direkt lesen, aber keine globalen Lucene-Abfragen ausführen.Arbeitselementtypen, Status und Workflows variieren je nach Polarion-Projekt; das Erstellungstool bietet keinen allgemeinen Standardtyp.
Die SOAP-Anfrage zum Erstellen in einem LiveDoc hat Vertragstests, aber vor der Veröffentlichung wurde keine destruktive Validierung in offiziellen Dokumenten durchgeführt.
Die automatische Browserverknüpfung wird vom MCP-Host orchestriert, nicht vom MCP direkt aus dem Browser gelesen.
Das Windows-DPAPI-Installationsskript unterstützt nur Windows; andere Systeme verwenden Umgebungsvariablen oder binden den System-Keychain selbst an.
Dokumentation
License
MIT © 2026 suzike
This server cannot be deployed
Maintenance
Related MCP Connectors
Read-only checks for proposed orders against evidence and policy; no trading or payment authority.
Preventive human-approval write-gate for AI agents: writes commit only after a human approves.
Read-only finance and operations controls for AI agents with evidence and safe next actions.
Read-only Frasma MCP: profile, knowledge search, diagnostic handoff. No email.
Related MCP Servers
- FlicenseAqualityDmaintenanceEnables safe GitHub automation by queuing write operations for admin approval before execution.6-
- FlicenseAqualityDmaintenanceEnables secure file system operations (read, write, delete) and simulated command execution with server-enforced permission policies, risk assessment, and human-in-the-loop approval.5-
- FlicenseNot gradedqualityBmaintenanceEnables creation and updates of Salesforce Product2 records via the REST API with write-only scoped access, requiring confirmation before actual writes.-
- FlicenseNot gradedqualityBmaintenanceEnables local or HTTP-based MCP interactions with a mock SAP Cloud ALM environment, enforcing read/write capability separation and fail-closed security policies for future SAP Cloud ALM connectivity.-