dsh-mcp-admin
dsh-mcp-admin
Expone la gestión de skills y presets de agente de DeepSeek Harness como un plugin de doble cara de servidor MCP: los agentes remotos modifican directamente la configuración de skills/presets del servidor mediante el protocolo MCP, sin necesidad de SSH; la mitad host registra registros de auditoría, y la mitad del navegador ofrece un panel «gestión de MCP» en la página Settings que muestra los cambios recientes.
Uso típico: ejecuta dsh web en un servidor remoto, y el Agent local se conecta a http://<服务器>:3080/mcp, formando un ciclo cerrado de «producción → revisión → modificación → reproducción».
Arquitectura
本地 Agent (MCP client)
│ POST /mcp (Authorization: Bearer <token>)
▼
dsh web (host 半区)
├── Streamable HTTP MCP server(stateless,每请求一个实例)
│ ├── skill_list / skill_read / skill_upsert / skill_delete
│ └── preset_list / preset_read / preset_upsert / preset_delete
├── 审计 JSONL:$DSH_HOME/mcp-admin/audit.jsonl
└── RPC 通道 /mcp-admin(audit.list,trusted-host 围栏)
▲
浏览器 Settings「MCP 管理」看板(client 半区,5s 轮询)Escritura de skill: escribe directamente en
$DSH_HOME/skills/<name>/SKILL.md(bundle de directorio; si ya existe un<name>.mdplano, se sobrescribe en el lugar conservando la forma). El providerskill-filesystemde harness observa ese directorio; el cambio se aplica en el siguiente paso del agente.Escritura de preset: escribe en
$DSH_HOME/.agent-presets/<id>/agent.cordis.yml. Para sobrescribir un preset de confianza del sistema, primero hay que pasarbasepara copiarlo a la raíz de usuario (evitando así ocultar sin querer el preset integrado desde cero). El mecanismo de marcas de tiempo de archivo de standing mount hace que los cambios se apliquen automáticamente a las nuevas sesiones, sin necesidad de reiniciar; las sesiones en curso no se ven afectadas.Auditoría: cada escritura/eliminación añade una línea JSONL (hora, herramienta, objetivo, acción, número de bytes, resumen de los primeros 200 caracteres del contenido), truncada según
auditLimit.
Related MCP server: Omni Skills
Instalación
dsh plugin --profile web add /path/to/dsh-mcp-adminLuego configura el token en ~/.dsh/profiles/web/cordis.patch.yml del perfil (obligatorio; de lo contrario el plugin se niega a arrancar):
- id: mcp-admin
config:
token: <openssl rand -hex 32 的输出>
auditLimit: 200Configuración
Campo | Tipo | Predeterminado | Descripción |
| string | (obligatorio) | token bearer del endpoint |
| number | 200 | número de entradas que se conservan en el registro de auditoría |
| string | vacío | Valor inicial de la dirección de acceso público/LAN de este despliegue (p. ej. |
Configuración del cliente MCP
La forma más sencilla: abre la página «gestión de MCP» de Settings, primero rellena «dirección de acceso público» con la dirección pública/LAN de este despliegue (p. ej. http://1.2.3.4:3080; obligatorio en máquinas NAT; si se deja vacío, se usará la dirección desde la que abriste esta página), guarda y pulsa «copiar instrucciones de configuración de MCP»: se copiará un conjunto completo de instrucciones (con URL y token) que puedes pegar directamente al Agent que quieras configurar; él mismo se configurará siguiendo las instrucciones. Ten en cuenta que en páginas http:// el navegador bloquea el copiado automático; el botón se degrada a mostrar un cuadro de texto para copiar manualmente.
Formato de configuración manual (tipo Streamable HTTP):
{
"mcpServers": {
"dsh-admin": {
"type": "http",
"url": "http://<服务器>:3080/mcp",
"headers": { "Authorization": "Bearer <token>" }
}
}
}Lista de herramientas
Herramienta | Descripción |
| Lista los skills bajo la raíz de usuario (nombre, descripción, forma, ruta). |
| Lee el SKILL.md completo + el inventario de archivos de recursos del bundle. |
| Crea/sobrescribe un skill (valida el nombre kebab-case y el |
| Elimina un skill bajo la raíz de usuario. |
| Lista todos los presets (incluye marcas de trust y broken). |
| Lee el |
| Crea/sobrescribe una combinación de preset; |
| Elimina un preset de confianza de usuario (los de system no se pueden eliminar). |
Notas de seguridad
El servidor web de harness no tiene TLS ni autenticación;
/mcpqueda fuera de la valla de confianza de/api;tokenes la única línea de defensa. Si el token se filtra, la otra parte puede reescribir tus skills y presets (ejecución remota de código indirecta).Se recomienda exponerlo solo tras terminar TLS en un proxy inverso, o combinarlo con el mecanismo
trusted-hostde harness para restringir el origen.Todas las operaciones de escritura se limitan a la raíz de usuario (
~/.dsh/skills,~/.dsh/.agent-presets); no tocan los presets integrados ni los directorios del proyecto.El canal RPC del panel (
/mcp-admin) pasa por la vallatrusted-hostde la conexión; los registros de auditoría no contienen secretos.El botón «copiar instrucciones de configuración de MCP» devuelve el token a la página a través del endpoint
setup-info: cualquiera que pueda abrir la Web UI puede obtener el token. Esto es coherente con el modelo de seguridad actual de harness (quien puede abrir la Web UI ya puede ejecutar agentes en el servidor mediantesession.prompt), pero implica que la superficie de exposición de la Web UI equivale a la superficie de exposición del token.
Desarrollo
pnpm install
pnpm run build # host: tsc → lib/;client: tsdown → lib/client.js
pnpm run typecheckLa resolución de tipos de la mitad cliente depende del árbol de fuentes local de harness (dsh-client-* no está publicado completo en npm); los paths en tsconfig*.json apuntan de forma fija al checkout de harness; al migrar de máquina hay que cambiar esas rutas.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceConverts AI Skills (following Claude Skills format) into MCP server resources, enabling LLM applications to discover, access, and utilize self-contained skill directories through the Model Context Protocol. Provides tools to list available skills, retrieve skill details and content, and read supporting files with security protections.327Apache 2.0
- AlicenseNot gradedqualityAmaintenanceMCP server that unifies and synchronizes AI coding skills across multiple tools, exposing skill discovery and retrieval via list_skills and read_skill.10112MIT
- AlicenseNot gradedqualityDmaintenanceMCP server that adapts, activates, and shares local Agent Skills for runtimes like OpenAI Agents SDK and Claude Code, enabling dynamic discovery and shareable HTML/image artifacts.182MIT
- AlicenseNot gradedqualityBmaintenanceA git-backed MCP server that centrally manages AI agent skills, tools, and knowledge with role-based access, change requests, and a remote OAuth 2.1 endpoint.75Apache 2.0
Related MCP Connectors
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
MCP server exposing the Backtest360 engine API as tools for AI agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/EnZzzzzz/dsh-mcp-admin'
If you have feedback or need assistance with the MCP directory API, please join our Discord server