Привет! Я люблю ковыряться в API разных сервисов, и Вастрик.Клуб не стал исключением. Так появился vas3k-mcp — удалённый MCP-сервер для Клуба, который доступен по адресу vas3k-mcp.rmbk.me.
Подключаете его парой кликов в Claude, ChatGPT или Perplexity, и ваш AI получает доступ к API Клуба. Он умеет читать посты, искать людей, ставить лайки и так далее. Логин произойдёт автоматически через стандартный OAuth Клуба, никаких паролей передавать не нужно.
Что это конкретно?
Model Context Protocol (MCP) это то как ИИ договорился общаться с внешним миром — по сути сервер даёт ему кучу текста как с ним можно работать. Протокол поддерживают почти все крупные AI-клиенты, в интерфейсе у многих он упрощённо называется Коннектор / Connector.

У Клуба есть аккуратный JSON API и нормальный OpenID Connect. Решил это всё связать воедино!
Какие сценарии могут закрываться:
- «Что я пропустил в Клубе за неделю?» — персонализированно, а не просто топ-3 поста по лайкам
- «Перескажи спор в комментариях вот этого поста»
- (а дальше уже ваши идеи)
Что под капотом?
Прототип я собрал за воскресенье. Стек выбрал максимально прагматичный:
- Cloudflare Workers — бесплатно, деплой из GitHub Actions
@cloudflare/workers-oauth-provider— забирает на себя всю боль с OAuth 2.1 (PKCE, регистрация клиентов, refresh-токены)- McpAgent от Cloudflare — кладёт стейт каждого клиента в отдельный Durable Object, так что отдельной базы данных не нужно
- Hono + zod — роутинг и валидация схем
Сейчас это ~3500 строк TypeScript, всё опенсорс под MIT: https://github.com/uburuntu/vas3k-mcp (ставьте лайки).
Что пришлось дебажить
get_feed вернул 4 МБ JSON
Каждая страница ленты содержала полный markdown каждого поста, и Perplexity падал в обморок. В 1.1.3 я обрезал content_text до ~1000 символов с явным маркером в конце, чтоб модель знала, что текст не закончился и его можно запросить отдельным методом.
Аппки могут управлять вашим профилем
Но Клуб про это явно не говорит на странице авторизации:

Большинство POST API ручек действительно недоступны, таких как опубликовать пост или написать комментарий (и слава богу), но часть доступна и не вынесена в отдельный write scope.
В контексте MCP, это особенно важно, поскольку мы знаем, что ИИ не всегда молодец и порой делает абсолютную ерунду. Проснётесь с утра, а ваш агент добавил половину клуба в "мои чуваки". Закинул багу на GitHub.
На своей стороне исправил это через разделение доступа, каждый пользовательно может выбрать версию MCP под себя:
- https://vas3k-mcp.rmbk.me/mcp для read-only ключа
- https://vas3k-mcp.rmbk.me/mcp-full для доступа к write-операциям (например, можно просить поставить лайки постам)
API бейджей сломан
API https://vas3k.club/user/me/badges.json не работает! Багу тоже открыл.
Текущий статус и деньги
Потрачено: $0. Cloudflare Workers + KV + Durable Objects на бесплатном тарифе покрывают любое разумное использование, а домен rmbk.me у меня уже был.
Заработано: $0, и менять не собираюсь. Это community-инфраструктура, а не SaaS. Если не хотите доверять мне свои refresh-токены или любите инфраструктурный суверенитет, поднять свою копию должно занять минут 10 на бесплатном тарифе Cloudflare. Код опенсорс, README пошагово описывает self-host.
Идеальный долгосрочный сценарий таков, что Клуб однажды выкатит официальный MCP, и мой репозиторий станет не нужен.
Что нужно от Клуба
- Пробуйте и ломайте — особенно интересны нестандартные сценарии, до которых я сам не догадался
- Больше API — не хватает поиска по постам и получения постов юзера, чтоб разблокировать сценарии по типу "Кто много пишет про Лондон?"


Получился очень спорный пост, хочу написать пару мыслей, в том числе детали для менее вовлеченных людей.
У Клуба есть API уже три года: https://vas3k.club/post/openid/, он опен-сорс с первого дня и идёт с гайдами по интеграции — все эти три года у злонамеренных клубней была/есть возможность забрать все ваши комментарии и посты — этот MCP никак не влияет на это и не делает это проще: простой скрипт отработает быстрее и качественнее.
Согласен с тем, что неаккуратные клубни могут использовать MCP на бесплатном ИИ, где чаще всего вкючено обучение на входных данных. Я добавил явную плашку на страницу авторизации:
Стоит ли Клубу ввести строгую проверку новых apps и запретить API доступ по умолчанию? Скорее всего, нет: это добавит новый процесс на модераторов и не остановит тех, кто автоматизирует скрапинг через браузер: то, как вы читаете посты через браузер, может читать и скрипт.
Увеличивает ли этот MCP ИИ-слоп в Клубе? Не думаю: возможность постинга и комментирования невозможна через API, и я согласен, что этого не должно быть.
Живём ли мы в проклятом мире, где человечество предало природу, а роботы забираются всюду, куда могут? Да.
Ну то есть по сути это нужно либо чтобы красть чужие данные, либо чтобы спамить Клуб слопом. Не нарушающих правила юзкейсов особо не вижу
С одной стороны понимаю нежелание отдавать Клуб ботам на откорм, но с другой очень хочется иметь качественный умный поиск. В Клубе много удобных инструментов, но иногда мне нужно что-то вроде "вот бы найти клубней, живущих во Франции, и как-то связанных с садоводством". И всё, единственный способ выполнить такой запрос - найти через раздел Люди всех клубней Франции, а потом 112 вкладок перебирать руками, вчитываясь в каждое интро. Очень хочется иметь удобный инструмент для такого брутфорса.
В идеале бы завести self-hosted НейроВастрика прям в поисковой строке, чтобы находил всё, что надо, по человеческому запросу (а за токены днями подписки платить, лол).
Конкретно в случае с клубом полезность мне кажется весьма сомнительной. но в целом я всеми руками и ногами за такие тулы. я хочу, чтобы у каждой ебучей аппки был свой mcp сервер. чтобы у приложения такси, доставки еды, интернет-магазинов, онлайн записи в поликлинике, на госуслуги и так далее была возможность их подключить к моему агенту, чтобы я могу не продираться через UX, который какие-то корпоративные дегенераты почему-то посчитали удобным для меня, а мог просто своему агенту сказать, найди мне все позиции беруш на озоне с отзывами не ниже, с ценой не выше, и прочими требованиями. или найди мне все рестики в радисе двух км, откуда я могу через яндекс еду заказать рамен и добавь его в корзину. ну вы наверное поняли. но так никогда не будет к сожалению.