Перейти к содержимому

MCP TypeScript Template 🚀

Шаблон для создания production-grade MCP-серверов на TypeScript с observability, error handling и модульной архитектурой.

TypeScript
71 stars

Описание

Это продвинутый шаблон на TypeScript для разработки надёжных MCP-серверов. Ключевые особенности: декларативное определение инструментов, интеграция OpenTelemetry для observability, поддержка JWT/OAuth аутентификации, транспорты stdio/HTTP, централизованная обработка ошибок, валидация с Zod, абстрактный слой хранения (in-memory, filesystem, Supabase), утилиты для логирования и тестирования с Vitest. Идеален для создания инструментов и ресурсов для AI-агентов в production-среде.

Возможности

Декларативное определение инструментов

Определение инструментов в одном файле с автоматической регистрацией, валидацией и метриками.

Полная observability

Интеграция OpenTelemetry для трассировки, метрик и корреляции ошибок без настройки.

Плагинная аутентификация

Поддержка JWT и OAuth 2.1 с возможностью расширения через интерфейс AuthStrategy.

Гибкие транспорты

Stdio и HTTP с поддержкой stateful/stateless сессий.

Обработка ошибок

Централизованный ErrorHandler для mapping исключений в JsonRpcErrorCode с трассировкой.

Type-safe валидация

Использование Zod для схем конфигурации, входов/выходов и API.

Абстрактное хранение

Провайдеры для in-memory, filesystem и Supabase с DI.

Утилиты и тестирование

Логирование с Winston, rate-limiting, Vitest с MSW для интеграционных тестов.

Установка

Предварительные требования: Bun v1.2.0 или выше.

  1. Клонируйте репозиторий: git clone https://github.com/cyanheads/mcp-ts-template.git cd mcp-ts-template

  2. Установите зависимости: bun install

  3. Соберите проект: bun build # или bun rebuild

Информация

Язык
TypeScript
Лицензия
Apache License 2.0
GitHub Stars
71

Ссылки