Minecraft MCP

Controla un personaje de Minecraft para construir, explorar e interactuar con el mundo del juego usando lenguaje natural.

Documentación

Minecraft MCP Server

CI Contribution Welcome Latest Release image

[!IMPORTANT] Actualmente soporta la versión 1.21.11 de Minecraft. Las versiones más nuevas pueden no funcionar con este servidor MCP, pero añadiremos soporte lo antes posible.

https://github.com/user-attachments/assets/6f17f329-3991-4bc7-badd-7cde9aacb92f

Un bot de Minecraft impulsado por grandes modelos de lenguaje y la API de Mineflayer. Este bot utiliza el Protocolo de Contexto de Modelo (MCP) para permitir que Claude y otros modelos compatibles controlen un personaje de Minecraft.

mcp-minecraft MCP server

Requisitos previos

  • Git
  • Node.js (>= 20.10.0)
  • Un juego de Minecraft en ejecución (la configuración a continuación se probó con Minecraft 1.21.8 Java Edition incluido en Microsoft Game Pass)
  • Un cliente compatible con MCP. Se usará Claude Desktop como ejemplo, pero también se admiten otros clientes MCP

Cómo empezar

Este bot está diseñado para usarse con Claude Desktop a través del Protocolo de Contexto de Modelo (MCP).

Ejecutar Minecraft

Crea un mundo de un jugador y ábrelo a LAN (ESC -> Open to LAN). El bot intentará conectarse usando el puerto 25565 y el nombre de host localhost. Estos parámetros se pueden configurar en claude_desktop_config.json en el siguiente paso.

Configuración de MCP

Asegúrate de que Claude Desktop esté instalado. Abre File -> Settings -> Developer -> Edit Config. Debería abrir el directorio de instalación. Encuentra el archivo con el nombre claude_desktop_config.json e inserta el siguiente código:

{
  "mcpServers": {
    "minecraft": {
      "command": "npx",
      "args": [
        "-y",
        "github:yuniko-software/minecraft-mcp-server",
        "--host",
        "localhost",
        "--port",
        "25565",
        "--username",
        "ClaudeBot"
      ]
    }
  }
}

Verifica que se usaron los parámetros correctos --port y --host. Asegúrate de reiniciar completamente la aplicación Claude Desktop (debe cerrarse en la bandeja del sistema).

Ejecución

Asegúrate de que el juego de Minecraft esté en ejecución y que el mundo esté abierto a LAN. Luego inicia la aplicación Claude Desktop y el bot debería unirse al juego.

Puede tomar algo de tiempo para que Claude Desktop inicie el servidor MCP. El marcador de que el servidor se ha iniciado correctamente:

image

Puedes darle al bot cualquier comando a través de cualquier chat activo de Claude Desktop. También puedes subir imágenes de edificios y pedirle al bot que los construya 😁

No olvides mencionar en tu mensaje que el bot debe hacer algo en Minecraft. Porque decir esto es un disparador para ejecutar el servidor MCP. Pedirá tus permisos.

Usar Claude Sonnet podría darte resultados interesantes. El agente-bot sería realmente inteligente 🫡

Ejemplo de uso: chat de Claude compartido

Comandos disponibles

Una vez conectado a un servidor de Minecraft, Claude puede usar estos comandos:

Movimiento

  • get-position - Obtener la posición actual del bot
  • move-to-position - Moverse a coordenadas específicas
  • look-at - Hacer que el bot mire a coordenadas específicas
  • jump - Hacer que el bot salte
  • move-in-direction - Moverse en una dirección específica durante un tiempo

Vuelo

  • fly-to - Hacer que el bot vuele directamente a coordenadas específicas

Inventario

  • list-inventory - Listar todos los elementos del inventario del bot
  • find-item - Encontrar un elemento específico en el inventario
  • equip-item - Equipar un elemento específico

Interacción con bloques

  • place-block - Colocar un bloque en coordenadas específicas
  • dig-block - Excavar un bloque en coordenadas específicas
  • get-block-info - Obtener información sobre un bloque
  • find-blocks - Encontrar uno o más bloques cercanos de un tipo específico

Horno

  • smelt-item - Fundir elementos usando un bloque tipo horno

Interacción con entidades

  • find-entity - Encontrar la entidad más cercana de un tipo específico

Comunicación

  • send-chat - Enviar un mensaje de chat en el juego
  • read-chat - Obtener mensajes de chat recientes de los jugadores

Estado del juego

  • detect-gamemode - Detectar el modo de juego en el juego

Contribuciones

Siéntete libre de enviar solicitudes de extracción o abrir problemas para mejoras. ¡Todos los commits de refactorización, contribuciones funcionales y de prueba, problemas y discusiones son muy apreciados!

Para comenzar a contribuir, consulta CONTRIBUTING.md.


⭐ Si encuentras útil este proyecto, ¡considera darle una estrella en GitHub! ⭐

Tu apoyo ayuda a que este proyecto sea más visible para otras personas que podrían beneficiarse de él.