DesarrolladoresServidor MCP

Servidor MCP de Hostwolf

@hostwolf/mcp permite que los asistentes de IA gestionen tus servidores de juegos de Hostwolf. Funciona con Claude, Cursor, VS Code y cualquier otro cliente compatible con el Model Context Protocol. Pregunta cosas como:

  • «¿Por qué se cayó anoche mi servidor de Minecraft?»
  • «Instala EssentialsX y reinicia».
  • «Haz una copia de seguridad de Valheim y luego cámbialo a la rama de pruebas pública».
  • «Banea al jugador griefer123 y explica a todos por qué».
  • «Reinicia todos los servidores cada día a las 4:00».

Configuración#

  1. Crea una clave API en panel.hostwolf.net/account/api.
  2. Conecta tu cliente. Puedes usar el servidor alojado en https://hostwolf.net/mcp (sin instalar nada) o ejecutarlo tú mismo desde la descarga (requiere Node.js 18+).

Alojado: https://hostwolf.net/mcp#

Nada que instalar y siempre la última versión. Tu cliente envía tu clave en cada petición; nunca la guardamos.

Claude Code

claude mcp add --transport http hostwolf https://hostwolf.net/mcp --header "Authorization: Bearer ptlc_your_key"

Claude Desktop

Claude Desktop solo ejecuta servidores locales, así que se conecta al alojado mediante mcp-remote. Añade esto a claude_desktop_config.json (Ajustes → Desarrollador → Editar configuración):

{
  "mcpServers": {
    "hostwolf": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://hostwolf.net/mcp", "--header", "Authorization:${AUTH_HEADER}"],
      "env": { "AUTH_HEADER": "Bearer ptlc_your_key" }
    }
  }
}

Cursor

Añade esto a ~/.cursor/mcp.json, o a .cursor/mcp.json dentro de un proyecto:

{
  "mcpServers": {
    "hostwolf": {
      "url": "https://hostwolf.net/mcp",
      "headers": { "Authorization": "Bearer ptlc_your_key" }
    }
  }
}

VS Code

Añade esto a .vscode/mcp.json:

{
  "servers": {
    "hostwolf": {
      "type": "http",
      "url": "https://hostwolf.net/mcp",
      "headers": { "Authorization": "Bearer ptlc_your_key" }
    }
  }
}

Las opciones van en la URL: https://hostwolf.net/mcp?readonly=1 ofrece solo herramientas de lectura, y ?servers=1a2b3c4d,5e6f7a8b limita el asistente a esos servidores. Si tu clave está restringida a ciertas direcciones IP, permite también 162.55.180.229, la dirección del servidor alojado.

Ejecútalo tú mismo#

El mismo servidor como descarga. Se ejecuta en tu ordenador, así que tu clave nunca sale de él.

Claude Code

claude mcp add hostwolf -e HOSTWOLF_API_KEY=ptlc_your_key -- npx -y https://hostwolf.net/dl/hostwolf-mcp-0.1.8.tgz

Claude Desktop

Añade esto a claude_desktop_config.json (Ajustes → Desarrollador → Editar configuración):

{
  "mcpServers": {
    "hostwolf": {
      "command": "npx",
      "args": ["-y", "https://hostwolf.net/dl/hostwolf-mcp-0.1.8.tgz"],
      "env": { "HOSTWOLF_API_KEY": "ptlc_your_key" }
    }
  }
}

Cursor

Añade esto a ~/.cursor/mcp.json, o a .cursor/mcp.json dentro de un proyecto:

{
  "mcpServers": {
    "hostwolf": {
      "command": "npx",
      "args": ["-y", "https://hostwolf.net/dl/hostwolf-mcp-0.1.8.tgz"],
      "env": { "HOSTWOLF_API_KEY": "ptlc_your_key" }
    }
  }
}

VS Code

Añade esto a .vscode/mcp.json:

{
  "servers": {
    "hostwolf": {
      "command": "npx",
      "args": ["-y", "https://hostwolf.net/dl/hostwolf-mcp-0.1.8.tgz"],
      "env": { "HOSTWOLF_API_KEY": "ptlc_your_key" }
    }
  }
}

Ajustes#

Para el servidor que ejecutas tú; el alojado recibe ?readonly=1 y ?servers= en su URL.

VariableSignificado
HOSTWOLF_API_KEYObligatoria. Tu clave API de cliente (ptlc_...).
HOSTWOLF_READONLY1 para ofrecer solo herramientas de lectura, que nunca cambian nada.
HOSTWOLF_SERVERSIDs de servidor permitidos, separados por comas; el resto quedan ocultos.
HOSTWOLF_BASE_URLURL del panel (por defecto https://panel.hostwolf.net).
HOSTWOLF_NO_UPDATE_CHECK1 para omitir la comprobación de versiones nuevas al iniciar.

Herramientas#

Puedes referirte a los servidores por su ID o por su nombre («mi servidor survival»). Cada herramienta llama a la API REST a través del SDK, así que lo que una herramienta aún no haga está a unas pocas líneas de código.

Consultar y diagnosticar:

  • list_servers: estado, dirección y uso de RAM.
  • get_server: detalles de un servidor.
  • get_console: últimas líneas de la consola.
  • diagnose_server: ejecuta las comprobaciones de «Fix my server».
  • list_players.

Control:

  • power_server: iniciar, detener, reiniciar o forzar el cierre (kill).
  • send_command.
  • player_action: expulsar, banear, desbanear o enviar un aviso.
  • reinstall_server.

Archivos:

  • list_files.
  • read_file: recorre archivos largos por partes.
  • write_file.
  • rename_file.
  • delete_files.

Copias de seguridad:

  • list_backups.
  • create_backup.
  • restore_backup.
  • delete_backup.

Configuración:

  • get_startup y set_startup_variable.
  • get_game_settings y update_game_settings.
  • get_game_versions y set_game_version.

Mods:

  • search_addons.
  • list_installed_addons.
  • install_addon y uninstall_addon.
  • search_modpacks y install_modpack.

Bases de datos:

  • list_databases: datos de conexión y quién puede conectarse desde fuera.
  • create_database: la primera de un servidor espera unos 40 segundos mientras arranca el servicio de bases de datos.
  • set_database_remote_access: permite las IP de otros servidores, o a cualquiera con la contraseña.
  • rotate_database_password y delete_database.
  • export_database e import_database: guarda un .sql.gz en tu ordenador o carga uno. Solo en el servidor que ejecutas tú.

Las contraseñas quedan ocultas salvo que le pidas a tu asistente que las muestre.

Programaciones:

  • list_schedules.
  • create_schedule.
  • delete_schedule.

Cuenta:

  • get_plans_and_prices: juegos, tamaños de plan y precios por región.
  • list_orders.

Seguridad#

  • Las herramientas que cambian algo están marcadas para tu cliente. Las destructivas llevan destructiveHint, así que los clientes preguntan antes de ejecutarlas: forzar apagado, restaurar, borrar archivos, copias de seguridad, programaciones o bases de datos, importar una base de datos, reinstalar, cambiar de versión, instalar un modpack y sobrescribir archivos.
  • HOSTWOLF_READONLY=1 (o ?readonly=1 en la URL alojada) quita todas las herramientas que modifican algo.
  • HOSTWOLF_SERVERS (o ?servers=) limita el asistente a servidores concretos.
  • El servidor alojado comprueba tu clave con el panel, no guarda nada entre peticiones y nunca registra claves ni argumentos de las herramientas. Tiene límite de peticiones por dirección y por clave.
  • Las claves API no pueden contratar, cancelar ni pagar servidores. Eso solo se hace en el panel web.
  • Puedes crear una clave solo para tu asistente y revocarla cuando quieras desde el panel.

Solución de problemas#

  • «Send your Hostwolf API key» (401): el cliente no envió la cabecera Authorization: Bearer ptlc_.... Revisa la cabecera en tu configuración.
  • «This API key was rejected by the panel» (401): la clave es incorrecta, está incompleta o revocada. Copia la clave entera, que empieza por ptlc_.
  • «This API key has an IP allow-list…» (401): el servidor alojado llama a la API desde 162.55.180.229. Crea una clave que permita esa dirección, o una sin lista de IP permitidas, o ejecuta el servidor tú mismo.
  • «Too many requests» (429): el servidor alojado acepta 300 peticiones por minuto por dirección y 180 por clave. Las herramientas también informan de los límites propios de la API, como 2 copias cada 10 minutos, con los segundos que hay que esperar.
  • «Server busy» (503): vuelve a intentarlo en unos segundos.
  • Una tarea larga parece detenerse: cada herramienta responde en menos de 50 segundos. Las copias de seguridad, restauraciones, reinstalaciones e instalaciones de modpacks siguen en segundo plano, así que pide a tu asistente que lo compruebe con get_server o list_backups.
  • Una base de datos nueva dice «configurando»: create_database espera hasta 2 minutos (75 segundos en el servidor alojado) a que arranque el servicio de bases de datos. Si no está listo para entonces, lo dice, y la base de datos aparece poco después en list_databases.

Actualizar#

El servidor alojado siempre está al día. En el que ejecutas tú, npx guarda el servidor en caché según su URL, así que nunca se actualiza solo. Cada versión tiene su propia URL, y el servidor consulta hostwolf.net/dl/index.json al iniciar. Si hay una versión más nueva, deja un aviso en el registro y lo añade al resultado de list_servers, para que tu asistente te lo diga. Para actualizar, cambia la versión en la URL de tu configuración y reinicia tu cliente.

Basado en el SDK#

Las herramientas usan @hostwolf/sdk, que va incluido en este paquete. Para integrar el servidor en tu propia aplicación, instala los dos paquetes:

npm install https://hostwolf.net/dl/hostwolf-sdk-0.1.8.tgz https://hostwolf.net/dl/hostwolf-mcp-0.1.8.tgz
import { Hostwolf } from '@hostwolf/sdk';
import { createHostwolfMcp } from '@hostwolf/mcp/server';

Licencia#

MIT

¿Atascado, o te falta un endpoint? Escríbenos en game.hostwolf.net/contact o a support@hostwolf.net.