Integrations
Supports code analysis using tree-sitter for C++ files (.cpp, .hpp, .cc)
Provides Git operations including repository initialization, status checking, adding files, resetting, checkout, commit, diff, and log viewing
Upcoming features include GitHub tools such as PR Description Generator, Code Review, and Actions Manager
SkyDeckAI-Code
Ein MCP-Server, der umfassende Tools für KI-gesteuerte Entwicklungsabläufe bietet. Zu den Funktionen gehören Dateisystemoperationen, Codeanalyse mit Tree-Sitter für mehrere Programmiersprachen, Codeausführung, Webinhaltsabruf mit HTML-zu-Markdown-Konvertierung, Multi-Engine-Websuche, Codeinhaltssuche und Systeminformationsabruf. Entwickelt, um die KI-Unterstützung bei Softwareentwicklungsaufgaben durch direkten Zugriff auf lokale und Remote-Ressourcen zu verbessern.
Früher bekannt als MCP-Server-AIDD
Dieser MCP-Server hieß früher mcp-server-aidd
. Er wurde in skydeckai-code
umbenannt, um dem Team von SkyDeck.ai für die Entwicklung dieser Anwendung zusammen mit East Agile Anerkennung zu zollen. Wichtiger noch: Wir stellten fest, dass sich der Begriff „AI Driven Development“ (AIDD) einfach nicht durchsetzte. Die Leute verstanden nicht auf Anhieb, worum es ging. Und LLMs auch nicht. „Code“ war deutlich intuitiver. Und sprachliche Intuition ist in der Welt der agentenbasierten KI wichtig.
Installation
Claude Desktop-Setup
Fügen Sie zu Ihrer claude_desktop_config.json
hinzu:
SkyDeck AI Helper App
Wenn Sie die SkyDeck AI Helper-App verwenden, können Sie nach „SkyDeckAI Code“ suchen und ihn installieren.
Hauptmerkmale
- Dateisystemoperationen (Lesen, Schreiben, Bearbeiten, Verschieben, Kopieren, Löschen)
- Verzeichnisverwaltung und -durchquerung
- Mehrsprachige Codeanalyse mit Tree-Sitter
- Code-Inhaltssuche mit Regex-Mustervergleich
- Mehrsprachige Codeausführung mit Sicherheitsmaßnahmen
- Abrufen von Webinhalten von APIs und Websites mit HTML-zu-Markdown-Konvertierung
- Multi-Engine-Websuche mit zuverlässigen Fallback-Mechanismen
- Stapelverarbeitung für die parallele und serielle Toolausführung
- Sicherheitskontrollen mit konfigurierbaren Arbeitsbereichsgrenzen
- Screenshot- und Bildschirmkontexttools
- Bildbearbeitungstools
Verfügbare Werkzeuge (26)
Kategorie | Werkzeugname | Beschreibung |
---|---|---|
Dateisystem | get_allowed_directory | Holen Sie sich den aktuellen Arbeitsverzeichnispfad |
update_allowed_directory | Ändern des Arbeitsverzeichnisses | |
create_directory | Erstellen Sie ein neues Verzeichnis oder verschachtelte Verzeichnisse | |
write_file | Erstellen oder Überschreiben einer Datei mit neuem Inhalt | |
edit_file | Zeilenbasierte Änderungen an einer Textdatei vornehmen | |
read_file | Lesen Sie den Inhalt einer oder mehrerer Dateien | |
list_directory | Liste der Dateien und Verzeichnisse abrufen | |
move_file | Verschieben oder Umbenennen einer Datei oder eines Verzeichnisses | |
copy_file | Kopieren einer Datei oder eines Verzeichnisses an einen neuen Speicherort | |
search_files | Suche nach Dateien, die einem Namensmuster entsprechen | |
delete_file | Löschen einer Datei oder eines leeren Verzeichnisses | |
get_file_info | Erhalten Sie detaillierte Dateimetadaten | |
directory_tree | Erhalten Sie eine rekursive Baumansicht der Verzeichnisse | |
read_image_file | Lesen einer Bilddatei als Base64-Daten | |
Code-Tools | codebase_mapper | Analysieren Sie die Codestruktur über mehrere Dateien hinweg |
search_code | Suchen von Textmustern in Codedateien | |
execute_code | Führen Sie Code in verschiedenen Sprachen aus | |
execute_shell_script | Führen Sie Shell-/Bash-Skripte aus | |
Webtools | web_fetch | Abrufen von Inhalten von einer URL |
web_search | Führen Sie eine Websuche durch | |
Bildschirmtools | capture_screenshot | Machen Sie einen Screenshot des Bildschirms oder Fensters |
get_active_apps | Liste der laufenden Anwendungen | |
get_available_windows | Alle geöffneten Fenster auflisten | |
System | get_system_info | Erhalten Sie detaillierte Systeminformationen |
Dienstprogramm | batch_tools | Führen Sie mehrere Werkzeugvorgänge gleichzeitig aus |
think | Dokumentieren Sie die Begründung, ohne Änderungen vorzunehmen |
Detaillierte Tool-Dokumentation
Grundlegende Dateivorgänge
Werkzeug | Parameter | Rückgaben |
---|---|---|
Datei lesen | Dateien: [{Pfad: Zeichenfolge, Offset?: Ganzzahl, Limit?: Ganzzahl}] | Dateiinhalt (einzelne oder mehrere Dateien) |
Datei schreiben | Pfad: Zeichenfolge, Inhalt: Zeichenfolge | Erfolgsbestätigung |
Datei verschieben | Quelle: Zeichenfolge, Ziel: Zeichenfolge | Erfolgsbestätigung |
Datei kopieren | Quelle: Zeichenfolge, Ziel: Zeichenfolge, rekursiv?: Boolesch | Erfolgsbestätigung |
Datei löschen | Pfad: Zeichenfolge | Erfolgsbestätigung |
Dateiinformationen abrufen | Pfad: Zeichenfolge | Dateimetadaten (Größe, Zeitstempel, Berechtigungen) |
CLI-Nutzung:
Komplexe Dateioperationen
Datei bearbeiten
Musterbasierte Dateibearbeitung mit Vorschauunterstützung:
Gibt zurück: Diff der Änderungen oder Vorschau im Probelaufmodus.
Verzeichnisvorgänge
Werkzeug | Parameter | Rückgaben |
---|---|---|
get_allowed_directory | keiner | Aktuell zulässiger Verzeichnispfad |
update_allowed_directory | Verzeichnis: Zeichenfolge (absoluter Pfad) | Erfolgsbestätigung |
Verzeichnisliste | Pfad: Zeichenfolge | Verzeichnisinhaltsliste |
Verzeichnis erstellen | Pfad: Zeichenfolge | Erfolgsbestätigung |
Suchdateien | Muster: Zeichenfolge, Pfad?: Zeichenfolge, include_hidden?: Boolesch | Liste der übereinstimmenden Dateien |
Das Tool search_files
sucht nach Dateien anhand von Namensmustern, während search_code
mithilfe von regulären Ausdrücken innerhalb von Dateiinhalten sucht. Verwenden Sie search_files
für die Suche nach Dateien mit bestimmten Namen oder Erweiterungen und search_code
für die Suche nach bestimmten Textmustern in Dateien.
Verzeichnisbaum
Generiert eine vollständige Verzeichnisstruktur:
Gibt zurück: JSON-Baumstruktur des Verzeichnisinhalts.
CLI-Nutzung:
Code-Analyse
Codebase_Mapper
Analysiert die Quellcodestruktur:
Widerrufsfolgen:
- Klassen und ihre Methoden
- Funktionen und Parameter
- Modulstruktur
- Code-Organisationsstatistiken
- Vererbungsbeziehungen
Unterstützte Sprachen:
- Python (.py)
- JavaScript (.js/.jsx, .mjs, .cjs)
- TypeScript (.ts/.tsx)
- Java (.java)
- C++ (.cpp, .hpp, .cc)
- Ruby (.rb, .rake)
- Gehen Sie (.go)
- Rost (.rs)
- PHP (.php)
- C# (.cs)
- Kotlin (.kt, .kts)
CLI-Nutzung:
Suchcode
Schnelles Inhaltssuchtool mit regulären Ausdrücken:
Parameter:
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
Muster | Array von Zeichenfolgen | Ja | Liste der regulären Ausdrucksmuster, nach denen im Dateiinhalt gesucht werden soll |
enthalten | Schnur | NEIN | Einzuschließendes Dateimuster (Glob-Syntax, Standard: "*") |
ausschließen | Schnur | NEIN | Auszuschließendes Dateimuster (Glob-Syntax, Standard: "") |
maximale Ergebnisse | ganze Zahl | NEIN | Maximale Anzahl der zurückzugebenden Ergebnisse pro Muster (Standard: 100) |
case_sensitive | Boolescher Wert | NEIN | Ob bei der Suche zwischen Groß- und Kleinschreibung unterschieden wird (Standard: „false“) |
Weg | Schnur | NEIN | Basisverzeichnis für die Suche (Standard: ".") |
Gibt zurück: Übereinstimmende Zeilen, gruppiert nach Datei mit Zeilennummern, sortiert nach Dateiänderungszeit, mit den neuesten Dateien zuerst.
Dieses Tool verwendet, sofern verfügbar, ripgrep für optimale Leistung mit einer Python-Fallback-Implementierung. Es eignet sich ideal zum Auffinden spezifischer Codemuster wie Funktionsdeklarationen, Importen, Variablenverwendungen oder Fehlerbehandlung.
CLI-Nutzung:
Systeminformationen
Werkzeug | Parameter | Rückgaben |
---|---|---|
get_system_info | keiner | Umfassende Systemdetails |
Widerrufsfolgen:
Bietet wichtige Systeminformationen in einem übersichtlichen, lesbaren Format.
CLI-Nutzung:
Bildschirmkontext und Bildtools
get_active_apps
Gibt eine Liste der derzeit aktiven Anwendungen auf dem System des Benutzers zurück.
Parameter:
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
mit_Details | Boolescher Wert | NEIN | Ob zusätzliche Details zu jeder Anwendung eingeschlossen werden sollen (Standard: „false“) |
Widerrufsfolgen:
Dieses Tool bietet wertvolle Informationen zu den Anwendungen, die derzeit auf dem System des Benutzers ausgeführt werden, und kann so dazu beitragen, relevantere Hilfe bereitzustellen.
verfügbare_Fenster abrufen
Gibt detaillierte Informationen zu allen verfügbaren Fenstern zurück, die derzeit auf dem Bildschirm des Benutzers angezeigt werden.
Widerrufsfolgen:
Dieses Tool hilft zu verstehen, was auf dem Bildschirm des Benutzers sichtbar ist, und kann für kontextbezogene Unterstützung verwendet werden.
Screenshot erstellen
Erstellt einen Screenshot des Benutzerbildschirms oder eines bestimmten Fensters.
Parameter:
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
Ausgabepfad | Schnur | NEIN | Pfad, in dem der Screenshot gespeichert werden soll (Standard: generierter Pfad) |
Capture-Modus | Objekt | NEIN | Gibt an, was erfasst werden soll |
capture_mode.type | Schnur | NEIN | Art des Screenshots: „vollständig“, „aktives Fenster“ oder „benanntes Fenster“ (Standard: „vollständig“) |
Capture_Mode.Fenstername | Schnur | NEIN | Name des zu erfassenden Fensters (erforderlich, wenn der Typ „named_window“ ist) |
Widerrufsfolgen:
Dieses Tool erfasst Screenshots zur Visualisierung, zum Debuggen oder für kontextbezogene Unterstützung.
Bilddatei lesen
Liest eine Bilddatei aus dem Dateisystem und gibt ihren Inhalt als Base64-codierte Zeichenfolge zurück.
Parameter:
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
Weg | Schnur | Ja | Pfad zur zu lesenden Bilddatei |
maximale Größe | ganze Zahl | NEIN | Maximale Dateigröße in Bytes (Standard: 100 MB) |
Gibt zurück: Base64-codierte Bilddaten, die angezeigt oder verarbeitet werden können.
Dieses Tool unterstützt gängige Bildformate wie PNG, JPEG, GIF und WebP und passt die Größe von Bildern automatisch für eine optimale Anzeige an.
Webtools
web_fetch
Ruft Inhalte von einer URL ab und speichert sie optional in einer Datei.
Parameter:
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
URL | Schnur | Ja | URL zum Abrufen von Inhalten (nur http/https) |
Überschriften | Objekt | NEIN | Optionale HTTP-Header, die in die Anfrage aufgenommen werden sollen |
Time-out | ganze Zahl | NEIN | Maximale Wartezeit auf eine Antwort (Standard: 10 s) |
in Datei speichern | Schnur | NEIN | Pfad zum Speichern des Antwortinhalts (innerhalb des zulässigen Verzeichnisses) |
HTML in Markdown konvertieren | Boolescher Wert | NEIN | Wenn „true“, wird HTML-Inhalt zur besseren Lesbarkeit in Markdown konvertiert (Standard: „true“) |
Rückgabe: Antwortinhalt als Text mit HTTP-Statuscode und Größeninformationen. Bei binären Inhalten werden Metadaten zurückgegeben und auf Anfrage in einer Datei gespeichert. Wenn convert_html_to_markdown aktiviert ist, wird HTML-Inhalt zur besseren Lesbarkeit automatisch in das Markdown-Format konvertiert.
Mit diesem Tool können Sie auf Web-APIs zugreifen, Dokumentationen abrufen oder Inhalte aus dem Web herunterladen, wobei Größenbeschränkungen (max. 10 MB) und Sicherheitseinschränkungen eingehalten werden.
CLI-Nutzung:
Websuche
Führt eine robuste Websuche mit mehreren Suchmaschinen durch und gibt präzise, relevante Ergebnisse zurück.
Parameter:
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
Abfrage | Schnur | Ja | Die zu verarbeitende Suchanfrage. Für bessere Ergebnisse sollten Sie spezifisch sein. |
Anzahl_Ergebnisse | ganze Zahl | NEIN | Maximale Anzahl der zurückzugebenden Suchergebnisse (Standard: 10, Max: 20) |
HTML in Markdown konvertieren | Boolescher Wert | NEIN | Wenn „true“, wird der Inhalt zur besseren Lesbarkeit von HTML in Markdown konvertiert (Standard: „true“) |
Suchmaschine | Schnur | NEIN | Gibt an, welche Suchmaschine verwendet werden soll: „auto“ (Standard), „bing“ oder „duckduckgo“ |
Gibt eine Liste der Suchergebnisse im Markdown-Format zurück, einschließlich Titel, URLs und Snippets für jedes Ergebnis. Die Ergebnisse werden dedupliziert und zur leichteren Lesbarkeit hierarchisch angeordnet.
Dieses Tool verwendet einen Multi-Engine-Ansatz und testet verschiedene Suchmaschinen mit unterschiedlichen Analysestrategien, um zuverlässige Ergebnisse zu gewährleisten. Sie können eine bevorzugte Suchmaschine angeben. Einige Suchmaschinen blockieren jedoch möglicherweise den automatisierten Zugriff. In diesem Fall greift das Tool bei Auswahl von „Auto“ auf alternative Suchmaschinen zurück.
CLI-Nutzung:
Hilfsprogramme
batch_tools
Führen Sie mehrere Toolaufrufe in einer einzigen Anfrage mit paralleler Ausführung aus, wenn möglich.
Parameter:
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
Beschreibung | Schnur | Ja | Kurzbeschreibung des Batch-Vorgangs |
sequentiell | Boolescher Wert | NEIN | Ob die Tools nacheinander ausgeführt werden sollen (Standard: „false“) |
Aufrufe | Array | Ja | Liste der auszuführenden Toolaufrufe |
Aufrufe[].tool | Schnur | Ja | Name des aufzurufenden Tools |
Aufrufe[].Argumente | Objekt | Ja | Argumente für das angegebene Werkzeug |
Rückgabe: Kombinierte Ergebnisse aller Toolaufrufe, gruppiert nach Tool mit Erfolgs-/Fehlerstatus. Die Ergebnisse werden in der ursprünglichen Aufrufreihenfolge mit eindeutigen Abschnittsüberschriften dargestellt.
Dieses Tool ermöglicht die effiziente Ausführung mehrerer Operationen in einer einzigen Anfrage. Wenn sequential
auf „false“ (Standard) gesetzt ist, werden die Tools zur Leistungssteigerung parallel ausgeführt. Wenn sequential
auf „true“ gesetzt ist, werden die Tools der Reihe nach ausgeführt. Bei einem Ausfall eines Tools wird die Ausführung abgebrochen.
WICHTIG : Alle Tools im Batch werden im selben Arbeitsverzeichnis ausgeführt. Wenn ein Tool ein Verzeichnis erstellt und ein nachfolgendes Tool in diesem Verzeichnis arbeiten muss, müssen Sie Folgendes tun:
- Verwenden Sie Pfade relativ zum aktuellen Arbeitsverzeichnis (z. B. „project/src“ statt nur „src“), oder
- Fügen Sie einen expliziten Toolaufruf zum Ändern von Verzeichnissen mit
update_allowed_directory
ein.
CLI-Nutzung:
denken
Ein Tool für komplexes Denken und Brainstorming, ohne Änderungen am Repository vorzunehmen.
Parameter:
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
Gedanke | Schnur | Ja | Ihre detaillierten Gedanken, Analysen oder Argumentation |
Gibt zurück: Ihre Gedanken im Markdown-Format mit einem Hinweis, dass dies eine Denkübung war.
Dieses Tool eignet sich hervorragend, um komplexe Probleme zu durchdenken, Lösungen zu finden oder Implementierungspläne zu erstellen, ohne tatsächliche Änderungen vorzunehmen. Es eignet sich hervorragend, um Ihren Denkprozess zu dokumentieren, verschiedene Ansätze zu bewerten oder eine mehrstufige Strategie zu planen, bevor Sie Maßnahmen ergreifen.
CLI-Nutzung:
Codeausführung
Code ausführen
Führt Code in verschiedenen Programmiersprachen mit Sicherheitsmaßnahmen und Einschränkungen aus.
Unterstützte Sprachen:
- Python (python3)
- JavaScript (Node.js)
- Rubin
- PHP
- Gehen
- Rost
Parameter:
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
Sprache | Schnur | Ja | Zu verwendende Programmiersprache |
Code | Schnur | Ja | Auszuführender Code |
Time-out | ganze Zahl | NEIN | Maximale Ausführungszeit (Standard: 5 s) |
CLI-Nutzung:
Anforderungen:
- Die jeweiligen Sprachlaufzeiten müssen installiert sein
- Befehle müssen im Systempfad verfügbar sein
- Richtige Berechtigungen für die Erstellung temporärer Dateien
⚠️ Sicherheitswarnung: Dieses Tool führt beliebigen Code auf Ihrem System aus. Immer:
- Überprüfen Sie den Code vor der Ausführung gründlich
- Verstehen Sie den Zweck und das erwartete Ergebnis des Codes
- Führen Sie niemals nicht vertrauenswürdigen Code aus
- Seien Sie sich der möglichen Systemauswirkungen bewusst
- Überwachen der Ausführungsausgabe
führe Shell-Skript aus
Führt Shell-Skripte (bash/sh) mit Sicherheitsmaßnahmen und Einschränkungen aus.
Parameter:
Parameter | Typ | Erforderlich | Beschreibung |
---|---|---|---|
Skript | Schnur | Ja | Auszuführendes Shell-Skript |
Time-out | ganze Zahl | NEIN | Maximale Ausführungszeit (Standard: 300 s, Max: 600 s) |
CLI-Nutzung:
Merkmale:
- Verwendet /bin/sh für maximale Kompatibilität zwischen Systemen
- Wird innerhalb des zulässigen Verzeichnisses ausgeführt
- Separate stdout- und stderr-Ausgabe
- Korrekte Fehlerbehandlung und Timeout-Kontrollen
⚠️ Sicherheitswarnung: Dieses Tool führt beliebige Shell-Befehle auf Ihrem System aus. Immer:
- Überprüfen Sie das Skript vor der Ausführung gründlich
- Verstehen Sie den Zweck und das erwartete Ergebnis des Skripts
- Führen Sie niemals nicht vertrauenswürdige Skripte aus
- Seien Sie sich der möglichen Systemauswirkungen bewusst
- Überwachen der Ausführungsausgabe
Konfiguration
Konfigurationsdatei: ~/.skydeckai_code/config.json
CLI-Nutzung
Grundlegende Befehlsstruktur:
Debuggen
Verwenden Sie MCP Inspector zum Debuggen:
Sicherheit
- Vorgänge sind auf das konfigurierte zulässige Verzeichnis beschränkt
- Verhinderung der Pfaddurchquerung
- Beibehaltung der Dateiberechtigungen
- Sichere Bedienung
Kommende Funktionen
- GitHub-Tools:
- PR-Beschreibungsgenerator
- Code-Überprüfung
- Aktionsmanager
- Pivotal Tracker-Tools:
- Story-Generator
- Story-Manager
Entwicklungsstatus
Derzeit in aktiver Entwicklung. Funktionen und API können sich ändern.
Lizenz
Apache-Lizenz 2.0 – siehe LIZENZ
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
AiDD MCP Server bietet KI-Agenten eine sichere Schnittstelle zur Durchführung von Dateisystemoperationen und Codeanalysen und verbessert so KI-gestützte Entwicklungsabläufe über mehrere Programmiersprachen hinweg.
Related Resources
Related MCP Servers
- -securityAlicense-qualityAn MCP server that implements Claude Code-like functionality, allowing the AI to analyze codebases, modify files, execute commands, and manage projects through direct file system interactions.Last updated -132PythonMIT License
- -securityAlicense-qualityAn enhanced MCP server that grants AI assistants the ability to execute terminal commands on a user's system with improved security controls, designed for use in controlled environments.Last updated -PythonMIT License
- -securityAlicense-qualityAn MCP server that analyzes codebases and generates contextual prompts, making it easier for AI assistants to understand and work with code repositories.Last updated -2PythonMIT License
- AsecurityAlicenseAqualityAn MCP server that supercharges AI assistants with powerful tools for software development, enabling research, planning, code generation, and project scaffolding through natural language interaction.Last updated -116TypeScriptMIT License