sunpeak CLI
sunpeak тестирует любой MCP-сервер в локальных копиях сред ChatGPT и Claude и собирает MCP-приложения на React
- 218 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Запускает тесты и локальные серверы, evals тратят токены по вашим ключам провайдеров
- Живые тесты управляют браузером и отправляют запросы в настоящий ChatGPT под вашим аккаунтом
Установка
Ручная установка
npx sunpeak test init --server http://localhost:8000/mcpДобавляет тесты к существующему MCP-серверу на любом языке. Для нового приложения используйте `npx sunpeak new`.
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Запускает тесты и локальные серверы, evals тратят токены по вашим ключам провайдеров
- Живые тесты управляют браузером и отправляют запросы в настоящий ChatGPT под вашим аккаунтом
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
sunpeak решает два вопроса разработчика MCP-приложений: как не проверять результат вручную в ChatGPT и Claude и как не писать с нуля инфраструктуру. Он воспроизводит среды ChatGPT и Claude локально, поэтому прогоны e2e и визуальных тестов идут в CI без аккаунтов и кредитов, а правки видны с горячей перезагрузкой. Тестовый слой состоит из четырех частей: e2e через Playwright и инспектор sunpeak, визуальные регрессии, живые тесты в настоящем ChatGPT и evals с вызовом инструментов в нескольких моделях (GPT-4o, GPT-4o-mini, o4-mini, Claude Sonnet, Gemini 2.0 Flash) через Vercel AI SDK. Каждый случай запускается N раз на модель, чтобы проверить, что описания инструментов и схемы работают и на дешевых моделях. Фикстуры симуляций в JSON фиксируют состояния инструментов для воспроизводимых проверок. Тесты подходят к серверу на любом языке: `npx sunpeak test init --server http://localhost:8000/mcp` создает каркас для Python, Go, Rust или TypeScript. Команда `sunpeak inspect` открывает отдельный инспектор любого MCP-сервера. Для новых проектов есть фреймворк (`npx sunpeak new`) с автообнаружением инструментов и ресурсов из файловой системы и хуками `useToolData`, `useAppState`, `useTheme` и `useDisplayMode`. В репозитории лежат два скилла для агентов: `create-sunpeak-app` и `test-mcp-server`.
Для кого. Авторам MCP-серверов и приложений для ChatGPT и Claude, которым надоело кликать по каждой правке в двух хостах, и командам, которые хотят гонять тесты инструментов в CI.
Подходит, если
- MCP-сервер написан на Python, Go или Rust, и для него нужен каркас e2e-тестов одной командой `sunpeak test init`
- Интерфейс MCP-приложения должен выглядеть одинаково в ChatGPT и Claude при разных темах и режимах отображения
- Описания инструментов надо проверить на нескольких моделях по N прогонов, включая дешевые
- Баг интерфейса фиксируется JSON-фикстурой, чтобы регрессия не вернулась
- Сервер отлаживается через отдельный инспектор: `sunpeak inspect` открывает его для любого MCP-сервера
Не подходит, если
- Вы пишете серверы без интерфейсов и приложений: хватит обычного набора для MCP-инспектора и юнит-тестов
- Нет ключей к моделям OpenAI, Anthropic или Google для evals: без них работают только тесты без моделей
- Нужен фреймворк не на React и TypeScript: шаблон и хуки рассчитаны на них
Пример запроса к агенту
Добавь в этот MCP-сервер тесты через sunpeak test init с адресом http://localhost:8000/mcp и покажи результат команды sunpeak test --e2eОграничения
- Evals вызывают реальные модели через Vercel AI SDK, поэтому нужны ключи провайдеров и тратятся токены, а каждый случай идет N раз на модель.
- Живые тесты открывают браузер, спрашивают настоящий ChatGPT и сверяют ответ, а для этого нужен аккаунт ChatGPT.
- ChatGPT-приложения теперь публикуются как плагины, но архитектура остается прежней: приложение работает как MCP-сервис.
- Версии зависят от релиза (в README упомянуты MCP Apps SDK 2.0.4 и клиентская часть 2.4), а код, читающий контекст обработчика напрямую, требует `extra.mcpReq`.
Как отключить. Удалите зависимость `sunpeak` из `package.json`, каталоги `tests/sunpeak/` и конфигурацию Playwright, созданные командой `sunpeak test init`, а скиллы `create-sunpeak-app` и `test-mcp-server` уберите из папки скиллов агента.
Частые вопросы
Как добавить тесты sunpeak к существующему MCP-серверу?
Выполните `npx sunpeak test init --server http://localhost:8000/mcp`, либо `--server "python server.py"` для сервера, запускаемого командой. Для проектов не на JavaScript команда создает отдельный каталог `tests/sunpeak/` со своим `package.json`.
Чем sunpeak отличается от MCP Inspector?
MCP Inspector отлаживает сервер вручную. sunpeak тоже имеет инспектор (`sunpeak inspect`), но добавляет воспроизведение сред ChatGPT и Claude, e2e и визуальные тесты, живые тесты и evals на нескольких моделях.
Какие слои тестов есть в sunpeak?
Четыре: e2e через Playwright, визуальные регрессии, живые тесты в реальном ChatGPT и evals, где модели вызывают инструменты. Фикстуры симуляций в JSON фиксируют состояния инструментов.
На каких моделях работают evals?
В README названы GPT-4o, GPT-4o-mini, o4-mini, Claude Sonnet и Gemini 2.0 Flash через Vercel AI SDK. Каждый случай прогоняется N раз на модель.
Как создать новое MCP-приложение?
Выполните `npx sunpeak new`: команда создает проект, запускает сервер разработки с HMR и открывает инспектор на `localhost:3000`. Инструменты, ресурсы и симуляции находятся автоматически по файловой структуре.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыMCP Interviewer проверяет MCP-сервер до подключения агента: лимиты провайдеров, тесты инструментов и отчет в Markdown.
kogiQA MCP дает агенту браузер, который находит элементы страницы без селекторов, для отладки веб-приложений и e2e-тестов
MCP-сервер, агент и скиллы для сквозных UI-тестов: агент управляет компьютером через компьютерное зрение на облачных машинах
Команда npx @wong2/mcp-cli запускает MCP-серверы из конфига Claude Desktop, показывает инструменты и вызывает их из терминала.
MCP-сервер на Playwright от сообщества: браузерная автоматизация, скриншоты, эмуляция устройств и генерация тестового кода
Официальный отладчик MCP-серверов: веб-интерфейс, CLI для автоматизации и терминальный интерфейс в одном пакете
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| sunpeak (эта карточка) | нет | 218 | |
| MCP Inspector | нет | 11 243 | официальный отладчик MCP-серверов с веб-интерфейсом, CLI и терминальным интерфейсом |
| MCPJam Inspector | нет | 2 302 | локальный инструмент для проверки и отладки MCP-серверов с чатом и прогонами оценок |
Коротко о README
README представляет sunpeak как сервер-независимый тестовый фреймворк и фреймворк полного стека для MCP-приложений и сообщает версии SDK. Дальше идут причины использовать его и три сценария: фреймворк приложений со структурой проекта, тестовый фреймворк с примерами e2e на Playwright и evals, а также отдельный инспектор для MCP-серверов любого языка.