🔌 MCP y Skills (Desktop)
Esta página documenta cómo configurar servidores MCP externos y skills en Context Code Desktop. Para conocer el catálogo de providers LLM: /desktop/configuracion. Para hooks: /desktop/hooks.
🧠 MCP (Model Context Protocol)
MCP permite extender el agente con herramientas externas (bases de datos, browsers, APIs internas, etc.) mediante servidores MCP que se lanzan como subprocesos.
Catálogo integrado
src/lib/mcpMarketplace.ts:48-86 ofrece un marketplace de servidores preconfigurados que se instalan vía npx -y @modelcontextprotocol/server-*:
| Servidor | Uso | Comando |
|---|---|---|
| filesystem | Lectura/escritura de archivos fuera del workspace. | npx -y @modelcontextprotocol/server-filesystem <paths> |
| github | PRs, issues, repos desde GitHub. | npx -y @modelcontextprotocol/server-github |
| memory | Memoria persistente entre sesiones. | npx -y @modelcontextprotocol/server-memory |
| sequential-thinking | Razonamiento paso a paso. | npx -y @modelcontextprotocol/server-sequential-thinking |
| postgres | Consultas SQL a Postgres. | npx -y @modelcontextprotocol/server-postgres <url> |
| puppeteer | Automatización de browser. | npx -y @modelcontextprotocol/server-puppeteer |
| git | Historial, blame, diff, commit. | npx -y @modelcontextprotocol/server-git |
| fetch | HTTP requests genéricos. | npx -y @modelcontextprotocol/server-fetch |
| obsidian | Lectura/escritura de vaults de Obsidian. | npx -y @modelcontextprotocol/server-obsidian |
Configuración desde la UI
- Abre el panel Skills/MCP (
SkillsMcpPanel.tsx). - Pestaña Marketplace → elige un servidor →
Instalar. - Configura variables (tokens, paths) si las pide.
- Activa/desactiva con el toggle; los cambios se escriben a
.mcp.jsonen el workspace activo.
Edición manual
commands/mcp_skills.rs:94-316 lee/escribe .mcp.json directamente. Estructura típica:
{
"mcpServers": {
"github": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_TOKEN": "..." }
}
}
}🧰 Skills (capacidades empaquetadas)
Las skills son paquetes de instrucciones + recursos (no son procesos externos como MCP). El Desktop las trata como catálogos curados que se activan al vuelo.
Catálogo curado (src/lib/skillsCatalog.ts:13-…)
~17 paquetes instalables desde skills.sh:
frontend-design,web-design-guidelines— guidelines de diseño web.docx,pdf,xlsx— generación de documentos.mcp-builder— scaffolding de servidores MCP propios.composition-patterns— patrones avanzados de composición React.- Y otros.
Skills locales preinstaladas (src-tauri/resources/skills/)
accessibility/,azure-ai/,azure-cost/,azure-deploy/,azure-diagnostics/composition-patterns/,documentaProyecto/,dropi-to-agentai/frontend-design/,grafo/nodejs-backend-patterns/,nodejs-best-practices/obsidian/,react-best-practices/,remotion/seo/,typescript-advanced-types/,zod/
Estas viven en el bundle de Tauri y están disponibles sin instalación.
UI: SkillsGallery + SkillsMcpPanel
- Galería: vista de cards con preview de cada skill (descripción, autor, comandos disponibles).
- Panel MCP: marketplace + servidores activos + logs.
- Activar una skill la inyecta como system prompt del chat activo.
🛠️ Tools nativas del motor
Además de MCP/skills, el motor nativo Rust expone tools de primera clase (core/tools.rs:1,54,233-…):
Read,Write,Edit— archivos del workspace.Bash,PowerShell— terminales.Grep,Glob,LS— búsqueda.Think— bloque de razonamiento explícito.Graph_Query— consulta al grafo de subagentes.Notebook,PDF— formatos especiales.
Las tools nativas se evalúan con los flags de permisos del chat (ver /desktop/permisos).
