DeepSource MCP-Server
Ein Model Context Protocol (MCP)-Server, der in DeepSource integriert ist, um KI-Assistenten Zugriff auf Codequalitätsmetriken, Probleme und Analyseergebnisse zu bieten.
Überblick
Der DeepSource MCP Server ermöglicht KI-Assistenten die Interaktion mit den Codequalitätsanalysefunktionen von DeepSource über das Model Context Protocol. Diese Integration ermöglicht KI-Assistenten:
Abrufen von Codemetriken und Analyseergebnissen
Zugriffs- und Filterprobleme
Qualitätsstatus prüfen
Analysieren Sie die Projektqualität im Zeitverlauf
Merkmale
DeepSource-API-Integration : Verbindung mit DeepSource über die GraphQL-API
MCP-Protokollunterstützung : Implementiert das Model Context Protocol für die Integration von KI-Assistenten
Qualitätsmetriken und Schwellenwerte : Abrufen und Verwalten von Codequalitätsmetriken mit Schwellenwerten
Sicherheits-Compliance-Berichte : Zugriff auf OWASP Top 10, SANS Top 25 und MISRA-C Compliance-Berichte
Abhängigkeitsschwachstellen : Zugriff auf Informationen zu Sicherheitsschwachstellen in Abhängigkeiten
TypeScript/Node.js : Erstellt mit TypeScript für Typsicherheit und moderne JavaScript-Funktionen
Plattformübergreifend : Funktioniert unter Linux, macOS und Windows
Robuste Fehlerbehandlung : Umfassende Fehlerbehandlung für Netzwerk-, Authentifizierungs- und Analyseprobleme
Verwendung mit Claude Desktop
Bearbeiten Sie
claude_desktop_config.json
:Öffnen Sie Claude Desktop
Gehen Sie zu
Settings
->Developer
->Edit Config
Fügen Sie eine der folgenden Konfigurationen zum Abschnitt
mcpServers
hinzu
Starten Sie Claude Desktop neu, um die Änderungen zu übernehmen
Beispielabfragen
Sobald die Verbindung hergestellt ist, kann Ihr KI-Assistent DeepSource-Daten mit Abfragen wie den folgenden verwenden:
Dies würde das Tool project_issues
mit Filtern verwenden:
So filtern Sie Analyseläufe:
Dies würde das Tool project_runs
mit Filtern verwenden:
Für Codequalitätsmetriken:
Dazu würde das Tool quality_metrics
verwendet:
Für Sicherheitskonformitätsberichte:
Dazu würde das Tool compliance_report
verwendet:
So legen Sie Schwellenwerte fest:
Dies würde das Tool update_metric_threshold
verwenden:
Umgebungsvariablen
Der Server unterstützt die folgenden Umgebungsvariablen:
DEEPSOURCE_API_KEY
(erforderlich): Ihr DeepSource-API-Schlüssel zur AuthentifizierungLOG_FILE
(optional): Pfad zu einer Datei, in die Protokolle geschrieben werden sollen. Wenn nicht angegeben, werden keine Protokolle geschrieben.LOG_LEVEL
(optional): Minimale Protokollebene zum Schreiben (DEBUG, INFO, WARN, ERROR). Standardmäßig DEBUG
Beispielkonfiguration mit Protokollierung:
Docker
NPX
Verfügbare Tools
Der DeepSource MCP-Server bietet die folgenden Tools:
projects
: Listet alle verfügbaren DeepSource-Projekte aufParameter:
Keine erforderlichen Parameter
project_issues
: Holen Sie sich Probleme aus einem DeepSource-Projekt mit FilterungParameter:
projectKey
(erforderlich) – Die eindeutige Kennung für das DeepSource-ProjektPaginierungsparameter:
offset
(optional) – Anzahl der Elemente, die bei der Paginierung übersprungen werden sollenfirst
(optional) – Anzahl der zurückzugebenden Elemente (Standardwert: 10)after
(optional) - Cursor für die Vorwärtspaginierungbefore
(optional) - Cursor für die Rückwärtspaginierunglast
(optional) – Anzahl der Elemente, die vor dem Cursor „vor“ zurückgegeben werden sollen (Standard: 10)
Filterparameter:
path
(optional) – Filtern Sie Probleme nach einem bestimmten DateipfadanalyzerIn
(optional) – Filtern Sie Probleme nach bestimmten Analysatoren (z. B. ["python", "javascript"])tags
(optional) – Probleme nach Tags filtern
project_runs
: Listenanalyseläufe für ein DeepSource-Projekt mit FilterungParameter:
projectKey
(erforderlich) – Die eindeutige Kennung für das DeepSource-ProjektPaginierungsparameter:
offset
(optional) – Anzahl der Elemente, die bei der Paginierung übersprungen werden sollenfirst
(optional) – Anzahl der zurückzugebenden Elemente (Standardwert: 10)after
(optional) - Cursor für die Vorwärtspaginierungbefore
(optional) - Cursor für die Rückwärtspaginierunglast
(optional) – Anzahl der Elemente, die vor dem Cursor „vor“ zurückgegeben werden sollen (Standard: 10)
Filterparameter:
analyzerIn
(optional) – Filter, der von bestimmten Analysatoren ausgeführt wird (z. B. ["python", "javascript"])
run
: Rufen Sie eine bestimmte Analyse ab, die über ihre runUid oder commitOid ausgeführt wird.Parameter:
runIdentifier
(erforderlich) – Die runUid (UUID) oder commitOid (Commit-Hash) zur Identifizierung des Laufs
recent_run_issues
: Ruft Probleme aus der letzten Analyse ab, die auf einem bestimmten Zweig mit Paginierungsunterstützung ausgeführt wurde.Parameter:
projectKey
(erforderlich) – Die eindeutige Kennung für das DeepSource-ProjektbranchName
(erforderlich) – Der Name des Zweigs, aus dem der letzte Lauf abgerufen werden sollPaginierungsparameter:
first
(optional) – Anzahl der zurückzugebenden Probleme (Standardwert: 10)after
(optional) - Cursor für die Vorwärtspaginierunglast
(optional) – Anzahl der Probleme, die vor einem Cursor zurückgegeben werden sollen (Standard: 10)before
(optional) - Cursor für die Rückwärtspaginierung
Widerrufsfolgen:
Informationen zum letzten Lauf auf der Filiale
Aktuelle Probleme im Projekt (Hinweis: Probleme treten auf Repository-Ebene auf, nicht laufspezifisch)
Paginierungsinformationen einschließlich Cursor und Seitenstatus
Metadaten zum Lauf und zum Zweig
dependency_vulnerabilities
: Abhängigkeitsschwachstellen aus einem DeepSource-Projekt abrufenParameter:
projectKey
(erforderlich) – Die eindeutige Kennung für das DeepSource-ProjektPaginierungsparameter:
offset
(optional) – Anzahl der Elemente, die bei der Paginierung übersprungen werden sollenfirst
(optional) – Anzahl der zurückzugebenden Elemente (Standardwert: 10)after
(optional) - Cursor für die Vorwärtspaginierungbefore
(optional) - Cursor für die Rückwärtspaginierunglast
(optional) – Anzahl der Elemente, die vor dem Cursor „vor“ zurückgegeben werden sollen (Standard: 10)
quality_metrics
: Holen Sie Qualitätsmetriken aus einem DeepSource-Projekt mit FilterungParameter:
projectKey
(erforderlich) – Die eindeutige Kennung für das DeepSource-ProjektshortcodeIn
(optional) – Filtern Sie Metriken nach bestimmten Shortcodes (z. B. ["LCV", "BCV"])
Gibt Kennzahlen zurück wie:
Linienabdeckung (LCV)
Filialabdeckung (BCV)
Dokumentationsumfang (DCV)
Prozentsatz doppelter Codes (DDP)
Jede Metrik umfasst aktuelle Werte, Schwellenwerte und den Pass/Fail-Status
update_metric_threshold
: Aktualisieren Sie den Schwellenwert für eine bestimmte QualitätsmetrikParameter:
projectKey
(erforderlich) – Die eindeutige Kennung für das DeepSource-ProjektrepositoryId
(erforderlich) – Die GraphQL-Repository-IDmetricShortcode
(erforderlich) – Der Shortcode der zu aktualisierenden MetrikmetricKey
(erforderlich) – Der Sprach- oder Kontextschlüssel für die MetrikthresholdValue
(optional) - Der neue Schwellenwert oder null, um den Schwellenwert zu entfernen
Beispiel: Festlegen eines Schwellenwerts für die Zeilenabdeckung von 80 %: metricShortcode="LCV", metricKey="AGGREGATE", thresholdValue=80
update_metric_setting
: Aktualisieren Sie die Einstellungen für eine QualitätsmetrikParameter:
projectKey
(erforderlich) – Die eindeutige Kennung für das DeepSource-ProjektrepositoryId
(erforderlich) – Die GraphQL-Repository-IDmetricShortcode
(erforderlich) – Der Shortcode der zu aktualisierenden MetrikisReported
(erforderlich) – Ob die Metrik gemeldet werden sollisThresholdEnforced
(erforderlich) – Ob der Schwellenwert erzwungen werden soll (kann bei Prüfungen fehlschlagen)
compliance_report
: Erhalten Sie Sicherheits-Compliance-Berichte von einem DeepSource-Projekt
Parameter:
projectKey
(erforderlich) – Die eindeutige Kennung für das DeepSource-ProjektreportType
(erforderlich) – Der Typ des abzurufenden Compliance-Berichts ( OWASP Top 10 , SANS Top 25 oder MISRA-C )
Gibt umfassende Daten zur Sicherheitskonformität zurück, darunter:
Statistiken zu Sicherheitsproblemen nach Kategorie und Schweregrad
Konformitätsstatus (bestanden/nicht bestanden)
Trenddaten, die Veränderungen im Zeitverlauf zeigen
Analyse und Empfehlungen zur Verbesserung der Sicherheitslage
Entwicklung
Klonen Sie das Repository:
Installieren Sie Abhängigkeiten:
Erstellen Sie das Projekt:
Claude Desktop konfigurieren
Voraussetzungen
Node.js 20 oder höher
pnpm 10.7.0 oder höher
Docker (für Container-Builds)
Skripte
pnpm run build
– Erstellen Sie den TypeScript-Codepnpm run start
- Starten Sie den Serverpnpm run dev
- Starten Sie den Server im Entwicklungsmoduspnpm run test
– Tests ausführenpnpm run lint
– ESLint ausführenpnpm run format
- Code mit Prettier formatieren
Fehlerbehebung
Debug-Protokollierung aktivieren
Wenn Probleme auftreten, aktivieren Sie die Debug-Protokollierung, um ausführliche Informationen anzuzeigen:
Setzen Sie die Umgebungsvariable
LOG_FILE
auf einen Dateipfad, in den Protokolle geschrieben werden sollenSetzen Sie
LOG_LEVEL
aufDEBUG
(das ist die Standardeinstellung)Überprüfen Sie die Protokolldatei auf detaillierte Fehlerinformationen
Beispielkonfiguration:
Überprüfen Sie dann die Protokolldatei:
Häufige Probleme
Authentifizierungsfehler : Stellen Sie sicher, dass Ihr
DEEPSOURCE_API_KEY
korrekt ist und über die erforderlichen Berechtigungen verfügtEs werden keine Protokolle angezeigt : Überprüfen Sie, ob der
LOG_FILE
Pfad beschreibbar ist und das übergeordnete Verzeichnis vorhanden istTool-Fehler : Überprüfen Sie die Protokolldatei auf detaillierte Fehlermeldungen und Stapelverfolgungen
Lizenz
MIT
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
Ein Model Context Protocol-Server, der in DeepSource integriert ist, um KI-Assistenten Zugriff auf Codequalitätsmetriken, Probleme und Analyseergebnisse zu gewähren.
Related Resources
Related MCP Servers
- AsecurityFlicenseAqualityA Model Context Protocol server that enables AI models to interact with SourceSync.ai's knowledge management platform for managing documents, ingesting content from various sources, and performing semantic searches.Last updated -2515
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI agents to retrieve and understand entire codebases at once, providing tools to analyze local workspaces or remote GitHub repositories.Last updated -354MIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that enhances AI-generated code quality through comprehensive analysis across 10 critical dimensions, helping identify issues before they become problems.Last updated -167Apache 2.0
- -securityFlicense-qualityA comprehensive Model Context Protocol server implementation that enables AI assistants to interact with file systems, databases, GitHub repositories, web resources, and system tools while maintaining security and control.Last updated -361