Код SkyDeckAI
Сервер MCP, предоставляющий полный набор инструментов для рабочих процессов разработки на основе ИИ. Возможности включают операции с файловой системой, анализ кода с использованием tree-sitter для нескольких языков программирования, выполнение кода, извлечение веб-контента с преобразованием HTML в markdown, многодвижковый веб-поиск, поиск содержимого кода и извлечение системной информации. Разработан для расширения возможностей ИИ по оказанию помощи в задачах разработки программного обеспечения путем предоставления прямого доступа как к локальным, так и к удаленным ресурсам.
Ранее известный как MCP-Server-AIDD
Этот mcp-сервер ранее был известен как mcp-server-aidd . Он был переименован в skydeckai-code в честь команды SkyDeck.ai , создавшей это приложение вместе с East Agile . Но что еще важнее, мы поняли, что термин AI Driven Development (AIDD) просто не прижился. Люди не понимали с первого взгляда, о чем идет речь. И LLM тоже. «Код» был гораздо более интуитивным. А лингвистическая интуиция важна в мире агентного ИИ.
Установка
Related MCP server: AI Agent Template MCP Server
Настройка рабочего стола Клода
Добавьте в ваш claude_desktop_config.json :
Приложение-помощник SkyDeck AI
Если вы используете приложение SkyDeck AI Helper, вы можете найти «SkyDeckAI Code» и установить его.

Основные характеристики
Операции с файловой системой (чтение, запись, редактирование, перемещение, копирование, удаление)
Управление каталогами и обход
Анализ многоязыкового кода с использованием tree-sitter
Поиск содержимого кода с помощью сопоставления шаблонов регулярных выражений
Многоязычное выполнение кода с мерами безопасности
Извлечение веб-контента из API и веб-сайтов с преобразованием HTML в Markdown
Многосистемный веб-поиск с надежными резервными механизмами
Пакетные операции для параллельного и последовательного выполнения инструментов
Контроль безопасности с настраиваемыми границами рабочего пространства
Инструменты создания скриншотов и контекста экрана
Инструменты обработки изображений
Доступные инструменты (26)
Категория | Название инструмента | Описание |
Файловая система |
| Получить текущий путь к рабочему каталогу |
| Изменить рабочий каталог | |
| Создать новый каталог или вложенные каталоги | |
| Создать или перезаписать файл с новым содержимым | |
| Вносите построчные изменения в текстовый файл. | |
| Прочитать содержимое одного или нескольких файлов | |
| Получить список файлов и каталогов | |
| Переместить или переименовать файл или каталог | |
| Скопировать файл или каталог в новое место | |
| Поиск файлов, соответствующих шаблону имени | |
| Удалить файл или пустой каталог | |
| Получить подробные метаданные файла | |
| Получить рекурсивное древовидное представление каталогов | |
| Прочитать файл изображения как данные base64 | |
Инструменты кода |
| Анализ структуры кода в файлах |
| Найти текстовые шаблоны в файлах кода | |
| Запуск кода на разных языках | |
| Запуск скриптов shell/bash | |
Веб-инструменты |
| Получить контент с URL |
| Выполните поиск в Интернете | |
Инструменты экрана |
| Сделайте снимок экрана или окна |
| Список запущенных приложений | |
| Список всех открытых окон | |
Система |
| Получить подробную информацию о системе |
Утилита |
| Выполняйте несколько операций с инструментами одновременно |
| Документируйте обоснование без внесения изменений |
Подробная документация по инструменту
Базовые операции с файлами
Инструмент | Параметры | Возвраты |
прочитанный_файл | файлы: [{путь: строка, смещение?: целое число, предел?: целое число}] | Содержимое файла (один или несколько файлов) |
запись_файла | путь: строка, содержимое: строка | Подтверждение успеха |
переместить_файл | источник: строка, назначение: строка | Подтверждение успеха |
копировать_файл | источник: строка, назначение: строка, рекурсивный?: логическое значение | Подтверждение успеха |
удалить_файл | путь: строка | Подтверждение успеха |
получить_информацию_файла | путь: строка | Метаданные файла (размер, временные метки, разрешения) |
Использование интерфейса командной строки:
Сложные файловые операции
редактировать_файл
Редактирование файлов на основе шаблонов с поддержкой предварительного просмотра:
Возвращает: разницу изменений или предварительный просмотр в режиме пробного прогона.
Операции со справочниками
Инструмент | Параметры | Возвраты |
получить_разрешенный_каталог | никто | Текущий разрешенный путь к каталогу |
обновление_разрешенного_каталога | каталог: строка (абсолютный путь) | Подтверждение успеха |
список_каталогов | путь: строка | Список содержимого каталога |
создать_каталог | путь: строка | Подтверждение успеха |
поиск_файлов | шаблон: строка, путь?: строка, include_hidden?: логическое значение | Список соответствующих файлов |
Инструмент search_files ищет файлы по шаблону имени, а инструмент search_code ищет в содержимом файла, используя regex. Используйте search_files для поиска файлов с определенными именами или расширениями и search_code для поиска определенных текстовых шаблонов внутри файлов.
дерево_каталогов
Генерирует полную структуру каталогов:
Возвращает: древовидную структуру JSON содержимого каталога.
Использование интерфейса командной строки:
Анализ кода
codebase_mapper
Анализирует структуру исходного кода:
Возврат:
Классы и их методы
Функции и параметры
Структура модуля
Статистика организации кода
Наследственные отношения
Поддерживаемые языки:
Питон (.py)
JavaScript (.js/.jsx, .mjs, .cjs)
TypeScript (.ts/.tsx)
Ява (.java)
C++ (.cpp, .hpp, .cc)
Рубин (.rb, .rake)
Перейти (.перейти)
Ржавчина (.rs)
PHP (.php)
C# (.cs)
Котлин (.kt, .kts)
Использование интерфейса командной строки:
поисковый_код
Инструмент быстрого поиска контента с использованием регулярных выражений:
Параметры:
Параметр | Тип | Необходимый | Описание |
узоры | массив строк | Да | Список шаблонов регулярных выражений для поиска в содержимом файла |
включать | нить | Нет | Шаблон файла для включения (глобальный синтаксис, по умолчанию: "*") |
исключать | нить | Нет | Шаблон файла для исключения (синтаксис glob, по умолчанию: "") |
макс_результаты | целое число | Нет | Максимальное количество результатов для возврата по шаблону (по умолчанию: 100) |
с учетом регистра | булев | Нет | Учитывается ли регистр при поиске (по умолчанию: false) |
путь | нить | Нет | Базовый каталог для поиска (по умолчанию: "."). |
Возвращает: совпадающие строки, сгруппированные по файлам с номерами строк, отсортированные по времени изменения файла, начиная с самых новых файлов.
Этот инструмент использует ripgrep, когда он доступен для оптимальной производительности, с резервной реализацией Python. Он идеально подходит для поиска определенных шаблонов кода, таких как объявления функций, импорты, использование переменных или обработка ошибок.
Использование интерфейса командной строки:
Системная информация
Инструмент | Параметры | Возвраты |
получить_системную_информацию | никто | Подробная информация о системе |
Возврат:
Предоставляет важную системную информацию в понятном, удобном для чтения формате.
Использование интерфейса командной строки:
Контекст экрана и инструменты изображения
получить_активные_приложения
Возвращает список активных в данный момент приложений в системе пользователя.
Параметры:
Параметр | Тип | Необходимый | Описание |
с_подробностями | булев | Нет | Включать ли дополнительные сведения о каждой заявке (по умолчанию: false) |
Возврат:
Этот инструмент предоставляет ценную информацию о приложениях, которые в данный момент работают в системе пользователя, что может помочь в предоставлении более актуальной помощи.
получить_доступные_окна
Возвращает подробную информацию обо всех доступных окнах, отображаемых в данный момент на экране пользователя.
Возврат:
Этот инструмент помогает понять, что отображается на экране пользователя, и может использоваться для оказания контекстно-зависимой помощи.
снимок_скриншота
Делает снимок экрана экрана пользователя или определенного окна.
Параметры:
Параметр | Тип | Необходимый | Описание |
выходной_путь | нить | Нет | Путь, по которому следует сохранить снимок экрана (по умолчанию: сгенерированный путь) |
режим_захвата | объект | Нет | Указывает, что нужно захватить |
режим_захвата.тип | нить | Нет | Тип снимка экрана: «полный», «активное_окно» или «именованное_окно» (по умолчанию: «полный») |
режим_захвата.имя_окна | нить | Нет | Имя окна для захвата (обязательно, если тип — «named_window») |
Возврат:
Этот инструмент делает снимки экрана для визуализации, отладки или контекстно-зависимой помощи.
прочитать_файл_изображения
Считывает файл изображения из файловой системы и возвращает его содержимое в виде строки в кодировке base64.
Параметры:
Параметр | Тип | Необходимый | Описание |
путь | нить | Да | Путь к файлу изображения для чтения |
максимальный_размер | целое число | Нет | Максимальный размер файла в байтах (по умолчанию: 100 МБ) |
Возвращает: данные изображения в кодировке Base64, которые можно отобразить или обработать.
Этот инструмент поддерживает такие распространенные форматы изображений, как PNG, JPEG, GIF и WebP, а также автоматически изменяет размер изображений для оптимального просмотра.
Веб-инструменты
веб-забор
Извлекает контент из URL-адреса и при необходимости сохраняет его в файл.
Параметры:
Параметр | Тип | Необходимый | Описание |
URL-адрес | нить | Да | URL для загрузки контента (только http/https) |
заголовки | объект | Нет | Необязательные заголовки HTTP для включения в запрос |
тайм-аут | целое число | Нет | Максимальное время ожидания ответа (по умолчанию: 10 с) |
сохранить_в_файл | нить | Нет | Путь для сохранения содержимого ответа (в пределах разрешенного каталога) |
конвертировать_html_в_markdown | булев | Нет | Если установлено значение true, HTML-контент преобразуется в разметку для лучшей читабельности (по умолчанию: true) |
Возвращает: Содержимое ответа в виде текста с кодом статуса HTTP и информацией о размере. Для двоичного содержимого возвращает метаданные и сохраняет в файл, если запрошено. Когда включен convert_html_to_markdown, содержимое HTML автоматически преобразуется в формат markdown для лучшей читаемости.
Этот инструмент можно использовать для доступа к веб-API, получения документации или загрузки контента из Интернета с учетом ограничений по размеру (максимум 10 МБ) и ограничений безопасности.
Использование интерфейса командной строки:
веб-поиск
Выполняет надежный веб-поиск с использованием нескольких поисковых систем и возвращает краткие, релевантные результаты.
Параметры:
Параметр | Тип | Необходимый | Описание |
запрос | нить | Да | Поисковый запрос для обработки. Будьте конкретны для лучших результатов. |
num_results | целое число | Нет | Максимальное количество возвращаемых результатов поиска (по умолчанию: 10, максимум: 20) |
конвертировать_html_в_markdown | булев | Нет | Если true, содержимое будет преобразовано из HTML в markdown для лучшей читабельности (по умолчанию: true) |
поисковая_система | нить | Нет | Указывает, какую поисковую систему использовать: «auto» (по умолчанию), «bing» или «duckduckgo» |
Возвращает: Список результатов поиска, отформатированных в markdown, включая заголовки, URL-адреса и фрагменты для каждого результата. Результаты дедуплицируются и организуются иерархически для удобства чтения.
Этот инструмент использует многомоторный подход, который пробует разные поисковые системы с различными стратегиями анализа для обеспечения надежных результатов. Вы можете указать предпочтительную систему, но некоторые системы могут блокировать автоматизированный доступ, в этом случае инструмент будет переключаться на альтернативные системы при выборе «авто».
Использование интерфейса командной строки:
Вспомогательные инструменты
пакетные_инструменты
По возможности выполняйте несколько вызовов инструментов в одном запросе с параллельным выполнением.
Параметры:
Параметр | Тип | Необходимый | Описание |
описание | нить | Да | Краткое описание пакетной операции |
последовательный | булев | Нет | Следует ли запускать инструменты последовательно (по умолчанию: false) |
призывания | множество | Да | Список вызовов инструментов для выполнения |
вызовы[].tool | нить | Да | Название инструмента для вызова |
вызовы[].аргументы | объект | Да | Аргументы в пользу указанного инструмента |
Возвращает: Объединенные результаты всех вызовов инструмента, сгруппированные по инструменту со статусом успеха/ошибки для каждого. Результаты представлены в исходном порядке вызовов с понятными заголовками разделов.
Этот инструмент обеспечивает эффективное выполнение нескольких операций в одном запросе. Когда sequential имеет значение false (по умолчанию), инструменты выполняются параллельно для лучшей производительности. Когда sequential имеет значение true, инструменты выполняются по порядку, и если какой-либо инструмент выходит из строя, выполнение останавливается.
ВАЖНО : Все инструменты в пакете выполняются в одном и том же контексте рабочего каталога. Если инструмент создает каталог, а последующий инструмент должен работать внутри этого каталога, вы должны либо:
Используйте пути относительно текущего рабочего каталога (например, «project/src», а не просто «src»), или
Включить явный вызов инструмента для смены каталогов с помощью
update_allowed_directory
Использование интерфейса командной строки:
думать
Инструмент для сложных рассуждений и мозгового штурма без внесения изменений в репозиторий.
Параметры:
Параметр | Тип | Необходимый | Описание |
мысль | нить | Да | Ваши подробные мысли, анализ или процесс рассуждения |
Возвращает: Ваши мысли, отформатированные в формате Markdown, с примечанием о том, что это было упражнение на мышление.
Этот инструмент полезен для обдумывания сложных проблем, мозгового штурма решений или разработки планов внедрения без внесения каких-либо фактических изменений. Это отличный способ документировать процесс рассуждений, оценивать различные подходы или планировать многошаговую стратегию перед тем, как приступить к действиям.
Использование интерфейса командной строки:
Выполнение кода
выполнить_код
Выполняет код на различных языках программирования с учетом мер безопасности и ограничений.
Поддерживаемые языки:
Питон (python3)
JavaScript (Node.js)
Рубин
PHP
Идти
Ржавчина
Параметры:
Параметр | Тип | Необходимый | Описание |
язык | нить | Да | Используемый язык программирования |
код | нить | Да | Код для выполнения |
тайм-аут | целое число | Нет | Максимальное время выполнения (по умолчанию: 5 с) |
Использование интерфейса командной строки:
Требования:
Должны быть установлены соответствующие языковые среды выполнения.
Команды должны быть доступны в системной переменной PATH
Правильные разрешения для создания временных файлов
⚠️ Предупреждение о безопасности: этот инструмент выполняет произвольный код в вашей системе. Всегда:
Тщательно проверьте код перед выполнением
Понять цель кода и ожидаемый результат
Никогда не выполняйте ненадежный код
Помните о возможных системных воздействиях
Мониторинг результатов выполнения
выполнить_скрипт_оболочки
Выполняет скрипты оболочки (bash/sh) с мерами безопасности и ограничениями.
Параметры:
Параметр | Тип | Необходимый | Описание |
сценарий | нить | Да | Скрипт оболочки для выполнения |
тайм-аут | целое число | Нет | Максимальное время выполнения (по умолчанию: 300 с, макс: 600 с) |
Использование интерфейса командной строки:
Функции:
Использует /bin/sh для максимальной совместимости между системами
Выполняется в разрешенном каталоге
Раздельный вывод stdout и stderr
Правильная обработка ошибок и контроль времени ожидания
⚠️ Предупреждение о безопасности: этот инструмент выполняет произвольные команды оболочки в вашей системе. Всегда:
Тщательно просмотрите сценарий перед выполнением.
Понять цель сценария и ожидаемый результат
Никогда не выполняйте ненадежные скрипты
Помните о возможных системных воздействиях
Мониторинг результатов выполнения
Конфигурация
Файл конфигурации: ~/.skydeckai_code/config.json
Использование CLI
Базовая структура команды:
Отладка
Используйте MCP Inspector для отладки:
Безопасность
Операции ограничены настроенным разрешенным каталогом
Предотвращение обхода пути
Сохранение разрешений на файлы
Безопасное обращение с эксплуатацией
Предстоящие функции
Инструменты GitHub:
Генератор PR-описания
Обзор кода
Менеджер действий
Инструменты Pivotal Tracker:
Генератор историй
Менеджер историй
Статус разработки
В настоящее время находится в активной разработке. Возможности и API могут измениться.
Лицензия
Лицензия Apache 2.0 - см. ЛИЦЕНЗИЯ