Когда я начал пользоваться Claude Code, у меня было ощущение, что я дал умному человеку доступ только к одной папке на компьютере. Он видит код, помогает с задачами — но не знает, что происходит снаружи. Нет доступа к чатам, к базе данных, к GitHub issues. Всё это приходилось копировать руками и вставлять в контекст.
Потом я узнал про MCP.
Что такое MCP
MCP (Model Context Protocol) — это протокол, который Anthropic открыл в конце 2024 года. Если говорить просто: это как USB-C, только для AI. Ты подключаешь «девайс» — и Claude сразу умеет с ним работать.
Без MCP Claude Code видит только то, что ты явно ему показал: файлы в проекте, то что написал в чате. С MCP — он может читать твои Telegram-сообщения, делать запросы в базу данных, смотреть open issues на GitHub, искать в интернете. И всё это прямо во время разговора, без copy-paste.
Реализовано это через отдельные процессы — MCP-серверы. Claude Code запускает их рядом с собой и общается через стандартный протокол. Тебе как пользователю не нужно знать детали — достаточно добавить сервер в конфиг.
Как это устроено
.mcp.json при старте и поднимает серверы автоматически Схема простая:
Claude Code → .mcp.json → MCP-сервер → внешний сервис
.mcp.json — это файл конфигурации в корне проекта. В нём ты описываешь какие серверы запускать и с какими параметрами. Claude Code читает этот файл при старте и поднимает все серверы автоматически.
Выглядит это примерно так:
{ "mcpServers": { "telegram": { "command": "python", "args": ["/path/to/telegram-mcp/main.py"], "env": { "SESSION_STRING": "your_session_here" } } }}
Всё. После этого Claude видит новые инструменты и может их использовать когда нужно.
Подключаем Telegram за 5 минут
Расскажу на живом примере — именно так я это сделал у себя.
Мне нужно было чтобы Claude мог читать сообщения из рабочих Telegram-чатов. Нашёл готовый сервер на основе Telethon.
Шаг 1 — устанавливаем зависимости
pip install telethon mcp
Шаг 2 — получаем session string
Это одноразовая процедура. Нужно залогиниться через Telethon и сохранить строку сессии:
from telethon.sync import TelegramClientfrom telethon.sessions import StringSessionapi_id = 12345 # с my.telegram.orgapi_secret = "..." # там жеwith TelegramClient(StringSession(), api_id, api_secret) as client: print(client.session.save())
Запускаешь один раз, вводишь номер телефона и код — получаешь строку. Сохраняешь её в .env, в git не коммитишь.
Шаг 3 — добавляем в .mcp.json
{ "mcpServers": { "telegram": { "command": "python", "args": ["main.py"], "env": { "TG_API_ID": "12345", "TG_API_HASH": "your_hash", "TG_SESSION": "your_session_string" } } }}
Шаг 4 — проверяем
claude mcp list
Должен появиться telegram в списке. Если появился — всё работает.
Теперь можно спросить прямо в Claude Code:
«Покажи последние 10 сообщений из чата “Заказы”»
И он покажет. Без copy-paste, без переключения между окнами.
Что ещё есть готового
Готовых MCP-серверов уже несколько десятков. Вот самые полезные:
|
Сервер |
Что даёт |
|---|---|
|
|
Доступ к файлам за пределами проекта |
|
|
SQL-запросы к локальной базе |
|
|
Issues, PR, code review через GitHub API |
|
|
Поиск в интернете прямо из чата |
|
|
Запросы к PostgreSQL |
Полный список готовых серверов — на smithery.ai и в официальном репозитории.
Большинство подключаются через npx — даже устанавливать ничего не надо:
{ "mcpServers": { "filesystem": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-filesystem", "/home/user/docs"] } }}
Как это работает у меня в реальности
У меня небольшой бизнес — несколько рабочих Telegram-чатов, в которых постоянно что-то происходит. Раньше я заходил, читал, руками добавлял задачи в свой task-менеджер.
Сейчас у меня есть пайплайн: Python-скрипт через Telethon каждые 5 минут читает чаты, классифицирует сообщения по правилам, и если нашёл что-то важное — добавляет задачу в tasks.md и делает git commit. Claude Code при этом используется уже как исполнитель задач, а не как читалка чатов.
Но в интерактивном режиме MCP Telegram удобен для другого: когда я работаю в Claude Code и хочу быстро проверить контекст — что там написали по конкретному заказу — я просто спрашиваю. Не переключаюсь в Telegram, не ищу, не копирую. Claude сам вытаскивает нужное.
Это меняет то, как думаешь о рабочем процессе.
Подводные камни
Несколько вещей которые стоит знать заранее:
Session string нельзя коммитить в git. Это полный доступ к аккаунту. Держите его в .env, добавьте .env в .gitignore с первого дня.
echo ".env" >> .gitignoreecho ".mcp.json" >> .gitignore # если там есть секреты
MCP-сервер имеет столько доступа, сколько вы ему дали. Если подключили базу данных — сервер может делать любые запросы. Подключайте только то что нужно, и лучше через read-only пользователя там где возможно.
Не все серверы одинаково стабильны. Экосистема молодая. Некоторые серверы сырые, у некоторых нет нормальной обработки ошибок. Проверяйте логи если что-то не работает: claude --debug.
В Claude.ai (веб) MCP не работает — только в Claude Code (CLI/IDE расширение).
Итог
MCP — это то, что превращает Claude из умного редактора в агента, который реально видит твой рабочий контекст.
Пять минут на подключение, и Claude начинает работать с тем, что происходит вокруг твоего кода: чатами, базами, репозиторием. Не нужно ничего копировать и объяснять — он сам берёт нужный контекст.
Если вы уже пользуетесь Claude Code и ещё не пробовали MCP — попробуйте начать с server-filesystem или server-sqlite. Это самый простой способ почувствовать разницу.
Если есть вопросы по настройке Telegram MCP или другим серверам — спрашивайте в комментариях.
ссылка на оригинал статьи https://habr.com/ru/articles/1044024/