Bedrock Server Manager
Gestiona tu servidor Bedrock con comandos en lenguaje natural usando la API de Bedrock Server Manager.
Documentación
Servidor MCP de Bedrock Server Manager
Un servidor integral del Protocolo de Contexto de Modelos (MCP) que proporciona acceso en lenguaje natural a la funcionalidad de Bedrock Server Manager. Este servidor le permite gestionar sus servidores de Minecraft Bedrock Edition a través de asistentes de IA como Claude Desktop utilizando comandos conversacionales simples.
🚀 Características
Gestión de Servidores
- Ciclo de Vida del Servidor: Iniciar, detener, reiniciar y monitorear el estado del servidor
- Instalación de Servidores: Instalar nuevos servidores con configuraciones personalizadas
- Actualizaciones de Servidores: Actualizar servidores a versiones específicas o versiones recientes
- Validación de Servidores: Verificar la integridad y configuración del servidor
Gestión de Jugadores y Mundos
- Gestión de Listas de Permitidos: Agregar/eliminar jugadores de las listas de permitidos del servidor
- Permisos de Jugadores: Ver y gestionar los niveles de permisos de los jugadores
- Operaciones de Mundos: Restablecer mundos, exportar/importar archivos de mundos, instalar mundos personalizados
- Listas Globales de Jugadores: Gestionar listas globales de jugadores entre servidores
Copias de Seguridad y Restauración
- Copias de Seguridad Automatizadas: Crear copias de seguridad de servidores y mundos bajo demanda
- Gestión de Copias de Seguridad: Listar, depurar y gestionar archivos de copia de seguridad
- Operaciones de Restauración: Restaurar servidores desde archivos de copia de seguridad específicos
- Exportar/Importar: Exportar mundos e importar contenido personalizado
Características Avanzadas
- Gestión de Complementos: Instalar y gestionar complementos de Bedrock
- Control de Plugins: Habilitar/deshabilitar plugins, recargar configuraciones, activar eventos
- Tareas Programadas: Crear y gestionar trabajos cron (Linux/macOS) o tareas de Windows
- Monitoreo del Sistema: Ver información del sistema y detalles de procesos del servidor
- Gestión de Configuración: Actualizar propiedades del servidor y configuraciones de servicios
📋 Requisitos Previos
- Python 3.8 o superior
- Acceso a una instancia en ejecución de Bedrock Server Manager
- Credenciales válidas para su Bedrock Server Manager
🛠️ Instalación
1. Clonar o Descargar
git clone <repository-url>
cd BedrockMCP
2. Crear Entorno Virtual
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
3. Instalar Dependencias
pip install -r requirements.txt
4. Configuración del Entorno
Cree un archivo .env en la raíz del proyecto:
# Required: Your Bedrock Server Manager API endpoint
BEDROCK_API_BASE=http://localhost:11325
# Required: Authentication credentials
BEDROCK_SERVER_MANAGER_USERNAME=your_username
BEDROCK_SERVER_MANAGER_PASSWORD=your_password
# Optional: Enable debug output for API responses
BEDROCK_DEBUG=false
Notas de Configuración:
- El puerto predeterminado de Bedrock Server Manager es
11325 - Reemplace
localhostcon la dirección IP de su servidor si se ejecuta de forma remota - Asegúrese de que su instancia de Bedrock Server Manager esté en ejecución y sea accesible
🎯 Uso
Modo Independiente
python bedrock_mcp_server.py
Agregue el indicador --debug para el registro detallado de respuestas de la API:
python bedrock_mcp_server.py --debug
Con Claude Desktop
-
Abra la Configuración de Claude Desktop
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Agregue la Configuración del Servidor MCP
{ "mcpServers": { "bedrock-server-manager": { "command": "/path/to/your/BedrockMCP/start_bedrock_mcp.sh", "args": [] } } } -
Haga Ejecutable el Script de Inicio (macOS/Linux)
chmod +x start_bedrock_mcp.sh -
Actualice la Ruta del Script Edite
start_bedrock_mcp.shy actualice la ruta del proyecto en la línea 4:cd /your/actual/path/to/BedrockMCP -
Reinicie Claude Desktop
🔧 Herramientas Disponibles
- El conjunto de herramientas y endpoints disponibles está evolucionando rápidamente. Para obtener la lista más actualizada, consulte la especificación OpenAPI de bedrock-server-manager o use comandos en lenguaje natural con su asistente LLM para descubrir las capacidades actuales.
💬 Ejemplos de Comandos
Una vez configurado con Claude Desktop, puede usar comandos en lenguaje natural como:
Operaciones de Servidor
- "¿Qué servidores tengo y cuál es su estado?"
- "Inicia mi servidor de supervivencia"
- "Detén el servidor creativo y luego reinícialo"
- "¿Cuál es el estado detallado de mi servidor principal?"
Gestión de Jugadores
- "¿Quién está en la lista de permitidos de mi servidor de supervivencia?"
- "Agrega a Steve y Alex a la lista de permitidos del servidor de supervivencia"
- "Elimina a Bob de la lista de permitidos del servidor creativo"
- "¿Cuáles son los permisos de jugadores en mi servidor?"
Comandos del Servidor
- "Envía el comando 'list' a mi servidor de supervivencia"
- "Diles a todos los jugadores del servidor creativo que el servidor se reiniciará en 5 minutos"
- "Cambia la dificultad a difícil en mi servidor de supervivencia"
Operaciones de Copia de Seguridad
- "Crea una copia de seguridad de mi servidor de supervivencia"
- "Muéstrame todas las copias de seguridad del servidor creativo"
- "Restaura mi servidor de supervivencia desde la copia de seguridad de ayer"
- "Elimina copias de seguridad antiguas, conservando solo las últimas 5"
Gestión de Mundos
- "Restablece el mundo en mi servidor de pruebas"
- "Instala el mundo 'skyblock' en mi servidor de aventuras"
- "Exporta el mundo de mi servidor de supervivencia"
Operaciones Avanzadas
- "Actualiza mi servidor principal a la versión más reciente"
- "Instala el complemento better-spawning en todos mis servidores"
- "Crea un trabajo de copia de seguridad diario para mi servidor de supervivencia"
- "Muéstrame la información del sistema"
🔍 Solución de Problemas
Problemas de Conexión
-
Verifique que Bedrock Server Manager esté en ejecución
curl http://localhost:11325/api/health -
Verifique las credenciales en el archivo .env
- Asegúrese de que el nombre de usuario y la contraseña sean correctos
- Verifique que la URL de BEDROCK_API_BASE sea accesible
-
Habilite el modo de depuración
python bedrock_mcp_server.py --debug
Problemas Comunes
"No se puede obtener la lista de servidores"
- Verifique si Bedrock Server Manager está en ejecución
- Verifique la conectividad de red al endpoint de la API
- Confirme las credenciales de autenticación
"Error de inicio de sesión"
- Vuelva a verificar el nombre de usuario y la contraseña en
.env - Asegúrese de que Bedrock Server Manager permita el acceso a la API
Errores de permisos de script (macOS/Linux)
chmod +x start_bedrock_mcp.sh
🧪 Pruebas de Cobertura de API
Para garantizar que todos los endpoints de OpenAPI estén mapeados a funciones MCP (y viceversa), este proyecto incluye scripts automatizados de cobertura:
- Extraer Endpoints de OpenAPI:
extract_openapi_endpoints.pyobtiene la especificación OpenAPI de su instancia en ejecución de Bedrock Server Manager (host y puerto configurables) y genera todos los endpoints con susoperationIdenopenapi_endpoints.json.
- Extraer Funciones MCP:
extract_mcp_functions.pyescaneabedrock_mcp_server.pyen busca de funciones expuestas por MCP (decoradas con@mcp_tool_testable) y las genera enmcp_functions.json.
- Ejecutar Prueba de Cobertura:
test_api_coverage.py(ejecutado conpytest) compara las dos listas e informa cualquier endpoint o función no mapeado.
- Flujo de Trabajo Automatizado:
run_api_coverage_check.pyautomatiza todos los pasos anteriores.
Cómo Usar
Ejecute el flujo de trabajo de cobertura y opcionalmente especifique el host y puerto del servidor
(valores predeterminados localhost y 11325):
python run_api_coverage_check.py [server] [port]
Esto:
- Generará
openapi_endpoints.jsonymcp_functions.json - Ejecutará la prueba de cobertura e imprimirá cualquier mapeo faltante o adicional
Requisitos
pytestdebe estar instalado (consulte Dependencias a continuación)
Propósito
- Este flujo de trabajo ayuda a mantener sincronizados su documentación OpenAPI y su implementación MCP, garantizando que todos los endpoints estén cubiertos y documentados.
📝 Dependencias
- mcp (>=1.2.0) - Implementación del Protocolo de Contexto de Modelos
- httpx (>=0.24.0) - Cliente HTTP moderno para solicitudes de API
- python-dotenv (>=1.0.0) - Gestión de variables de entorno
- pytest (para pruebas de cobertura de API)
🤝 Contribuciones
Este proyecto interactúa con Bedrock Server Manager. Para problemas relacionados con el propio administrador de servidores, consulte el repositorio de ese proyecto.
📄 Licencia
Este proyecto se proporciona tal cual para uso educativo y personal. Respete las licencias del Bedrock Server Manager subyacente y de Minecraft Bedrock Edition.