Math & Numbers
Calcula el árbol de expansión mínima de un grafo no dirigido ponderado (1–30 aristas, una por línea: nodo1, nodo2, peso) con dos algoritmos: Kruskal ordena por peso y usa unión-búsqueda, registrando cada arista aceptada o rechazada por ciclo; Prim parte de un nodo inicial y toma en cada paso la arista más barata que sale del componente, mostrando su crecimiento. Los bucles se omiten; un grafo desconectado se rechaza indicando el número de componentes; ambos algoritmos deben coincidir en el peso total (verificación interna). Clásico: A-B 4, A-C 2, B-C 5, B-D 10, C-E 3, D-E 4, D-F 11, E-F 8 → peso del MST 21 (A—C, C—E, A—B, D—E, E—F) y B—C rechazada por ciclo.
Llama a esta herramienta desde tu código en tres lenguajes.
curl -X POST 'https://api.elysiatools.com/es/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}'Envía una petición POST con tus entradas en JSON. Los parámetros de tipo archivo requieren una subida previa.
POST https://api.elysiatools.com/es/api/tools/minimum-spanning-tree| Nombre | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| edges | textarea | Sí | One undirected edge per line: two node names (1–8 letters/digits) and a weight (negatives allowed). |
| algorithm | select | Sí | — |
| startNode | text | No | — |
| decimalPlaces | number | No | — |
Resultado de texto
{
"result": "Processed text content",
"error": "Error message (optional)",
"message": "Notification message (optional)",
"metadata": {
"key": "value"
}
}Añade esta herramienta a tu servidor Model Context Protocol para que los agentes de IA puedan listarla y llamarla.
Añade este bloque a la configuración de tu cliente MCP:
{
"mcpServers": {
"elysiatools-minimum-spanning-tree": {
"name": "minimum-spanning-tree",
"description": "Calcula el árbol de expansión mínima de un grafo no dirigido ponderado (1–30 aristas, una por línea: nodo1, nodo2, peso) con dos algoritmos: Kruskal ordena por peso y usa unión-búsqueda, registrando cada arista aceptada o rechazada por ciclo; Prim parte de un nodo inicial y toma en cada paso la arista más barata que sale del componente, mostrando su crecimiento. Los bucles se omiten; un grafo desconectado se rechaza indicando el número de componentes; ambos algoritmos deben coincidir en el peso total (verificación interna). Clásico: A-B 4, A-C 2, B-C 5, B-D 10, C-E 3, D-E 4, D-F 11, E-F 8 → peso del MST 21 (A—C, C—E, A—B, D—E, E—F) y B—C rechazada por ciclo.",
"baseUrl": "https://api.elysiatools.com/mcp/sse?toolId=minimum-spanning-tree",
"command": "",
"args": [],
"env": {},
"isActive": true,
"type": "sse"
}
}
}Tras conectar al endpoint SSE, lista las herramientas expuestas:
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}Invoca la herramienta por su id; los argumentos se construyen a partir de sus parámetros:
{
"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
}
}
}¿Dudas o problemas? Contacta con [email protected]