Human-in-the-Loop

Permite que assistentes de IA façam perguntas a humanos via Discord.

Documentação

Servidor MCP Human-in-the-Loop

Um servidor MCP (Model Context Protocol) que permite que assistentes de IA façam perguntas a humanos via Discord.

Screenshot 2025-06-23 at 18 25 43

Visão Geral

Este servidor MCP é usado quando assistentes de IA precisam de entrada ou julgamento humano durante seu trabalho. Por exemplo:

  • Ao ter um LLM criando documentação, a IA projeta a estrutura enquanto os humanos fornecem conteúdo específico
  • Quando a IA precisa de confirmação em decisões incertas
  • Quando conhecimento especializado ou informações pessoais são necessários

Requisitos

  • Rust (1.70 ou superior)
  • Conta e bot do Discord
  • Cliente de IA compatível com MCP (Claude Desktop, Copilot Edits, etc.)

Configuração

1. Criar Bot do Discord

  1. Vá para Portal de Desenvolvedores do Discord
  2. Crie um novo aplicativo
  3. Crie um bot na seção Bot e obtenha o token
  4. Defina as permissões necessárias:
    • Enviar Mensagens
    • Criar Tópicos Públicos
    • Ler Histórico de Mensagens
  5. Ative os intents de gateway privilegiados na seção Bot:
    • Intent de Conteúdo de Mensagem

2. Instalação

cargo install --git https://github.com/KOBA789/human-in-the-loop.git

Conectando com Clientes MCP

Configuração do Claude Desktop

Adicione o seguinte a claude_desktop_config.json:

{
  "mcpServers": {
    "human-in-the-loop": {
      "command": "human-in-the-loop",
      "args": [
        "--discord-channel-id", "channel-id",
        "--discord-user-id", "user-id"
      ],
      "env": {
        "DISCORD_TOKEN": "your-discord-bot-token"
      }
    }
  }
}

Configuração do Claude Code

Para Claude Code (claude.ai/code), adicione às suas configurações MCP:

{
  "mcpServers": {
    "human-in-the-loop": {
      "command": "human-in-the-loop",
      "args": [
        "--discord-channel-id", "channel-id",
        "--discord-user-id", "user-id"
      ]
    }
  }
}

Defina o token do Discord como uma variável de ambiente antes de executar o Claude Code:

export DISCORD_TOKEN="your-discord-bot-token"
claude

Nota: O servidor lê automaticamente o token do Discord da variável de ambiente DISCORD_TOKEN. Você também pode passá-lo via argumento --discord-token se necessário.

Uso

Assistentes de IA podem fazer perguntas a humanos usando a ferramenta ask_human:

Human: Please create a documentation outline. You can ask the human as you need.
Assistant: I'll create a documentation outline. Let me ask you some questions first.
[Uses ask_human tool]

A IA publica perguntas no Discord e menciona o usuário especificado. Quando o usuário responde no Discord, a resposta é retornada à IA.

Como Funciona

  1. O assistente de IA chama a ferramenta ask_human
  2. O servidor MCP cria um tópico no canal do Discord especificado (ou usa um tópico existente)
  3. Publica a pergunta e menciona o usuário especificado
  4. Aguarda a resposta do usuário
  5. Retorna o conteúdo da resposta ao assistente de IA

Encontrando IDs do Discord

Obtendo o ID do Canal

  1. Ative o Modo de Desenvolvedor no Discord (Configurações → Avançado → Modo de Desenvolvedor)
  2. Clique com o botão direito no canal → "Copiar ID"

Obtendo o ID do Usuário

  1. Clique com o botão direito no usuário → "Copiar ID"

Roteiro

  • Migração Futura para MCP Elicitation: Quando a implementação de Elicitation do MCP se tornar mais difundida e padronizada, planejamos migrar a interface do Discord para o MCP Elicitation nativo. Isso proporcionará uma experiência mais integrada diretamente nos clientes compatíveis com MCP.