Human-in-the-Loop

Permite que los asistentes de IA hagan preguntas a humanos a través de Discord.

Documentación

Human-in-the-Loop MCP Server

Un servidor MCP (Model Context Protocol) que permite a los asistentes de IA hacer preguntas a humanos a través de Discord.

Screenshot 2025-06-23 at 18 25 43

Resumen

Este servidor MCP se utiliza cuando los asistentes de IA necesitan aportación o juicio humano durante su trabajo. Por ejemplo:

  • Cuando se tiene un LLM creando documentación, la IA diseña la estructura mientras los humanos proporcionan contenido específico
  • Cuando la IA necesita confirmación sobre decisiones inciertas
  • Cuando se requiere conocimiento especializado o información personal

Requisitos

  • Rust (1.70 o superior)
  • Cuenta de Discord y bot
  • Cliente de IA compatible con MCP (Claude Desktop, Copilot Edits, etc.)

Configuración

1. Crear bot de Discord

  1. Ve al Portal de desarrolladores de Discord
  2. Crea una nueva aplicación
  3. Crea un bot en la sección Bot y obtén el token
  4. Establece los permisos requeridos:
    • Enviar mensajes
    • Crear hilos públicos
    • Leer historial de mensajes
  5. Habilita los intentos de puerta de enlace privilegiados en la sección Bot:
    • Intento de contenido de mensaje

2. Instalación

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

Conexión con clientes MCP

Configuración de Claude Desktop

Añade lo siguiente 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"
      }
    }
  }
}

Configuración de Claude Code

Para Claude Code (claude.ai/code), añade a tu configuración de MCP:

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

Establece el token de Discord como variable de entorno antes de ejecutar Claude Code:

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

Nota: El servidor lee automáticamente el token de Discord de la variable de entorno DISCORD_TOKEN. También puedes pasarlo mediante el argumento --discord-token si es necesario.

Uso

Los asistentes de IA pueden hacer preguntas a humanos usando la herramienta 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]

La IA publica preguntas en Discord y menciona al usuario especificado. Cuando el usuario responde en Discord, la respuesta se devuelve a la IA.

Cómo funciona

  1. El asistente de IA llama a la herramienta ask_human
  2. El servidor MCP crea un hilo en el canal de Discord especificado (o usa un hilo existente)
  3. Publica la pregunta y menciona al usuario especificado
  4. Espera la respuesta del usuario
  5. Devuelve el contenido de la respuesta al asistente de IA

Cómo encontrar IDs de Discord

Obtener ID de canal

  1. Habilita el modo desarrollador en Discord (Configuración → Avanzado → Modo desarrollador)
  2. Haz clic derecho en el canal → "Copiar ID"

Obtener ID de usuario

  1. Haz clic derecho en el usuario → "Copiar ID"

Hoja de ruta

  • Migración futura a MCP Elicitation: Una vez que la implementación de Elicitation de MCP se vuelva más extendida y estandarizada, planeamos migrar la interfaz de Discord a MCP Elicitation nativo. Esto proporcionará una experiencia más integrada directamente dentro de los clientes compatibles con MCP.