Math & Numbers
Строит минимальное остовное дерево неориентированного взвешенного графа (1–30 рёбер, по одному на строку: узел1, узел2, вес) двумя алгоритмами: Краскал сортирует рёбра по весу и проверяет их структурой непересекающихся множеств, протоколируя каждое принятое ребро и каждое отклонённое за цикл; Прим стартует с начального узла и на каждом шаге берёт самое дешёвое ребро, покидающее компоненту, показывая её рост. Петли пропускаются; несвязный граф отклоняется с указанием числа компонент; итоговые веса обоих алгоритмов обязаны совпасть (внутренняя проверка). Классика: A-B 4, A-C 2, B-C 5, B-D 10, C-E 3, D-E 4, D-F 11, E-F 8 → вес МОД 21 (A—C, C—E, A—B, D—E, E—F), ребро B—C отклонено за цикл.
Вызовите этот инструмент из своего кода на трёх языках.
curl -X POST 'https://api.elysiatools.com/ru/api/tools/minimum-spanning-tree' \
-H 'Content-Type: application/json' \
-d '{"edges":"A B 4\nA C 2\nB C 5\nB D 10\nC E 3\nD E 4\nD F 11\nE F 8","algorithm":"kruskal","startNode":"e.g. D","decimalPlaces":2}'Отправьте POST-запрос с входными данными в JSON. Параметры типа «файл» требуют предварительной загрузки.
POST https://api.elysiatools.com/ru/api/tools/minimum-spanning-tree| Имя | Тип | Обязательный | Описание |
|---|---|---|---|
| edges | textarea | Да | One undirected edge per line: two node names (1–8 letters/digits) and a weight (negatives allowed). |
| algorithm | select | Да | — |
| startNode | text | Нет | — |
| decimalPlaces | number | Нет | — |
Текстовый результат
{
"result": "Processed text content",
"error": "Error message (optional)",
"message": "Notification message (optional)",
"metadata": {
"key": "value"
}
}Добавьте этот инструмент на свой сервер Model Context Protocol, чтобы ИИ-агенты могли перечислять и вызывать его.
Добавьте этот блок в конфигурацию вашего MCP-клиента:
{
"mcpServers": {
"elysiatools-minimum-spanning-tree": {
"name": "minimum-spanning-tree",
"description": "Строит минимальное остовное дерево неориентированного взвешенного графа (1–30 рёбер, по одному на строку: узел1, узел2, вес) двумя алгоритмами: Краскал сортирует рёбра по весу и проверяет их структурой непересекающихся множеств, протоколируя каждое принятое ребро и каждое отклонённое за цикл; Прим стартует с начального узла и на каждом шаге берёт самое дешёвое ребро, покидающее компоненту, показывая её рост. Петли пропускаются; несвязный граф отклоняется с указанием числа компонент; итоговые веса обоих алгоритмов обязаны совпасть (внутренняя проверка). Классика: A-B 4, A-C 2, B-C 5, B-D 10, C-E 3, D-E 4, D-F 11, E-F 8 → вес МОД 21 (A—C, C—E, A—B, D—E, E—F), ребро B—C отклонено за цикл.",
"baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=minimum-spanning-tree",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}После подключения к SSE-endpoint выведите список доступных инструментов:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Вызовите инструмент по его id; аргументы формируются из его параметров:
{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/call",
"params": {
"name": "minimum-spanning-tree",
"arguments": {
"edges": "A B 4\nA C 2\nB C 5\nB D 10\nC E 3\nD E 4\nD F 11\nE F 8",
"algorithm": "kruskal",
"startNode": "e.g. D",
"decimalPlaces": 2
}
}
}Вопросы или проблемы? Свяжитесь с [email protected]