Skip to content

Servidor MCP

ADHDev incluye un servidor MCP stdio para que los clientes MCP externos puedan usar las sesiones de ADHDev como herramientas. El servidor se publica como @adhdev/mcp-server y también está envuelto por el CLI principal de la nube como adhdev mcp.

Úsalo cuando quieras que un cliente MCP como Claude Desktop liste las sesiones activas de ADHDev, lea el historial de chat, envíe un mensaje o apruebe un prompt en espera. En modo mesh se convierte en la superficie completa de herramientas de coordinador de Repo Mesh.

Modos

ModoTransporte usado por el servidor MCPHerramientas
Local standaloneAPI standalone http://localhost:384715 herramientas base + screenshot + 3 herramientas de arranque de mesh (19 en total)
IPCIPC local del daemon de la nube en localhost:19222Las mismas 15 herramientas base + 3 herramientas de arranque de mesh, sin screenshot (18 en total)
MeshLocal o IPC + --repo-mesh <id>Conjunto con alcance de coordinador — ver Herramientas de mesh más abajo

El modo local es parte de la superficie OSS/autoalojada. Para los detalles de configuración y autenticación de standalone, usa la documentación de OSS:

Iniciar el servidor

bash
# Local mode: requires a running standalone daemon
adhdev mcp
adhdev mcp --port 4000
adhdev mcp --password my-standalone-password

También puedes ejecutar el paquete OSS directamente:

bash
npx @adhdev/mcp-server
npx @adhdev/mcp-server --mode ipc --repo-mesh mesh_abc123

Se admiten variables de entorno:

bash
ADHDEV_PASSWORD=my-standalone-password adhdev mcp
ADHDEV_MESH_ID=mesh_abc123 adhdev mcp

Configuración de Claude Desktop

json
{
  "mcpServers": {
    "adhdev": {
      "command": "adhdev",
      "args": ["mcp"]
    }
  }
}

Para el modo mesh (herramientas con alcance de coordinador):

json
{
  "mcpServers": {
    "adhdev-mesh": {
      "command": "adhdev",
      "args": ["mcp", "--mode", "ipc", "--repo-mesh", "mesh_abc123"]
    }
  }
}

Configuración de mesh para Hermes Agent

Hermes Agent no importa automáticamente el .mcp.json local del repo. Para usar herramientas de Repo Mesh desde Hermes, añade el servidor mesh a la configuración YAML de Hermes bajo mcp_servers, luego inicia una sesión de Hermes nueva.

Encuentra el archivo de configuración de Hermes:

bash
hermes config path

Añade una entrada de servidor mesh:

yaml
mcp_servers:
  adhdev-mesh:
    command: adhdev
    args:
      - mcp
      - --mode
      - ipc
      - --repo-mesh
      - mesh_abc123
    enabled: true

Después de guardar la configuración, sal y relanza Hermes. Las herramientas MCP se descubren cuando se inicia la sesión de Hermes, por lo que una sesión ya en ejecución puede no ver el nuevo servidor mesh.

Herramientas del modo estándar

El modo estándar (sin --repo-mesh) expone la superficie de control directo de sesiones más tres herramientas de arranque de mesh que permiten a un agente que solo tiene MCP crear un mesh antes de que el modo mesh tenga algo a lo que conectarse.

Sesión y daemon

  • list_daemons — reporta la identidad del daemon conectado.
  • list_sessions — descubre las sesiones disponibles en un daemon.
  • launch_session / stop_session — gestionan los ciclos de vida de los agentes CLI/IDE.
  • check_pending — lista las sesiones que esperan aprobación.

Chat y aprobación

  • read_chat — lee el chat reciente de una sesión seleccionada.
  • read_chat_debug — paquete de depuración acotado del estado de chat de una sesión seleccionada.
  • spec_debug — ayudante de depuración para el parseo de specs de proveedor.
  • send_chat — envía un mensaje a una sesión seleccionada.
  • approve — aprueba o rechaza un prompt de aprobación.

Git

  • git_status, git_diff, git_log, git_checkpoint, git_push — gestionan las operaciones de git del workspace.

Solo local

  • screenshot — captura la ventana actual del IDE a través del daemon. Requiere acceso P2P/al daemon local, por lo que solo está disponible en modo local, no en IPC.

Arranque de mesh (disponible tanto en modo estándar local como IPC — esta es la ruta para cuando aún no existe un mesh)

  • mesh_plan_onboarding — dry-run de solo lectura: propone lo que haría crear/unirse a un mesh, sin escribir nada.
  • mesh_create — crea un nuevo mesh, opcionalmente registrando el workspace actual como su primer nodo.
  • mesh_add_node — registra un workspace existente como nodo de un mesh existente.

Una vez que existe un mesh, vuelve a registrar el servidor MCP con --repo-mesh <mesh_id> para cambiar a modo mesh y desbloquear el conjunto completo de herramientas de coordinador de abajo — el modo mesh reemplaza la superficie de herramientas por completo en lugar de añadirse a ella.

Herramientas de mesh

Las herramientas de mesh solo están disponibles en modo mesh (--repo-mesh). Reemplazan las herramientas estándar con un conjunto con alcance de coordinador.

Fuente de verdad para nombres y cantidad

Esta página agrupa las herramientas por familia para orientación general. La lista autoritativa —nombres exactos, cantidad actual y los esquemas de entrada completos— es ALL_MESH_TOOLS en oss/packages/mcp-server/src/tools/mesh-tool-schemas.ts. Si un nombre de herramienta de abajo y el código alguna vez no coinciden, el código gana — esta lista ya ha quedado obsoleta antes.

Estado e inspección

  • mesh_status — snapshot agregado: salud de todos los nodos, estado de git, sesiones activas, pistas de recuperación e información de build/antigüedad por daemon.
  • mesh_list_nodes — lista los nodos con rutas de workspace y capacidades.
  • mesh_read_chat — lee el historial de chat de un agente delegado.
  • mesh_read_debug — paquete de depuración acotado para una sesión delegada.
  • mesh_read_terminal — lee la pantalla PTY cruda actual (lo que un humano vería en pantalla en este momento) de una sesión delegada.
  • mesh_git_status — obtiene el estado de git para un workspace de nodo.
  • mesh_read_node_logs — busca (grep) en el archivo de log del daemon de un nodo (archivo completo, no solo la cola).
  • mesh_task_history — historial compacto de tareas a través del mesh.
  • mesh_ledger_query — consulta de solo lectura del ledger por los ejes kind/tiempo/nodo (complementa la vista centrada en el eje de tareas de mesh_task_history).
  • mesh_review_inbox — elementos de revisión/aprobación pendientes que esperan al coordinador.
  • mesh_list_pending_approvals — lista de todo el mesh de cada sesión que actualmente espera una decisión de aprobación.

Despacho, sesiones y control

  • mesh_send_task — envía una tarea en lenguaje natural directamente a una sesión de agente delegado.
  • mesh_launch_session — lanza una nueva sesión de agente en un nodo del mesh.
  • mesh_send_keys — inyecta una secuencia de teclas estructurada en una sesión de worker delegado.
  • mesh_restart_daemon — reinicia el daemon de un nodo del mesh.
  • mesh_approve — aprueba/rechaza una acción pendiente en un agente delegado.
  • mesh_answer_question — responde a una pregunta de opción múltiple (AskUserQuestion) que una sesión delegada está esperando.
  • mesh_checkpoint — crea un checkpoint de git en un workspace de nodo.
  • mesh_cleanup_sessions — detiene/limpia sesiones delegadas obsoletas o huérfanas.
  • mesh_prune_stale_direct — poda registros de despacho directo obsoletos.

Cola de trabajo y misiones

  • mesh_enqueue_task — encola una tarea que un nodo inactivo reclama de forma autónoma (admite enrutamiento target_node_id / prefer_worktree, task_mode, mission_id, depends_on).
  • mesh_view_queue — fuente de verdad actual del trabajo activo (pending/assigned/terminal).
  • mesh_queue_cancel / mesh_queue_requeue — cancela o vuelve a encolar una tarea en cola.
  • mesh_mission_upsert — crea/actualiza una misión (agrupación de objetivo + estado de ciclo de vida).
  • mesh_mission_list — lista las misiones con su objetivo, estado y progreso de tareas en vivo (total/pendiente/asignada/completada/fallida).
  • mesh_reconcile_ledger — reconcilia el ledger local contra la porción acotada de un par.
  • mesh_requeue_held_events — restaura eventos de coordinador retenidos y recuperables de vuelta a la cola pendiente.
  • mesh_record_note / mesh_forget_note — registra o retracta una nota operativa duradera que heredarán los futuros coordinadores.

Arranque y configuración (modo mesh; distinto del trío de arranque del modo estándar de arriba)

  • mesh_init — incorporación con un clic para un proyecto git existente: detecta los proveedores CLI instalados y propone las tres familias de configuración .adhdev/* del repo (Refinery, worktree bootstrap, change-impact). Vista previa por defecto; write: true para aplicar.
  • mesh_reinit — igual que mesh_init pero para un repo ya inicializado, con overwrite en true por defecto y un diff actual-vs-sugerido.
  • mesh_write_mesh_json_config — escribe el .adhdev/mesh.json que se comitea al repo, a partir de la entrada de mesh local a la máquina.
  • mesh_refine_config — ayudante de configuración de Refinery unificado y de solo lectura; el parámetro mode (schema / validate / suggest) selecciona la operación. Reemplaza a las antiguas herramientas independientes mesh_refine_config_schema / mesh_validate_refine_config / mesh_suggest_refine_config — ver la nota de alias obsoletos más abajo.
  • mesh_change_impact_config — el mismo patrón unificado para la configuración de change-impact (mode: schema / validate / suggest). Reemplaza a las antiguas herramientas independientes mesh_change_impact_config_schema / mesh_validate_change_impact_config / mesh_suggest_change_impact_config.

Nodos

  • mesh_clone_node — clona un nodo en un nodo de worktree de git aislado.
  • mesh_remove_node — elimina un nodo (de worktree), opcionalmente limpiando sesiones.
  • mesh_cleanup_worktree_nodes — planea (dry-run por defecto) o ejecuta la eliminación segura de nodos de worktree locales convergidos, una vez que se demuestra que su rama está fusionada/enviada y pasan todas las exclusiones de seguridad.
  • mesh_fast_forward_node — hace dry-run de forma segura por defecto, o ejecuta explícitamente, un fast-forward limpio y obvio sin lanzar una sesión de agente; usa fetch/recheck, merge --ff-only, actualización opcional de submódulos y solo verificación de estado posterior.

Refinery (convergencia worktree → base)

  • mesh_refine_node / mesh_refine_batch — converge una o varias ramas de worktree de vuelta a la base (validar → merge → push → limpieza).
  • mesh_refine_plan — previsualiza el plan de convergencia sin ejecutarlo.

MAGI (verificación cruzada multi-agente)

  • mesh_magi_review — verifica de forma cruzada una investigación de solo lectura a través de un panel permanente de agentes de mesh independientes, en lugar de enviar un único worker.
  • mesh_magi_collect — recolecta y sintetiza un fan-out de MAGI previamente despachado por su id de grupo de consenso (el compañero asíncrono de mesh_magi_review({ wait:false })).
  • mesh_magi_kind_panel_set / mesh_magi_kind_panel_list — vincula o lista los slots del panel MAGI configurados por tipo de tarea para este mesh.

Slots de nodo (enrutamiento de proveedor/modelo/nivel de pensamiento)

  • mesh_node_slots_set — propone (dry-run) o aplica la lista de slots de un nodo, vinculando proveedor/modelo/nivel de pensamiento a clases de dificultad.
  • mesh_node_slots_list — lista los slots actuales de un nodo.

Alias obsoletos

mesh_refine_config_schema, mesh_suggest_refine_config, mesh_validate_refine_config, y sus contrapartes de change-impact (mesh_change_impact_config_schema, mesh_suggest_change_impact_config, mesh_validate_change_impact_config) se consolidaron en mesh_refine_config y mesh_change_impact_config respectivamente, seleccionados mediante el parámetro mode. Los seis nombres antiguos ya no aparecen listados por tools/list — no aparecerán en el selector de herramientas de un cliente— pero el servidor todavía los despacha durante una versión más como capa de compatibilidad, reenviándolos al handler unificado con el mode correspondiente. Los nuevos llamadores deberían usar mesh_refine_config / mesh_change_impact_config directamente.

Referencias relacionadas

La documentación de la nube alojada está aquí. La documentación de código abierto y autoalojada está en el repositorio OSS.