MCP Tools Hub
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Tools Hublist available tools"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Tools Hub
Веб-интерфейс для просмотра и вызова MCP-инструментов с чат-агентом, планировщиком и оркестрацией цепочек вызовов.
Быстрый старт
# Установка зависимостей
npm install
# Настройка окружения
cp .env.example .env
# Отредактировать CHAT_API_KEY в .env
# Запуск
npm start
# → http://localhost:3000Related MCP server: mcp-any-openapi
Тестирование
# Только локальные инструменты
npm test
# Все тесты (локальные + внешние)
npm run test:all
# Только E2E-тест оркестрации
npm run test:orchАрхитектура
src/
├── api/ # REST-роуты (tools, scheduler, admin)
├── mcp/
│ ├── tools/ # Локальные инструменты + registry
│ ├── server.js # MCP-сервер (SSE transport)
│ └── client-manager.js # Подключение к внешним MCP-серверам
├── public/ # Фронтенд (app.js, chat.js, styles.css, index.html)
├── scheduler/ # Планировщик (reminder + periodic)
└── shared/ # Config, Logger, AppContextДлинный флоу (Orchestration)
Чат-агент умеет выполнять цепочки из нескольких инструментов, где LLM сама решает, какой инструмент вызвать следующим, на основе результатов предыдущих шагов.
Пример цепочки из 4 шагов
Запрос пользователя:
Получи пользователя #1, сохрани его имя в заметку,
создай напоминание через 2 секунды о заметке, и покажи сводку задач.Ожидаемая цепочка вызовов:
┌─────────────────────────────────────────────────┐
│ Шаг 1: get_user(userId: 1) │
│ → "Leanne Graham, Gwenborough" │
├─────────────────────────────────────────────────┤
│ Шаг 2: save_note(title: "Leanne Graham", │
│ content: "Пользователь #1") │
│ → "Заметка сохранена: notes/Leanne Graham.md" │
├─────────────────────────────────────────────────┤
│ Шаг 3: create_reminder(message: "Напомни о │
│ заметке Leanne Graham", delaySeconds:2)│
│ → "Напоминание создано через 2 сек" │
├─────────────────────────────────────────────────┤
│ Шаг 4: get_summary() │
│ → "Всего заметок: 5, задач в scheduler: 2..." │
├─────────────────────────────────────────────────┤
│ Ответ LLM: "Готово. Пользователь Leanne Graham │
│ сохранён, напоминание создано. Вот сводка..." │
└─────────────────────────────────────────────────┘Механизм:
LLM получает запрос → анализирует → решает какие инструменты нужны
Вызывает
get_userчерезTOOL_CALLСервер выполняет инструмент, возвращает результат LLM
LLM анализирует результат → решает вызвать
save_noteПовторяет пока не выполнит все шаги (макс 5)
После выполнения всех шагов — отвечает пользователю
Ветвление: LLM может принимать разные решения на основе данных:
Если get_weather вернул t > 15°C → save_note("Тепло")
Если t <= 15°C → save_note("Холодно")
Параллельные вызовы: Если LLM возвращает несколько TOOL_CALL на одной строке, они выполняются через Promise.all.
Отложенные задачи: create_reminder c callback.messages — планировщик запускает LLM-цепочку через N секунд и пушит результат через SSE.
SSE-события
Тип | Назначение |
| Промежуточный шаг цепочки (real-time обновление UI) |
| Результат цепочки от планировщика (scheduler callback) |
Формат TOOL_CALL
TOOL_CALL: {"tool": "имя_инструмента", "arguments": {}}Строго одной строкой
JSON без дополнительного текста внутри
Несколько TOOL_CALL через
\n— параллельное выполнение
Источники инструментов
локальный — встроенные инструменты (
src/mcp/tools/*.js)внешний:everything — @modelcontextprotocol/server-everything
внешний:math — второй экземпляр server-everything (для демонстрации multi-сервера)
Переменные окружения (.env)
PORT=3000 # Порт сервера
LOG_LEVEL=info # Уровень логирования
MCP_EXTERNAL_ENABLED=true # Включить внешние MCP-серверы
MCP_EXTERNAL_SERVERS=... # Список серверов (id,command,args;...)
CHAT_API_KEY=sk-... # API-ключ DeepSeek
CHAT_MODEL=deepseek-chat # Модель для чатаThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceMCP Server provides a simpler API to interact with the Model Context Protocol by allowing users to define custom tools and services to streamline workflows and processes.Last updated283MIT
- Alicense-qualityBmaintenanceA Python-based MCP server that integrates OpenAPI-described REST APIs into MCP workflows, enabling dynamic exposure of API endpoints as MCP tools.Last updated152MIT
- AlicenseAqualityCmaintenanceMCP server that provides tools for exploring and testing APIs through Swagger/OpenAPI documentation.Last updated510312MIT
- AlicenseAqualityDmaintenanceA universal MCP server that exposes all UTCP-registered tools to MCP clients while providing a web interface for tool management.Last updated79202MIT
Related MCP Connectors
MCP server exposing the Backtest360 engine API as tools for AI agents.
An MCP server giving access to Grafana dashboards, data and more.
34 production API tools over one hosted MCP endpoint.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/lapaduga/mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server