Minecraft MCP

Controle um personagem do Minecraft para construir, explorar e interagir com o mundo do jogo usando linguagem natural.

Documentação

Servidor MCP Minecraft

CI Contribution Welcome Latest Release image

[!IMPORTANT] Atualmente suporta a versão 1.21.11 do Minecraft. Versões mais novas podem não funcionar com este servidor MCP, mas adicionaremos suporte o mais rápido possível.

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

Um bot de Minecraft alimentado por grandes modelos de linguagem e pela API Mineflayer. Este bot usa o Model Context Protocol (MCP) para permitir que Claude e outros modelos compatíveis controlem um personagem no Minecraft.

mcp-minecraft MCP server

Pré-requisitos

  • Git
  • Node.js (>= 20.10.0)
  • Um jogo Minecraft em execução (a configuração abaixo foi testada com Minecraft 1.21.8 Java Edition incluído no Microsoft Game Pass)
  • Um cliente compatível com MCP. O Claude Desktop será usado como exemplo, mas outros clientes MCP também são compatíveis

Começando

Este bot foi projetado para ser usado com o Claude Desktop por meio do Model Context Protocol (MCP).

Executar o Minecraft

Crie um mundo singleplayer e abra-o para LAN (ESC -> Open to LAN). O bot tentará se conectar usando a porta 25565 e o hostname localhost. Esses parâmetros podem ser configurados em claude_desktop_config.json na próxima etapa.

Configuração do MCP

Certifique-se de que o Claude Desktop esteja instalado. Abra File -> Settings -> Developer -> Edit Config. Ele deve abrir o diretório de instalação. Encontre o arquivo com o nome claude_desktop_config.json e insira o seguinte código:

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

Verifique novamente se os parâmetros corretos de --port e --host foram usados. Certifique-se de reiniciar completamente o aplicativo Claude Desktop (ele deve ser fechado na bandeja do sistema).

Execução

Certifique-se de que o jogo Minecraft esteja em execução e que o mundo esteja aberto para LAN. Em seguida, inicie o aplicativo Claude Desktop e o bot deve entrar no jogo.

Pode levar algum tempo para o Claude Desktop iniciar o servidor MCP. O marcador de que o servidor foi iniciado com sucesso:

image

Você pode dar qualquer comando ao bot por meio de qualquer chat ativo do Claude Desktop. Você também pode enviar imagens de construções e pedir ao bot para construí-las 😁

Não se esqueça de mencionar que o bot deve fazer algo no Minecraft no seu prompt. Porque dizer isso é um gatilho para executar o servidor MCP. Ele pedirá suas permissões.

Usar o Claude Sonnet pode dar resultados interessantes. O agente-bot será realmente inteligente 🫡

Exemplo de uso: chat compartilhado do Claude

Comandos Disponíveis

Uma vez conectado a um servidor Minecraft, o Claude pode usar estes comandos:

Movimento

  • get-position - Obter a posição atual do bot
  • move-to-position - Mover para coordenadas específicas
  • look-at - Fazer o bot olhar para coordenadas específicas
  • jump - Fazer o bot pular
  • move-in-direction - Mover em uma direção específica por uma duração

Voo

  • fly-to - Fazer o bot voar diretamente para coordenadas específicas

Inventário

  • list-inventory - Listar todos os itens no inventário do bot
  • find-item - Encontrar um item específico no inventário
  • equip-item - Equipar um item específico

Interação com Blocos

  • place-block - Colocar um bloco em coordenadas específicas
  • dig-block - Escavar um bloco em coordenadas específicas
  • get-block-info - Obter informações sobre um bloco
  • find-blocks - Encontrar um ou mais blocos próximos de um tipo específico

Fornalha

  • smelt-item - Fundir itens usando um bloco tipo fornalha

Interação com Entidades

  • find-entity - Encontrar a entidade mais próxima de um tipo específico

Comunicação

  • send-chat - Enviar uma mensagem de chat no jogo
  • read-chat - Obter mensagens de chat recentes dos jogadores

Estado do Jogo

  • detect-gamemode - Detectar o modo de jogo no jogo

Contribuindo

Sinta-se à vontade para enviar pull requests ou abrir issues para melhorias. Todos os commits de refatoração, contribuições funcionais e de teste, issues e discussões são muito apreciados!

Para começar a contribuir, consulte CONTRIBUTING.md.


⭐ Se você achar este projeto útil, considere dar uma estrela no GitHub! ⭐

Seu apoio ajuda a tornar este projeto mais visível para outras pessoas que possam se beneficiar dele.