Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔2 2 2
Пишем свой MCP на Python 💻
Ставим MCP SDK:
Создаём файл server.py:
Получить:
А потом использовать результат:
В прошлом посте разобрались, что MCP позволяет дать нейросети собственные инструменты.
Теперь попробуем сделать такой инструмент самостоятельно.
Для самого простого варианта нам нужен только установленный Python.
Ставим MCP SDK:
pip install "mcp[cli]"
Создаём файл server.py:
from mcp.server import MCPServer
mcp = MCPServer("Freelance Helper")
@mcp.tool()
def calculate_price(hours: int, rate: int) -> int:
"""Рассчитать стоимость работы."""
return hours * rate
@mcp.tool()
def make_offer(client: str, price: int, days: int) -> str:
"""Создать предложение для клиента."""
return (
f"{client}, стоимость проекта — {price} руб. "
f"Срок выполнения — {days} дней."
)
if __name__ == "__main__":
mcp.run()
И всё.💃
У нас уже есть MCP-сервер с двумя инструментами.
Первый считает стоимость проекта.
Второй формирует предложение клиенту.
Причём нам не пришлось отдельно описывать формат каждого инструмента.
MCP SDK понимает по Python-аннотациям, что hours, rate, price и days должны быть числами.
Теперь сервер можно подключить, например, к Codex:
codex mcp add freelance-helper -- python C:\mcp\server.py
После этого пишем нейросети:
«Проект займёт 18 часов. Моя ставка 1500 рублей. Посчитай стоимость и подготовь предложение для Андрея со сроком 5 дней».
Нейросеть сможет вызвать:
calculate_price(18, 1500)
Получить:
27000
А потом использовать результат:
make_offer("Андрей", 27000, 5)
Конечно, считать стоимость проекта через MCP — немного бессмысленно :)
Но вместо calculate_price может быть что угодно:
🍿 запрос к базе данных;
🍿 получение клиента из CRM;
🍿 создание задачи;
🍿 работа с API;
🍿 генерация документа;
🍿 получение статистики сайта.
Именно поэтому MCP становится интересен не только как игрушка для разработчиков.
В следующем посте посмотрим, как из этого сделать реальный фриланс-кейс
Please open Telegram to view this post
VIEW IN TELEGRAM
1 2 2👏1
Что вообще продавать клиенту?
Представим обычный бизнес.
✏️
🐹
😨
🍿 Есть менеджеры, которые каждый день делают примерно одно и то же:
• ищут информацию о клиенте;
• смотрят последние сообщения;
• проверяют активные задачи;
• смотрят оплаты;
• создают новые задачи.
Обычно под это делают отдельную админку, Telegram-бота или ещё один внутренний сервис.
Но можно сделать MCP-сервер поверх уже существующей системы.
Например, дать нейросети такие инструменты:
После этого менеджер пишет:
Нейросеть сама вызывает несколько инструментов:
И собирает всё в один понятный ответ.
А потом менеджер пишет:
И нейросеть вызывает:
Вот это уже вполне реальный коммерческий кейс.
Причём нам необязательно переписывать существующую систему клиента.
Если у бизнеса уже есть API, схема может выглядеть так:
MCP здесь становится небольшим слоем между нейросетью и существующим backend.
И вот такую работу уже вполне можно продавать на фрилансе.🕺
Не:
А:
Начать можно буквально с нескольких инструментов:
А потом добавить:
Представим обычный бизнес.
Есть CRM.Есть база клиентов.Есть внутренняя система задач.• ищут информацию о клиенте;
• смотрят последние сообщения;
• проверяют активные задачи;
• смотрят оплаты;
• создают новые задачи.
Обычно под это делают отдельную админку, Telegram-бота или ещё один внутренний сервис.
Но можно сделать MCP-сервер поверх уже существующей системы.
Например, дать нейросети такие инструменты:
get_client_info
get_active_tasks
get_last_messages
get_payments
create_task
После этого менеджер пишет:
«Что сейчас происходит с клиентом ООО Ромашка?»
Нейросеть сама вызывает несколько инструментов:
get_client_info()
get_active_tasks()
get_last_messages()
get_payments()
И собирает всё в один понятный ответ.
А потом менеджер пишет:
«Создай задачу связаться с ними завтра. Укажи, что клиент ждёт новую смету».
И нейросеть вызывает:
create_task()
Вот это уже вполне реальный коммерческий кейс.
Причём нам необязательно переписывать существующую систему клиента.
Если у бизнеса уже есть API, схема может выглядеть так:
CRM / Backend клиента
↓
REST API
↓
MCP Server
↓
Codex / Claude / другой AI-клиент
MCP здесь становится небольшим слоем между нейросетью и существующим backend.
И вот такую работу уже вполне можно продавать на фрилансе.
Не:
«Я подключу вам ChatGPT».
А:
«Я подключу AI к вашей внутренней системе, чтобы он мог получать клиентов, анализировать данные и выполнять рабочие действия».
Начать можно буквально с нескольких инструментов:
get_client
get_orders
get_statistics
А потом добавить:
create_task
update_client
generate_report
И постепенно превратить это в полноценного внутреннего AI-ассистента.
При этом действия, которые реально что-то меняют, лучше отделять от обычного чтения данных.
Посмотреть клиента — одно.
Удалить клиента, отправить сообщение или провести оплату — совсем другое.
Для таких действий уже стоит оставлять подтверждение пользователя.
А в следующем посте будет ещё интереснее.
Потому что даже сам MCP-сервер необязательно полностью писать вручную.
Please open Telegram to view this post
VIEW IN TELEGRAM
👏2 2🤩1 1
Пусть Codex или Claude сами напишут MCP
Раньше мы бы открывали документацию и начинали вручную писать интеграцию.
Сейчас часть этой работы можно отдать Codex или Claude Code.
Создаём папку проекта, открываем её в Codex/Claude и даём примерно такую задачу:
После этого просим:
А когда сервер готов — подключаем его обратно к тому же Codex:
И получается довольно забавная рекурсия:
Для фриланса это очень сильная штука.🙂
Особенно если у заказчика уже есть API, CRM, база данных или собственный backend.
Вместо разработки огромной AI-системы с нуля можно сделать небольшой MCP-слой и превратить существующую инфраструктуру клиента в набор понятных нейросети инструментов.
Поэтому я бы сейчас смотрел на MCP не как на очередной модный термин.
Это скорее новый способ делать интеграции.
А там, где появляются интеграции между AI и реальным бизнесом, почти всегда появляется работа для разработчика.
Теперь кейс посерьёзнее.
Допустим, приходит клиент и говорит:
«У нас есть внутренний API. Хотим работать с ним через нейросеть».
В API уже существуют методы:
GET /clients
GET /clients/{id}
GET /tasks
POST /tasks
GET /payments
Раньше мы бы открывали документацию и начинали вручную писать интеграцию.
Сейчас часть этой работы можно отдать Codex или Claude Code.
Создаём папку проекта, открываем её в Codex/Claude и даём примерно такую задачу:
«Создай MCP-сервер на Python с использованием актуального MCP SDK.
Есть API со следующими методами:
GET /clients
GET /clients/{id}
GET /tasks
POST /tasks
GET /payments
Создай отдельный MCP tool для каждого необходимого действия.
URL API и токен бери из переменных окружения.
Добавь обработку ошибок.
Не давай модели прямой доступ к произвольным HTTP-запросам.
Инструменты чтения отдели от инструментов, изменяющих данные.
Добавь requirements и инструкцию запуска».
Дальше агент уже может создать структуру проекта, server.py, работу с API, .env.example и документацию.
После этого просим:
«Проверь код, установи зависимости и протестируй MCP-инструменты».
А когда сервер готов — подключаем его обратно к тому же Codex:
codex mcp add client-api -- python C:\client-mcp\server.pyИ получается довольно забавная рекурсия:
нейросеть помогает написать инструменты для нейросети, после чего сама начинает этими инструментами пользоваться.
Для фриланса это очень сильная штука.
Особенно если у заказчика уже есть API, CRM, база данных или собственный backend.
Вместо разработки огромной AI-системы с нуля можно сделать небольшой MCP-слой и превратить существующую инфраструктуру клиента в набор понятных нейросети инструментов.
Поэтому я бы сейчас смотрел на MCP не как на очередной модный термин.
Это скорее новый способ делать интеграции.
А там, где появляются интеграции между AI и реальным бизнесом, почти всегда появляется работа для разработчика.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔2 2 2
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Григорий IT://home (Grigoriy Chepel)
Media is too big
VIEW IN TELEGRAM
Геймификация давно вышла за пределы игрового пространства
- В Duolingo тебя мотивируют серии дней, XP и лиги
- В Яндекс Плюсе - задания, баллы и уровни
- В фитнес-приложении Strava - челленджи, прогресс и достижения
По сути, обычные действия превращаются в понятную систему целей, наград и наблюдения за своим прогрессом
Мы решили попробовать похожий подход внутри INNOPROG - только применить его к работе преподавателей и сделали систему внутренних баллов - иннопрожек (IP)
Преподаватель работает как обычно, а система сама смотрит на его показатели - проведённые занятия, сданные отчёты, отправленные записи занятий, взаимодействие с учеником вне занятий в чате и т.д.
На основе этих показателей считается эффективность работы за день и автоматически начисляются IP
То есть это не просто "провёл урок - получил баллы" - у каждого показателя есть свой вес
А дальше самое приятное - накопленные IP можно тратить во внутреннем магазине
Сейчас в качестве награды пока что используются промокоды, однако сама механика позволяет спокойно расширять каталог чем угодно
———
По итогу нашей работы получился отдельный сервис внутри онлайн-платформы INNOPROG, который:
- собирает данные о работе преподавателей из внутреннего API INNOPROG
- каждый день автоматически формирует статистику
- начисляет внутреннюю валюту
- ведёт полную историю операций
- считает "ранги" преподавателей метрики эффективности
- следит за лимитами промокодов
- позволяет покупать награды за накопленные IP
Причём, механика работы такова, что статистику нельзя просто один раз посчитать и забыть - например, отчёт или запись занятия могут появиться не сразу, а спустя несколько дней
Поэтому система периодически пересчитывает и при необходимости корректирует начисления
Плюс важно было сделать так, чтобы случайный повторный запуск расчётов ничего не ломал и не начислял IP по много раз - это кстати называется идемпотентностью
Идемпотентность - это когда повторный запуск одной и той же операции не приводит к дополнительным изменениям состояния
В нашем случае это значит, что повторный пересчёт не должен второй раз начислить те же IP
Под капотом у всего этого дела:
- фронтенд на React
- серверная часть на FastAPI
- БД PostgreSQL
- APScheduler для ежедневных автоматических расчётов
- Docker для контейнеризации
- GitHub Actions для автоматического запуска тестов при изменениях в бэкенде
До окончательного релиза на онлайн-платформе INNOPROG, деплоил бэк сервис через Railway - удобная штука для запуска небольших проектов в облаке
Деплой - процесс развёртывания проекта в облаке, чтобы он постоянно работал онлайн и стал доступен пользователям
К посту как раз прикрепил демонстрацию того, как всё это в итоге выглядит со стороны преподавателя 👆
Я взял на себя разработку бэкенд-части сервиса, но работали мы в команде вместе с Артемием (@MifmanRu) и Вадимом (@VadimKokorev)
Вадим, как фронтендер проекта, сделал удобный и наглядный интерфейс - как раз на видео можете его оценить
Артемий взял на себя руководство разработкой и взаимодействие с INNOPROG по административной и бизнес-части проекта
У Артемия, кстати, тоже есть свой канал - https://t.me/codeshadowcources, можете заглянуть👀
Мне вообще нравится такой тип задач, когда с нуля строишь систему с достаточно большой внутренней логикой - экономикой, аналитикой, автоматическими расчётами и многим другим
Проект получился интересный, запустили его недавно, сейчас активно тестим и ждём фидбэк от наших пользователей - преподавателей
#project #backend #python #fastapi #database
Please open Telegram to view this post
VIEW IN TELEGRAM
Григорий IT://home
Наш внутренний проект для преподавателей. Думаю, получилось отлично)