sandstorm
Servidor MCP auto-alojado en Python que expone acceso a shell, filesystem y Git a agentes AI mediante endpoint HTTP streamable detrás de Caddy/TLS.
Ficha actualizada 26 sept 2026, 16:22 · upstream 26 sept 2026, 16:09 · release v0.1.0
Qué es sandstorm
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
Sandstorm es un servidor MCP (Model Context Protocol) auto-alojado escrito en Python 3.12+ que permite a los agentes de IA acceder a un sistema Linux remoto con acceso real al shell, filesystem y Git. El proyecto reemplaza una implementación anterior basada en Cloudflare Workers, manteniendo la misma superficie de herramientas de 20 herramientas y formato de cableado estable.
La arquitectura expone un endpoint MCP HTTP streamable detrás de Caddy con TLS automático vía Let's Encrypt. El servidor se ejecuta como proceso FastMCP en el puerto 8080 local, comunicándose con el shell del host a través de asyncio.subprocess. Todo el sistema se gestiona mediante systemd y variables de entorno centralizadas en /etc/sandstorm-mcp.env.
El modelo de autenticación soporta tanto tokens Bearer simples como OAuth 2.0 con PKCE para integraciones con Claude.ai, utilizando HMAC-SHA256 para firmar tokens sin almacenamiento de sesión en base de datos.
- Integrar agentes AI (Claude.ai, Claude Code) con infraestructura Linux propia mediante acceso MCP
- Automatizar operaciones de shell y gestión de archivos desde orquestadores externos
- Gestionar repositorios Git remotos sin necesidad de SSH keys o puertos abiertos
- Proveer superficie de herramientas estables a agentes AI en entornos controlados
- Autenticación OAuth 2.0 con PKCE y HMAC-SHA256 para integraciones seguras sin DB
- Rotación centralizada de tokens que invalida todos los tokens OAuth activos simultáneamente
- Arquitectura desacoplada sin vendor lock-in, ejecutándose como systemd service en Linux
- Endpoint MCP HTTP streamable compatible con clientes estándar y custom connectors
- Estado alpha (v0.1.0) con forma de despliegue que puede cambiar antes de la versión 1.0
- Requiere host Linux gestionado manualmente con DNS público y permisos sudo
- Sin soporte para Docker o contenedores, obligando a instalación directa en sistema anfitrión
- Acceso root-equivalente mediante token Bearer requiere gestión cuidadosa de credenciales
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Requiere host Linux con DNS público. Ejecutar deploy/install.sh con SANDSTORM_DOMAIN y SANDSTORM_MCP_TOKEN. Caddy configura TLS automático. Variables en /etc/sandstorm-mcp.env (0600 root:root). Rotar token periódicamente. Verificar /health y /mcp tras instalación.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.