websupport-mcp
websupport-mcp
Un servidor MCP (TypeScript, ESM, stdio) que envuelve la API REST de Websupport v1 + v2 — DNS, FTP, alojamiento, bases de datos, buzones, VPS y facturas — expuesta como herramientas MCP con autenticación firmada HMAC-SHA1.
Estado: en desarrollo. Las 50 herramientas están implementadas y el servidor funciona. Lo que queda es verificación contra una cuenta que posea recursos reales, empaquetado y publicación. Consulte IMPLEMENTATION_PLAN.md para ver el progreso.
Niveles de riesgo
Las herramientas se registran en tres niveles, y el nivel controla el registro — un despliegue de solo lectura nunca ve una herramienta de escritura en tools/list, por lo que no cuesta contexto de cliente y no ofrece ninguna opción.
Nivel | Activación | Control adicional por llamada | Actualmente |
| siempre activo | — | 30 herramientas |
|
| — | 13 herramientas |
|
| argumento | 7 herramientas |
Una herramienta es destructive cuando destruye un estado que no se puede recrear fácilmente — no solo porque escribe. Un reinicio elegante de VPS es write; un ciclo de apagado forzado es destructive, porque puede corromper escrituras en curso. Tomar una instantánea es write; restaurarla es destructive, porque descarta todo lo posterior.
Las dos activaciones son independientes: WEBSUPPORT_ALLOW_DESTRUCTIVE=1 por sí solo no desbloquea las herramientas de escritura, y viceversa.
El argumento confirm: true, no la elicitación de MCP, es el límite de seguridad. La negociación del protocolo puede establecerse muy por debajo de la revisión que admite la elicitación — el SDK de este servidor actualmente llega como máximo a 2025-11-25 — y una barrera que desaparece con un cliente más antiguo no es una barrera.
Related MCP server: cpanel-mcp
Instalación
Aún no publicado. Para ejecutarlo desde una copia local:
npm install
npm run buildLuego apunte un cliente MCP a él:
Requiere Node >= 22.
{
"mcpServers": {
"websupport": {
"command": "node",
"args": ["/absolute/path/to/websupport-mcp/dist/index.js"],
"env": {
"WEBSUPPORT_API_KEY": "…",
"WEBSUPPORT_API_SECRET": "…"
}
}
}
}Credenciales
Genere un par de acceso a la API Estándar en WebAdmin (Seguridad → Claves de API). Un par solo DynDNS autentica contra /nic/update y nada más.
Variable | Requerida | Por defecto | Notas |
| sí | — | El identificador del par. |
| sí | — | El secreto del par. Se usa para firmar HMAC-SHA1; nunca se registra, nunca se devuelve en un error. |
| no |
| Selección de mercado — ver más abajo. |
| no |
| Uno de |
| no | desactivado | Establezca a |
| no | desactivado | Establezca a |
Copie .env.example para el desarrollo local. .env está en gitignore.
Mercados
Websupport es una marca regional de team.blue/Loopia, por lo que el host de la API selecciona el mercado. La misma aplicación sirve a cada host — GET /v2/docs/openapi.json es idéntico byte a byte en todos ellos — por lo que cambiar de mercado es configuración, nunca un cambio de código.
Mercado |
|
Eslovaquia (por defecto) |
|
Chequia |
|
Hungría |
|
Suecia |
|
Un host no reconocido advierte a stderr y se usa de todos modos, por lo que un mercado recién añadido funciona sin esperar a una versión.
Documentación
Documento | Qué contiene |
Cada herramienta: nivel, método + ruta, requisito de confirmación. Generado desde el registro — nunca editado a mano. | |
Lo que realmente se ha probado sobre cada herramienta, y lo que no. Lea esto antes de confiar en cualquier herramienta en producción. |
Alcance
Los endpoints de creación de pedidos y de pago de facturas/pedidos están deliberadamente fuera del alcance y se verifica su ausencia mediante pruebas. El CRUD de registros DNS v1 y el CRUD de cuentas FTP v1 están obsoletos en el proveedor y no se exponen — las herramientas v2 cubren ambos.
Desarrollo
npm test # offline suite
npm run test:network # live, unauthenticated probes (market hosts + OpenAPI drift)
npm run typecheck
npm run lint
npm run buildLas suites de red están separadas deliberadamente: una caída de Websupport no debe hacer fallar la compilación.
Cadena de herramientas
Node >= 22, para ejecutar o compilar. Node 20 llegó al final de su vida útil el 2026-04-30 y no está soportado. CI cubre las dos líneas LTS activas, 22 y 24, y compila y prueba el paquete en cada una.
Compilar también requiere npm >= 11: npm 10 no puede resolver el árbol de dependencias del empaquetador y falla con un mensaje poco útil Cannot read properties of null (reading 'edgesOut'). Si le ocurre, actualice npm en lugar de depurar el repositorio.
Seguridad
Las credenciales que este servidor posee otorgan control total de una cuenta de Websupport — no existe un par de API de solo lectura. SECURITY.md cubre cómo se manejan, qué herramientas devuelven datos sensibles y cómo informar de una vulnerabilidad de forma privada.
Contribuciones
Consulte CONTRIBUTING.md. Tenga en cuenta dos límites impuestos por pruebas en lugar de revisión: no hay endpoints de pedidos o pagos, y cada herramienta destructiva debe declarar confirm: true.
Licencia
MIT — consulte LICENSE.
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
- AlicenseBqualityBmaintenanceMCP server to help manage a WHMCS installation.623919MIT
- AlicenseNot gradedqualityFmaintenanceA comprehensive MCP server for managing cPanel web hosting accounts via UAPI, enabling file, database, email, domain, cron, backup, and system monitoring operations.213MIT
- AlicenseBqualityCmaintenanceMCP server for the adm.tools / ukraine.com.ua hosting API, providing tools to manage hosting services, accounts, sites, and web apps.51MIT
- AlicenseAqualityCmaintenanceMCP server for the DreamHost API that enables DNS management (list, add, remove records) and API metacommands.5MIT
Related MCP Connectors
Agent-first web hosting: deploy sites, apps, databases and domains over MCP.
An MCP server that let you interact with Cycloid.io Internal Development Portal and Platform
A basic MCP server to operate on the Postman API.
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/tydung26/websupport-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server