DeepSource MCP Server
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
Related MCP server: CodeAlive MCP
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 ConfigFügen Sie eine der folgenden Konfigurationen zum Abschnitt
mcpServershinzu
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:
What issues are in the JavaScript files of my project?Dies würde das Tool project_issues mit Filtern verwenden:
{
"projectKey": "your-project-key",
"path": "src/",
"analyzerIn": ["javascript"],
"first": 10
}So filtern Sie Analyseläufe:
Show me the most recent Python analysis runsDies würde das Tool project_runs mit Filtern verwenden:
{
"projectKey": "your-project-key",
"analyzerIn": ["python"],
"first": 5
}Für Codequalitätsmetriken:
What's my code coverage percentage? Is it meeting our thresholds?Dazu würde das Tool quality_metrics verwendet:
{
"projectKey": "your-project-key",
"shortcodeIn": ["LCV", "BCV", "CCV"]
}Für Sicherheitskonformitätsberichte:
Are we compliant with OWASP Top 10 security standards?Dazu würde das Tool compliance_report verwendet:
{
"projectKey": "your-project-key",
"reportType": "OWASP_TOP_10"
}So legen Sie Schwellenwerte fest:
Update our line coverage threshold to 80%Dies würde das Tool update_metric_threshold verwenden:
{
"projectKey": "your-project-key",
"repositoryId": "repo-id",
"metricShortcode": "LCV",
"metricKey": "AGGREGATE",
"thresholdValue": 80
}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:
{
"mcpServers": {
"deepsource": {
"command": "npx",
"args": [
"-y",
"deepsource-mcp-server@1.1.0"
],
"env": {
"DEEPSOURCE_API_KEY": "your-deepsource-api-key",
"LOG_FILE": "/tmp/deepsource-mcp.log",
"LOG_LEVEL": "DEBUG"
}
}
}
}Docker
{
"mcpServers": {
"deepsource": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"DEEPSOURCE_API_KEY",
"-e",
"LOG_FILE=/tmp/deepsource-mcp.log",
"-v",
"/tmp:/tmp",
"sapientpants/deepsource-mcp-server"
],
"env": {
"DEEPSOURCE_API_KEY": "your-deepsource-api-key",
"LOG_FILE": "/tmp/deepsource-mcp.log"
}
}
}
}NPX
{
"mcpServers": {
"deepsource": {
"command": "npx",
"args": [
"-y",
"deepsource-mcp-server@1.1.0"
],
"env": {
"DEEPSOURCE_API_KEY": "your-deepsource-api-key"
}
}
}
}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:
git clone https://github.com/sapientpants/deepsource-mcp-server.git
cd deepsource-mcp-serverInstallieren Sie Abhängigkeiten:
pnpm installErstellen Sie das Projekt:
pnpm run buildClaude Desktop konfigurieren
{
"mcpServers": {
"deepsource": {
"command": "node",
"args": [
"/path/to/deepsource-mcp-server/dist/index.js"
],
"env": {
"DEEPSOURCE_API_KEY": "your-deepsource-api-key"
}
}
}
}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_FILEauf einen Dateipfad, in den Protokolle geschrieben werden sollenSetzen Sie
LOG_LEVELaufDEBUG(das ist die Standardeinstellung)Überprüfen Sie die Protokolldatei auf detaillierte Fehlerinformationen
Beispielkonfiguration:
{
"mcpServers": {
"deepsource": {
"command": "npx",
"args": ["-y", "deepsource-mcp-server@1.1.0"],
"env": {
"DEEPSOURCE_API_KEY": "your-api-key",
"LOG_FILE": "/tmp/deepsource-mcp.log",
"LOG_LEVEL": "DEBUG"
}
}
}
}Überprüfen Sie dann die Protokolldatei:
tail -f /tmp/deepsource-mcp.logHäufige Probleme
Authentifizierungsfehler : Stellen Sie sicher, dass Ihr
DEEPSOURCE_API_KEYkorrekt ist und über die erforderlichen Berechtigungen verfügtEs werden keine Protokolle angezeigt : Überprüfen Sie, ob der
LOG_FILEPfad beschreibbar ist und das übergeordnete Verzeichnis vorhanden istTool-Fehler : Überprüfen Sie die Protokolldatei auf detaillierte Fehlermeldungen und Stapelverfolgungen
Lizenz
MIT
Maintenance
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
- FlicenseDqualityDmaintenanceA comprehensive Model Context Protocol server for advanced code analysis that provides tools for syntax analysis, dependency visualization, and AI-assisted development workflow support.287

CodeAlive MCPofficial
AlicenseNot gradedqualityAmaintenanceA Model Context Protocol server that enhances AI agents by providing deep semantic understanding of codebases, enabling more intelligent interactions through advanced code search and contextual awareness.88MIT- -licenseBqualityNot gradedmaintenanceA Model Context Protocol server that enables AI assistants to fetch and understand GitHub repository documentation on-demand from DeepWiki during conversations.3
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that analyzes application codebases with real-time file watching, providing AI assistants like Claude with deep insights into project structure, code patterns, and architecture.MIT
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
A Model Context Protocol (MCP) application for automated GitHub PR analysis and issue management.…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/sapientpants/deepsource-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server