Модуль 2.7 · Урок 3
Урок 3: Топ MCP-серверов
Чему вы научитесь
После этого урока вы будете знать:
- Какие MCP-серверы есть и для чего каждый нужен
- Как быстро установить нужный вам сервер
- Как использовать каждый сервер на практике
- Какой сервер выбрать для конкретной задачи
Содержание
Топ 10 MCP-серверов для разработчика
1. Filesystem — работа с файлами
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["@modelcontextprotocol/server-filesystem", "/Users/yourname"]
}
}
}
Инструменты:
read_file(path)— прочитать файлwrite_file(path, content)— написать файлdelete_file(path)— удалить файлlist_directory(path)— список файловsearch_files(pattern)— поиск по файлам
Пример использования:
Прочитай все .py файлы в папке src/ и расскажи, что там написано
Для чего: базовый инструмент, нужен практически всегда
2. GitHub — работа с репозиториями
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
}
}
}
}
Инструменты:
search_repositories(query)— поиск репозиториевget_repository(owner, repo)— информация о репоlist_issues(owner, repo)— список issuesget_issue(owner, repo, number)— информация об issuecreate_issue(owner, repo, title, body)— создать issuecreate_pull_request()— создать PRlist_commits(owner, repo)— список коммитовget_commit(owner, repo, sha)— информация о коммите
Пример использования:
Создай issue в моём репо user/project с названием "Fix bug in auth"
и описанием "Функция login не работает с email"
Как получить токен:
- Откройте https://github.com/settings/tokens
- “Generate new token”
- Нужны scope:
repo,workflow - Скопируйте токен в settings.json
Для чего: автоматизация работы с GitHub, создание issues и PRs
3. PostgreSQL — работа с БД
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": ["@modelcontextprotocol/server-postgres"],
"env": {
"DATABASE_URL": "postgresql://user:password@localhost:5432/mydb"
}
}
}
}
Инструменты:
query(sql)— выполнить SQL-запросlist_tables()— список таблицdescribe_table(name)— структура таблицыexecute_query(sql, params)— запрос с параметрами
Пример использования:
Сколько пользователей в таблице users?
Покажи top 5 по дате регистрации
Для чего: аналитика БД, проверка данных, отладка
4. Slack — отправка сообщений
{
"mcpServers": {
"slack": {
"command": "npx",
"args": ["@modelcontextprotocol/server-slack"],
"env": {
"SLACK_BOT_TOKEN": "xoxb-your-token-here"
}
}
}
}
Инструменты:
send_message(channel, text)— отправить сообщениеlist_channels()— список каналовget_channel_messages(channel, limit)— история сообщенийupload_file(channel, file, comment)— залить файл
Пример использования:
Отправь сообщение в канал #dev-alerts: "Запущена новая версия приложения v1.2.0"
Как получить токен:
- Откройте https://api.slack.com/apps
- Create New App
- Socket Mode включить
- Скопируйте Bot Token из OAuth & Permissions
Для чего: уведомления, интеграция с командой
5. Google Drive — документы и файлы
{
"mcpServers": {
"google-drive": {
"command": "npx",
"args": ["@modelcontextprotocol/server-google-drive"],
"env": {
"GOOGLE_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
"GOOGLE_CLIENT_SECRET": "your-secret"
}
}
}
}
Инструменты:
list_files()— список файловread_file(file_id)— прочитать документcreate_file(name, content)— создать документupdate_file(file_id, content)— обновить документshare_file(file_id, email)— поделиться файлом
Пример использования:
Создай Google Doc с названием "Отчёт по проекту" и напиши туда...
Для чего: работа с документами, отчёты, спецификации
6. Brave Search — веб-поиск
{
"mcpServers": {
"brave-search": {
"command": "npx",
"args": ["@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_SEARCH_API_KEY": "your-api-key"
}
}
}
}
Инструменты:
search_web(query)— поиск в интернетеsearch_news(query)— поиск новостейsearch_images(query)— поиск изображений
Пример использования:
Найди последние статьи про WebAssembly
Как получить ключ:
- Откройте https://brave.com/search/api/
- Зарегистрируйтесь
- Скопируйте API key
Для чего: поиск информации в интернете
7. Puppeteer — автоматизация браузера
{
"mcpServers": {
"puppeteer": {
"command": "npx",
"args": ["@modelcontextprotocol/server-puppeteer"]
}
}
}
Инструменты:
navigate(url)— открыть страницуscreenshot()— сделать скриншотget_content()— получить HTMLclick(selector)— клик по элементуtype_text(selector, text)— ввести текстwait_for_selector(selector)— ждать элемента
Пример использования:
Открой https://example.com, найди кнопку "Sign Up",
кликни на неё и сделай скриншот
Для чего: веб-скрейпинг, тестирование, автоматизация браузера
8. Docker — управление контейнерами
{
"mcpServers": {
"docker": {
"command": "npx",
"args": ["@modelcontextprotocol/server-docker"]
}
}
}
Инструменты:
list_containers()— список контейнеровlist_images()— список образовrun_container(image, options)— запустить контейнерstop_container(container_id)— остановить контейнерget_logs(container_id)— получить логиexecute(container_id, command)— выполнить команду
Пример использования:
Запусти контейнер postgres:14 с именем my-db
и переменной окружения POSTGRES_PASSWORD=secret
Для чего: управление контейнерами и образами
9. Sentry — мониторинг ошибок
{
"mcpServers": {
"sentry": {
"command": "npx",
"args": ["@modelcontextprotocol/server-sentry"],
"env": {
"SENTRY_AUTH_TOKEN": "your-auth-token"
}
}
}
}
Инструменты:
list_issues(project)— список ошибокget_issue(project, issue_id)— информация об ошибкеget_event(project, event_id)— информация о событииcreate_issue(project, title)— создать issueupdate_issue_status(project, issue_id, status)— обновить статус
Пример использования:
Покажи мне все критические ошибки в проекте за сегодня
Для чего: анализ ошибок, мониторинг приложения
10. Linear / Jira — таск-трекеры
Linear:
{
"mcpServers": {
"linear": {
"command": "npx",
"args": ["@modelcontextprotocol/server-linear"],
"env": {
"LINEAR_API_KEY": "your-api-key"
}
}
}
}
Jira:
{
"mcpServers": {
"jira": {
"command": "npx",
"args": ["@modelcontextprotocol/server-jira"],
"env": {
"JIRA_URL": "https://your-workspace.atlassian.net",
"JIRA_USER_EMAIL": "your-email@company.com",
"JIRA_API_TOKEN": "your-token"
}
}
}
}
Инструменты:
list_issues()— список задачget_issue(issue_key)— информация о задачеcreate_issue(project, title, description)— создать задачуupdate_issue(issue_key, fields)— обновить задачуadd_comment(issue_key, comment)— добавить комментарий
Пример использования:
Создай задачу в проекте ENG с названием "Рефакторинг auth модуля"
и прилинкуй её к существующей задаче ENG-123
Для чего: управление задачами, синхронизация с командой
Таблица: все 10 серверов сразу
| № | Сервер | Команда | Переменные окружения | Основной инструмент |
|---|---|---|---|---|
| 1 | filesystem | @modelcontextprotocol/server-filesystem | Путь в args | read_file() |
| 2 | github | @modelcontextprotocol/server-github | GITHUB_PERSONAL_ACCESS_TOKEN | create_issue() |
| 3 | postgres | @modelcontextprotocol/server-postgres | DATABASE_URL | query() |
| 4 | slack | @modelcontextprotocol/server-slack | SLACK_BOT_TOKEN | send_message() |
| 5 | google-drive | @modelcontextprotocol/server-google-drive | GOOGLE_CLIENT_ID, SECRET | create_file() |
| 6 | brave-search | @modelcontextprotocol/server-brave-search | BRAVE_SEARCH_API_KEY | search_web() |
| 7 | puppeteer | @modelcontextprotocol/server-puppeteer | — | navigate() |
| 8 | docker | @modelcontextprotocol/server-docker | — | run_container() |
| 9 | sentry | @modelcontextprotocol/server-sentry | SENTRY_AUTH_TOKEN | list_issues() |
| 10 | linear | @modelcontextprotocol/server-linear | LINEAR_API_KEY | create_issue() |
Как выбрать нужный сервер?
Для разработчика, который:
- Работает с файлами → filesystem
- Работает в GitHub → github
- Управляет БД → postgres или sqlite
- Работает с командой в Slack → slack
- Создаёт документы → google-drive
- Ищет информацию → brave-search
- Делает веб-скрейпинг → puppeteer
- Работает с Docker → docker
- Отслеживает ошибки → sentry
- Управляет задачами → linear или jira
Минимальный набор для джуниора:
{
"mcpServers": {
"filesystem": {...},
"github": {...},
"brave-search": {...}
}
}
Полный набор для backend-разработчика:
{
"mcpServers": {
"filesystem": {...},
"github": {...},
"postgres": {...},
"docker": {...},
"sentry": {...},
"slack": {...}
}
}
Попробуйте сами
-
Выберите 3 сервера, которые вам нужны
-
Получите нужные ключи/токены
- GitHub: https://github.com/settings/tokens
- Slack: https://api.slack.com/apps
- Brave: https://brave.com/search/api/
-
Отредактируйте ~/.claude.json (или
.mcp.jsonв корне проекта)nano ~/.claude.json -
Добавьте конфигурацию (скопируйте из примеров выше)
-
Сохраните и перезагрузите Claude Code
-
Проверьте
/mcp list -
Попробуйте использовать
Создай issue в моём репо про то, что нужно добавить MCP поддержку
Официальный реестр MCP серверов: registry.modelcontextprotocol.io (5,800+ серверов)
Ключевые выводы
- Есть 10 основных MCP-серверов, каждый для своей задачи
- Filesystem нужен почти всем, остальные — по необходимости
- GitHub, Postgres, Slack, Google Drive — самые популярные
- Для каждого сервера нужны свои токены/ключи — получайте их один раз
- Установка простая — скопируйте конфиг из примера выше
- Начните с минимального набора (filesystem + github + brave-search)
Следующий урок
Урок 4: A2A — агент-к-агенту — как агенты общаются между собой и когда это нужно.