Utility MCP Server
Сервер утилит MCP
Полнофункциональный сервер протокола контекста модели (MCP), предоставляющий вспомогательные инструменты, ресурсы и подсказки. Создан с использованием TypeScript и современного SDK MCP.
📁 Структура проекта
Проект организован для обеспечения масштабируемости и читаемости:
.
├── index.ts # Entry point: Initializes server and registers modules
├── src/
│ ├── tools.ts # Tool handlers (Arithmetic, Randomness, Sampling)
│ ├── prompts.ts # Prompt templates (Math Tutoring)
│ └── resources.ts # Resource definitions (System Status)
├── tests/
│ └── utility.test.ts # Comprehensive unit tests
├── package.json # Dependencies and scripts
├── tsconfig.json # TypeScript configuration
└── jest.config.js # Testing configuration🚀 Функции
1. Инструменты
random_number: Генерирует случайное целое число в заданном диапазоне.calculator: Выполняет базовые арифметические операции (add,subtract,multiply,divide).suggest_arithmetic_task: Демонстрирует выборку LLM, запрашивая у клиента/LLM создание творческой математической задачи.
2. Ресурсы
system_status(utility://system/status): Предоставляет обновление состояния работоспособности сервера и количества функций в режиме реального времени.
3. Подсказки
math_tutor: Шаблон, который направляет LLM действовать в качестве учителя математики, при необходимости фокусируясь на конкретной теме.
📡 Вызов API (Postman / JSON-RPC)
Протокол контекста модели использует JSON-RPC 2.0. Хотя этот сервер в настоящее время работает через stdio (стандартный ввод/вывод), вы можете взаимодействовать с ним, используя эти форматы сообщений, если предоставите к нему доступ через мост HTTP/SSE или используете отладчик.
🛠 Инструменты
Список инструментов
Запрос:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Вызов calculator
Запрос:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "calculator",
"arguments": {
"operation": "multiply",
"a": 5,
"b": 10
}
}
}📖 Ресурсы
Список ресурсов
Запрос:
{
"jsonrpc": "2.0",
"id": 3,
"method": "resources/list"
}Чтение system_status
Запрос:
{
"jsonrpc": "2.0",
"id": 4,
"method": "resources/read",
"params": {
"uri": "utility://system/status"
}
}📝 Подсказки
Список подсказок
Запрос:
{
"jsonrpc": "2.0",
"id": 5,
"method": "prompts/list"
}Получение подсказки math_tutor
Запрос:
{
"jsonrpc": "2.0",
"id": 6,
"method": "prompts/get",
"params": {
"name": "math_tutor",
"arguments": {
"topic": "algebra"
}
}
}🛠 Разработка
Настройка
npm installЗапуск сервера
npm startЗапуск тестов
npm test🤖 Использование пользовательского клиента
Мы включили встроенный пример клиента, чтобы вы могли увидеть, как подключиться программно:
npm run clientЭтот скрипт:
Запускает сервер как дочерний процесс.
Подключается через Stdio.
Автоматически демонстрирует перечисление инструментов, вызов калькулятора и чтение ресурсов.
🔍 Тестирование с помощью MCP Inspector
Для визуального взаимодействия с сервером:
npx @modelcontextprotocol/inspector npx tsx index.tsЭтот сервер используеттранспорт Stdio. Он взаимодействует через stdin и stdout. Чтобы Postman работал через HTTP, в конфигурацию сервера необходимо добавить транспортный уровень SSE (Server-Sent Events).
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/lakshyakumar/typescript-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server