Launchdog.dev
официальныйЗапустите свой продукт на еженедельной доске запусков прямо из вашего агента программирования: составьте описание, подтвердите домен, добавьте значок и забронируйте неделю.
Что можно делать с Launchdog Dev MCP?
- Создать черновик листинга с вашего сайта — Создайте продукт по URL сайта, и сервер подготовит черновик названия, слогана, описания, использованных инструментов и логотипа.
- Проверить и сохранить текст листинга — Редактируйте название, слоган, описание, категории и использованные инструменты, с возможностью проверить перед сохранением.
- Проверить готовность к запуску — Узнайте, что осталось сделать до запуска продукта, включая требование к бейджу для бесплатного запуска.
- Сравнить недели запуска — Просмотрите следующие 12 недель запуска с оставшимися местами и ценами, с бесплатными и платными вариантами рядом.
- Забронировать неделю запуска — Запланируйте продукт на неделю после вашего подтверждения и получите ссылку на оплату для платных тарифов, которую вы передадите автору.
- Отслеживать запуск и отвечать на него — Получайте статус, голоса, рейтинг и ежедневную статистику, а также публикуйте ответы на комментарии к вашему собственному запуску.
Размещённый MCP-сервер
npx add-mcp 'https://launchdog.dev/mcp'Устанавливается в Claude Code, Codex, Cursor и другие
Документация
Справочник по MCP
Всё, что мейкер делает со своим листингом, происходит через один MCP-сервер: черновик, выбор бесплатной или платной недели, планирование, оплата, отслеживание, ответы — плюс бейдж, только для бесплатного запуска (он же верифицирует домен). Streamable HTTP, без сохранения состояния. Каждый результат содержит next_steps, а каждая ошибка — элемент с code, field, к которому она относится, и его fix.
Клиенты с поддержкой промптов также получают launch_my_product — управляемый поток в виде слэш-команды. Подключите своего агента →
Аутентификация
OAuth 2.1 с PKCE — единственный способ войти. Ваш клиент регистрируется сам и открывает браузер для подтверждения; вставлять ничего не нужно. Отключить агента можно в любой момент в настройках.
| scope | разрешает |
|---|---|
| read | Просматривать свои листинги, запуски, статистику и комментарии к ним. |
| write | Создавать и редактировать листинги, верифицировать домен, бронировать, переносить и отменять запуски, отвечать на комментарии. Никогда не может оплачивать или голосовать. |
Инструменты мейкера
https://launchdog.dev/mcp — Вход через OAuth. Каждому инструменту нужен scope read или write.
Инструмента для голосования нет, и нет способа комментировать чужие запуски.
whoami
Начните здесь. Возвращает ваш аккаунт Launchdog (с вашим публичным профилем мейкера), Maker Pass, каждый лимит с остатком, ваши продукты с их чек-листами запуска (продолжить с первого открытого шага), открытые заказы и действия, доступные только в вебе (оплата, голосование).
scope: read read-only idempotent
Без аргументов.
launch_checklist
Что осталось до запуска продукта. Без тарифа: сам листинг (текст, логотип, проверка листинга) — это всё, что нужно для платного запуска. С тарифом: для бесплатного также бейдж Launchdog на сайте (только для бесплатного запуска; он верифицирует домен). Каждый открытый пункт говорит, как его исправить.
scope: read read-only idempotent
create_product
Создаёт листинг по URL вашего сайта. Сервер читает страницу и составляет черновик названия, слогана, описания, инструментов built-with и логотипа. Повторный вызов с тем же сайтом возвращает тот же продукт. Затем проверьте черновик с мейкером и сохраните изменения через update_product.
scope: write idempotent reaches the web
get_product
Продукт с его медиа (id для remove_media), верификацией домена (через бейдж), состоянием бейджа и проверки листинга (с последней ошибкой), его предстоящим запуском и его чек-листом.
scope: read read-only idempotent
update_product
Редактирует листинг. Правила: название ≤ 40 символов; слоган ≤ 60; описание 150–1 200 символов простого текста (без рекламных слов вроде «революционный»); до 3 категорий; до 8 инструментов built-with. Передайте dry_run: true, чтобы проверить без сохранения. Пока листинг не забронирован или не верифицирован, он приватный, поэтому сохраните его и дайте мейкеру его listing_url для просмотра на странице (открыть его может только он, войдя в систему). Новый url отклоняется после бронирования и сбрасывает верификацию домена и бейдж (снова вызовите check_badge). Меняются только переданные поля.
scope: write idempotent
archive_product
Убирает продукт с вашего аккаунта (освобождает слот продукта и его домен). Отклоняется, пока у него забронирован запуск.
scope: write destructive idempotent
add_media
Добавляет логотип или скриншот по URL изображения (PNG, JPEG, GIF или WebP; SVG отклоняется; большие изображения уменьшаются до 1568 px), либо скриншот сайта с capture: true, если сервер это поддерживает. Тот же URL изображения снова возвращает те же медиа. Новый логотип заменяет старый.
scope: write idempotent reaches the web
remove_media
Удаляет логотип или скриншот по его media id (med_… из get_product).
scope: write destructive idempotent
get_badge_snippet
Обязателен для бесплатного запуска; необязателен для платного (он направляет посетителей на листинг и верифицирует домен). Бейдж Launchdog для вашего сайта в синтаксисе фреймворка, который использует этот репозиторий (выберите его из репозитория). Он размещается на главной странице сайта, в HTML, который отправляет сервер (не только отрисовывается JavaScript) — подвал подойдёт — и именно так верифицируется домен: больше ничего добавлять не нужно. Вставьте его как есть и разверните (если репозиторий разворачивается по push, закоммитьте и запушьте с согласия мейкера и следите за деплоем), затем вызовите check_badge. Адрес листинга фиксируется с первого сниппета.
scope: write idempotent
check_badge
Обязателен для бесплатного запуска; необязателен для платного. Загружает главную страницу сайта и подтверждает, что бейдж ссылается на ваш листинг; при первом подтверждении это верифицирует домен (бейдж — единственное доказательство, которое запрашивает Launchdog). Если ответ status: checking, подождите и вызовите снова. Ошибки объясняют причину (редирект, noindex, страница только на JavaScript, не найдено).
scope: write idempotent reaches the web
list_launch_weeks
Следующие 12 недель запусков (понедельник–воскресенье UTC) с оставшимися местами и ценами, возможностью забронировать каждый тариф там (и почему нет), самой ранней бесплатной неделей и тем, что даёт и требует каждый тариф (tiers\: бесплатный требует бейдж Launchdog на сайте; платному больше ничего не нужно). Покажите мейкеру бесплатный и платный варианты рядом и дайте ему выбрать; никогда не покупайте.
scope: read read-only idempotent
schedule_launch
Бронирует продукт на неделю запуска — только после согласия мейкера. Платный (launch, featured): не требует ничего сверх полного листинга — ни бейджа, ни правок сайта; удерживает место и возвращает checkout_url + hold_expires_at — передайте ссылку мейкеру (никогда не платите сами), затем подтвердите через get_launch. Бесплатный: самая ранняя открытая неделя не менее чем через 7 дней (или неделя, которую вы передали); требует бейдж Launchdog на сайте, а без него отвечает badge_missing с шагами по его добавлению. Продукт с забронированным запуском возвращает его.
scope: write
move_launch
Переносит забронированный запуск на другую открытую неделю (бесплатные запуски переносятся только на более поздние; начавшаяся неделя никогда не переносится).
scope: write idempotent
cancel_launch
Освобождает место запуска (пока не началась его неделя). Неоплаченный checkout истекает; возвраты за платный запуск обрабатывает поддержка.
scope: write destructive
create_checkout
Возвращает ссылку Stripe Checkout для Maker Pass (sku: maker_pass) или новую ссылку для платного запуска, у которого истекло удержание (launch_id). Передайте ссылку мейкеру; никогда не платите сами.
scope: write reaches the web
get_launch
Один из ваших запусков: статус, неделя, состояние оплаты (ссылка checkout, пока не оплачено), голоса, комментарии, ранг и статистика по дням (просмотры, исходящие клики, хосты рефереров). Передайте launch_id или slug продукта. Статистика уходит на days\ дней назад: до 90, или вся история с Maker Pass.
scope: read read-only idempotent
reply_comment
Публикует ответ от имени мейкера на комментарий к его собственному запуску. Публикуйте только текст, одобренный мейкером. Передавайте новый client_request_id для каждого ответа (повтор с тем же возвращает тот же ответ; повторное использование для другого ответа — конфликт).
scope: write idempotent
recheck_listing
Повторно запускает автоматическую проверку листинга после исправления сайта (раз в день). Изменения текста или URL запускают её сами. Если ответ checking, вызовите launch_checklist через несколько секунд.
scope: write idempotent reaches the web
Публичные инструменты
https://launchdog.dev/mcp/public — Без входа. Только текущие и прошедшие запуски; предстоящие недели показывают количество.
get_launch
Текущий или прошедший запуск по id (lch_…) или slug продукта: текст листинга (недоверенный), неделя, голоса, ранг.
scope: public read-only idempotent
list_winners
Топ-3 последних ранжированных недель (победителям нужно минимум 3 голоса).
scope: public read-only idempotent
list_launch_weeks
Следующие 12 недель запусков с оставшимися местами и ценами (только количество; предстоящие запуски не публичны).
scope: public read-only idempotent
Без аргументов.
Любой агент может читать доску без аккаунта, а также /llms.txt и доступный только для чтения /feed.json.
Ошибки, которые вы можете исправить
Проблемы, которые ваш агент может исправить, возвращаются как isError: true с исправлением в каждом элементе. Коды простые (too_long, а не tagline_too_long) и стабильные: новые добавляются, ни один не переименовывается. Появляются и собственные коды валидации Rails (accepted, blank, confirmation, empty …), с limit, actual или allowed, когда они применимы.
{
"isError": true,
"structuredContent": {
"errors": [
{
"code": "too_long",
"field": "tagline",
"limit": 60,
"actual": 68,
"message": "Tagline is too long (maximum is 60 characters)",
"fix": {
"kind": "tool",
"tool": "update_product",
"args": {
"product_id": "prd_7Kq2mYw4Xb9Lr3Tz"
},
"instruction": "Change tagline: Tagline is too long (maximum is 60 characters), then call update_product again."
}
}
]
}
}
| код | значение |
|---|---|
already_listed | Другой листинг уже верифицировал этот домен. Обратитесь в поддержку, если он ваш. |
hype_word | Текст использует слово из списка рекламных; actual\ называет его. |
not_found | Нет такой записи на вашем аккаунте (id с другого аккаунта тоже не находятся). |
unknown_built_with | Неизвестный нам инструмент built-with; allowed\ перечисляет ближайшие названия. |
shared_host | URL на общей платформе (путь на github.com, medium.com…); укажите сайт целиком. |
limit_reached | Достигнут лимит аккаунта (открытые checkout); limit\ указывает, какое число. |
rate_limited | Слишком много вызовов; исправление говорит, когда повторить. |
insufficient_scope | Токену не хватает scope, нужного этому инструменту. |
url_locked | URL нельзя изменить после бронирования продукта. |
missing | Поле, необходимое для запуска, пустое. |
badge_missing | Ссылка на бейдж не найдена на сайте (бесплатным запускам она нужна). |
check_pending | Автоматическая проверка листинга ещё не завершена. |
check_flagged | Автоматическая проверка листинга отметила сайт; сообщение объясняет причину. |
votes_needed | Бесплатным запускам нужны 3 веб-голоса от вас за другие запуски. |
too_soon | Бесплатные запуски бронируют неделю не менее чем через 7 дней. |
week_full | На той неделе не осталось места такого типа; allowed\ перечисляет открытые недели. |
week_closed | Эта неделя началась или закончилась. |
free_limit | Один предстоящий бесплатный запуск и один за скользящие 30 дней. |
relaunch_too_soon | Продукт перезапускается через 90 дней после окончания его последней недели запуска. |
checkout_unavailable | Платный checkout ещё не открыт. |
checkout_failed | Stripe не смог открыть checkout только что; место было освобождено. Повторите после ожидания. |
not_movable | Этот запуск нельзя перенести туда (бесплатные запуски переносятся только на более поздние; начавшиеся недели никогда). |
not_cancellable | Запуск начался, закончился или уже отменён. |
identity_required | Для голосования нужен вход через GitHub или Google на аккаунте. |
account_too_new | Аккаунту меньше 24 часов. |
own_launch | Мейкеры не могут голосовать за свои собственные запуски. |
not_live | Запуск не идёт на этой неделе. |
already_voted | Вы уже голосовали за этот запуск. |
duplicate | Тот же текст был опубликован за последние 5 минут. |
conflict | client_request_id уже использован для другого запроса; используйте новый. |
reply_depth | Комментарии допускают один уровень ответов. |
media_refused | Изображение не удалось использовать (SVG, слишком большое, не изображение или недоступно). |
media_limit | В листинге максимальное количество скриншотов. |
fetch_failed | Не удалось загрузить сайт. |
has_upcoming_launch | У продукта забронирован запуск; сначала отмените его. |
already_on_account | Другой ваш продукт уже указывает этот хост. |
not_payable | Нечего оплачивать: запуск подтверждён, отменён или не является платным удержанием. |
link_in_text | Только простой текст: ссылка идёт в своё поле (ссылка на профиль, сайт). |
Лимиты
1 / 30д
бесплатные запуски, один предстоящий за раз
60 / мин
вызовы инструментов (600 в час)
10 / день
вызовы create_product
Ошибки лимита частоты говорят, когда повторить (retry_after_seconds).
Действия только в вебе
Для них нет инструмента — так задумано. Ваш агент передаёт их вам.
- Оплата платного запуска или Maker Pass по ссылке checkout, которую возвращает инструмент (цены).
- Голосование — голосуют только люди, на доске, со входом через GitHub или Google.
- Комментирование чужих запусков (агенты только отвечают на ваши собственные, с вашего согласия).
- Отключение агента и привязка GitHub или Google в настройках.