Установка Node.js и npm для TypeScript
Теперь, когда у нас есть Python и виртуальные окружения настроены для будущих MCP-серверов на Python, пришло время подготовить вторую ключевую часть нашей разработческой экосистемы — среду для работы с TypeScript.
Мы уже понимаем, что MCP-сервер может быть написан на разных языках. В одном случае мы будем использовать Python, в другом — TypeScript, чтобы иметь больше гибкости при интеграции с фронтенд-проектами или облачными сервисами.
Для этого нам понадобится Node.js — среда выполнения JavaScript, которая позволяет запускать код вне браузера. А вместе с ней — npm, или Node Package Manager, который поможет управлять библиотеками и зависимостями, необходимыми для создания MCP-сервера.
Это похоже на то, что мы уже сделали с Python: как venv помогает изолировать зависимости в Python-проектах, так и npm справляется с этой задачей в мире JavaScript и TypeScript. Только вместо requirements.txt у нас будет файл package.json, а пакеты будут храниться в папке node_modules.
Установка Node.js и npm
Node.js поставляется вместе с npm — поэтому, установив Node.js, вы автоматически получите и менеджер пакетов.
Шаг 1: Скачивание и установка
Перейдите на официальный сайт: https://nodejs.org
Выберите LTS-версию (рекомендуется для стабильности — на 2025 год это Node.js v20 или выше).
Запустите установщик и следуйте инструкциям. На всех операционных системах (Windows, macOS, Linux) процесс интуитивно понятен.
💡 Совет: Если вы работаете в корпоративной сети или сталкиваетесь с ограничениями доступа, в России часто используют зеркала npm через облачные провайдеры, например, Яндекс.Облако или SberCloud. Это помогает избежать задержек при установке пакетов.
Шаг 2: Проверка установки
Откройте терминал и выполните:
node -v
Вы должны увидеть версию Node.js, например:
v20.12.0
Теперь проверим npm:
npm -v
Ожидаемый ответ — версия npm (например, 9.6.7 или выше).
Если обе команды возвращают версии — поздравляем! Установка прошла успешно. 🎉
Инициализация проекта и управление пакетами
Следующий шаг — создать структуру проекта и настроить управление зависимостями. Это называется инициализация проекта.
Создание папки проекта
Выберите удобное место на диске и создайте папку, например:
mkdir mcp-server-typescript
cd mcp-server-typescript
Инициализация через npm init
Теперь запустим инициализацию:
npm init -y
Флаг -y автоматически принимает настройки по умолчанию. В результате в папке появится файл package.json.
Откройте его — это и есть сердце управления пакетами в вашем проекте. Он содержит:
- название проекта
- версию
- список зависимостей
- команды для запуска
Пример содержимого:
{
"name": "mcp-server-typescript",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC"
}
⚠️ Важно: Никогда не пропускайте
npm init. Безpackage.jsonвы не сможете восстановить зависимости на другом компьютере, и ваш проект потеряет воспроизводимость.
Установка зависимостей: управление пакетами
Теперь пришло время установить первые пакеты. Это и есть управление пакетами с помощью npm.
Нам понадобятся:
- TypeScript — чтобы писать типизированный код
- Express.js — легковесный фреймворк для создания сервера
Установим их:
npm install typescript --save-dev
npm install express --save
Разберём команды:
--save-dev— означает, что пакет нужен только для разработки (например, компилятор TypeScript). Он попадёт вdevDependencies.--save— указывает, что пакет необходим для работы приложения в продакшене (например, Express). Он попадёт вdependencies.
После установки в package.json появятся разделы:
"dependencies": {
"express": "^4.18.2"
},
"devDependencies": {
"typescript": "^5.3.0"
}
А в папке проекта создастся node_modules — папка со всеми установленными библиотеками.
💡 Полезно знать:
node_modules— это аналог виртуального окружения в Python. Только вместо изоляции интерпретатора, здесь изолируются пакеты. И, как иvenv, эту папку не нужно добавлять в систему контроля версий (например, в.gitignore).
Проверим, что всё работает
Создадим минимальный файл сервера, чтобы убедиться, что окружение готово.
Создайте файл index.ts:
import express from 'express';
const app = express();
const port = 3000;
app.get('/', (req, res) => {
res.send('MCP-сервер на TypeScript запущен!');
});
app.listen(port, () => {
console.log(`Сервер запущен на http://localhost:${port}`);
});
Пока не будем его запускать — для этого нам понадобится настройка TypeScript, которую мы сделаем в следующих шагах. Но сам факт, что у нас есть package.json, node_modules, и установленные пакеты, — уже большой прогресс.
Подводим итоги
Мы:
- Установили Node.js и npm — основу для разработки на TypeScript.
- Провели инициализацию проекта с помощью
npm init, создавpackage.json. - Научились управлять пакетами: устанавливать зависимости для разработки и продакшена.
- Провели параллель с Python:
npm+package.json— это какpip+requirements.txt, аnode_modules— как виртуальное окружение.
Теперь у нас есть всё необходимое, чтобы писать и запускать TypeScript-код. Но чтобы делать это комфортно, нам нужно правильно настроить среду разработки.
В следующей теме — Настройка VS Code для комфортной разработки — мы установим нужные расширения, включим подсветку TypeScript, настроим терминал и подготовим редактор к созданию полноценного MCP-сервера.
Вы уже на шаг ближе к тому, чтобы запустить свой первый ИИ-агент на TypeScript. Всё идёт по плану! 💪