Skip to main content
Glama

dsh-mcp-bridge

Pone las capacidades de una implementación de DeepSeek Harness a disposición de cualquier cliente MCP — memoria, el registro persistente de tareas, la asignación de trabajo a agentes de proyecto y el resto del ecosistema MCP — como herramientas declaradas en lugar de comandos de shell que un modelo deba conocer o recordar.

Por qué

claude -p ejecuta su propio bucle de agente, por lo que nunca recibe los esquemas de herramientas del Harness: una sesión respaldada por Claude no tiene memoria, ni registro, ni asignación de tareas. Pero sí acepta servidores MCP. Este es ese servidor.

Lo que expone ya tiene un punto de entrada por línea de comandos, así que esto añade una superficie, no autoridad: puede hacer exactamente lo que quien lo invoca ya podía hacer en un shell. Lo que no puede servir de puente es todo lo que solo existe dentro de un turno activo del Harness (metas, AgentTeams); esos son elementos confinados a la sesión por diseño y no tienen una superficie externa.

Related MCP server: skillsmcp

Herramientas

herramienta

qué hace

dsh_memory_search / dsh_memory_write

el almacén de memoria persistente

dsh_tasks_list / _add / _done / _block

el registro de tareas

dsh_dispatch / dsh_job_status

asignar trabajo a un agente de proyecto y consultar su estado

dsh_mcp_call / dsh_mcp_schema

cualquier servidor del ecosistema MCP, sin composición

dsh_projects

el registro de propietario proyectos de repositorios

dsh_notify

llegar al usuario

Uso

// mcp-bridge.json
{ "mcpServers": { "dsh": { "command": "node", "args": ["/path/to/src/server.js"] } } }
claude -p --strict-mcp-config --mcp-config ./mcp-bridge.json

Apunta DSH_JARVIS_BIN al directorio que contiene los ejecutables de CLI si no es ~/.dsh-jarvis/bin.

Tres cosas aprendidas por las malas

  • --mcp-config es variádico. Si a un JSON línea seguida de una pregunta en una posición de argumento, el cliente lee la pregunta como una segunda ruta de configuración (MCP config file not found: /tmp/List the tool…). Pasa un archivo.

  • No salgas en el instante en que el stdin notifica un EOF. La especificación dice que el cierre del stdin por parte del cliente es una señal de apagado, pero varios clientes le entregan al servidor un stdin ya en EOF; el servidor termina antes de la primera petición, el cliente lo revive y entra en bucle. Observado: 32 relanzamientos en tres minutos, sin ninguna llamada completada. Aquí el EOF solo finaliza el proceso una vez que se atendió alguna cosa, con un límite de inactividad para que un servidor abandonado siga terminando.

  • Verifica un puente con una escritura, nunca con una lectura. A un servidor con la misión reconocida de «llame a la herramienta de búsqueda». Esto puede crear una salida plausible a partir de su propio contexto cuando la llamada realmente falla. Aquí, un usuario notificó exactamente eso y respondió. Una operación de escritura no es un token aleatorio: o llega al almacén o no llega.

Pruebas

npm test

20 pruebas, sin dependencias, sin cliente requerido: el catálogo de herramientas y la segunda capa de JSON-RPC son puros.

Licencia

MIT

Maintenance

ActivityStale
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers