miyagi
🥋 miyagi
Терпеливый, геймифицированный, с голосовым управлением MCP-репетитор по программированию. Команды выполняете вы. Он тренирует, исправляет, подхватывает при падениях и ведёт счёт.
Натирай воском, снимай воском. miyagi никогда не делает работу за вас. Он выдаёт следующую команду, объясняет её на вашем уровне и превращает каждый результат в урок. Каждый запуск возвращается в виде учебной карточки: где вы находитесь на дорожной карте, разбор Что/Как/Компромиссы с учётом вашего опыта, ментальная модель на Mermaid, ловушки, в которые попадаются люди, подобранные материалы и тест на активное припоминание. Всё это озвучивается через встроенный речевой движок вашей ОС.
Почему его безопасно устанавливать
Он выполняет shell-команды на вашей машине, поэтому его стоит прочитать, прежде чем довериться.
Ничего катастрофического не выполняется.
rm -rf,dd of=/dev/*, fork-бомбы,curl | sh, принудительные push иchmod -R 777распознаются по шаблону и принудительно переводятся в dry-run независимо от того, что утверждает вызывающая модель. Экран защищает от запутавшегося ИИ, а не только от невнимательного пользователя, поэтому вердикт пересчитывается заново, а не доверяется флагуis_dangerous, который был передан.Список запретов — это подстраховка, а не песочница. Настоящая граница — это собственный запрос на подтверждение в вашем MCP-клиенте, где вы читаете команду перед её выполнением. Экран существует для более узкого случая, когда этот запрос обрабатывается плохо: что-то явно разрушительное предлагается тому, кто кликает, не глядя.
Сбои учат, а не роняют сервер. Ненулевой код выхода возвращает диагностику с лестницей устранения неполадок. Сервер никогда не выбрасывает исключений.
Ограничено по ресурсам. Таймаут 60 секунд, лимит вывода 4 МБ, никаких сетевых запросов, телеметрии, API-ключей и аккаунтов.
Достаточно маленький, чтобы проверить его вручную. Две зависимости времени выполнения — MCP SDK и zod — в одном исходном файле, который можно прочитать за один присест.
Related MCP server: EduChain MCP Server
Установка
Укажите вашему MCP-клиенту на npx — он скачает всё при первом запуске:
npx -y miyagi-mcpИли установите глобально, что даст вам команду miyagi:
npm install -g miyagi-mcpgit clone https://github.com/c00p75/miyagi.git
cd miyagi
npm install
npm run build # emits dist/miyagi.js
npm testЗатем используйте "command": "node", "args": ["<ABS_PATH>/dist/miyagi.js"] в конфиге ниже.
Настройка MCP-клиента
Три строки, одинаковые везде. Никаких ключей, аккаунтов, всё работает локально.
{
"mcpServers": {
"miyagi": {
"command": "npx",
"args": ["-y", "miyagi-mcp"]
}
}
}Куда их вставлять:
Клиент | Файл |
Claude Desktop (macOS) |
|
Claude Desktop (Windows) |
|
Cursor |
|
AntiGravity / Windsurf |
|
Для Claude Code — одна команда:
claude mcp add miyagi -- npx -y miyagi-mcpПерезапустите клиент и попробуйте: "Поставь мне дорожную карту «Разработчик бэкенда» и объясни docker compose config."
Что внутри
Компонент | Что делает |
Аудио | Неблокирующая очередь FIFO, чтобы строки никогда не перебивали друг друга. Markdown, URL и эмодзи удаляются перед озвучиванием, а системный движок проверяется перед вызовом, так что отсутствующая программа молча отключается, а не роняет сервер. |
Дорожная карта | Состояние хранится как категория, дорожная карта, тема, шаг N из M, с предложением следующей команды для текущей позиции. |
Геймификация | 15 XP за команду, 25 за правильный тест с множителем серии, |
Прогресс | Сохраняется в |
Безопасность | Девять классов катастроф проверяются независимо от вызывающего кода, все принудительно переводятся в dry-run. |
Заметки | Экспорт в |
Речевые движки
Платформа | Движок |
macOS |
|
Windows | PowerShell |
Linux |
|
Пользователям Linux, которым нужен звук: sudo apt install speech-dispatcher.
Инструменты
quick_config: переключить уровень мастерства (Junior/Mid/Senior), категорию, трек, тему или голос за один вызов. Передайтеreset_progress: true, чтобы сбросить сохранённые XP в состояние первого запуска.set_active_roadmap: задать категорию, дорожную карту, тему и счётчики шаговget_next_roadmap_command: следующая команда для копирования, сadvance: trueдля перехода на шаг вперёдconfigure_voice: включить/выключить звук, задать слов в минуту, произнести тестовую фразуget_user_stats: XP, уровень, звание, серии, значки, лестница званийrun_teaching_command: выполнить или прогнать в dry-run команду и вернуть учебную карточкуverify_quiz_answer: оценить тест, обновить серию и XP, озвучить обратную связьexport_roadmap_notes: записатьROADMAP_PROGRESS.md
Где хранится прогресс
~/.miyagi/profile.json, содержащий XP, уровень, серии, значки, ваш уровень мастерства, настройки голоса и позицию на дорожной карте. Переопределите каталог через MIYAGI_HOME — так же тесты обходят настоящий профиль.
Файл считается недоверенным при чтении, потому что его можно править вручную, а сбой может его обрезать. Всё, что не парсится, отбрасывается в пользу свежего профиля, а не вызывает ошибку; значения вне диапазона зажимаются, а не отвергаются; уровень пересчитывается из XP, а не читается напрямую — так файл, утверждающий уровень 99 при 40 XP, будет исправлен. Запись идёт во временный файл с последующим переименованием, так что прерванная запись оставляет предыдущий профиль нетронутым.
Разработка
npm install
npm run typecheck
npm test # node:test, no test framework to install
npm run buildCI прогоняет проверку типов, тесты и реальное рукопожатие по stdio на Node 18, 20 и 22.
Ограничения, о которых стоит знать
Команды выполняются с вашими правами в вашем каталоге. Без контейнера, ограниченного пользователя и фильтра syscall. Это правильно для локального учебного инструмента, которым управляет владелец, и это первое, что нужно изменить, если он когда-нибудь будет принимать недоверенный ввод.
Долго выполняющиеся или интерактивные команды — это для вашего собственного терминала. Ограничение в 60 секунд оборвёт их.
Вопрос о том, действительно ли XP и серии удерживают человека на дорожной карте, остаётся открытым. Файл прогресса — то, что делает его проверяемым.
Лицензия
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
- AlicenseAqualityAmaintenanceEnables interactive LeetCode practice with AI-guided authentication, problem solving, solution submission, and learning mode.2417311MIT
- FlicenseNot gradedqualityDmaintenanceEnables AI-powered educational content generation, including multiple-choice questions and lesson plans, through a modular command platform.9
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to present interactive code walkthroughs with voice narration, opening files, highlighting code, and showing inline explanations with synchronized text-to-speech.57MIT
- AlicenseAqualityDmaintenanceProvides educational tools for developers to learn programming concepts, review code, get best practices, compare approaches, generate learning paths, debug, explain code, and quiz themselves.8MIT
Related MCP Connectors
Build, version, review, and export websites, web apps, and games from a conversation.
Adaptive plan/build/review cycles for AI coding assistants, persisted across sessions.
Persistent memory and cross-session learning for AI coding assistants (hosted remote MCP).
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/c00p75/miyagi'
If you have feedback or need assistance with the MCP directory API, please join our Discord server