hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Provides a sandboxed Python environment for executing code and scripts.
Offers a sandboxed TypeScript environment for code execution.
Enables downloading YouTube videos through the MCP server integration.
gbox
gbox es un proyecto de código abierto que proporciona un entorno de pruebas autoalojado para la integración de MCP u otros casos de uso de agentes de IA. El entorno de pruebas puede utilizarse como un ordenador para el agente. Incluye todas las herramientas necesarias para las tareas diarias de los agentes, como terminal, navegador y editor de archivos. Consulte la sección "Características" para obtener más información.
A medida que MCP se vuelve cada vez más popular, nos damos cuenta de que no hay una manera sencilla de habilitar clientes MCP como Claude Desktop/Cursor para ejecutar tareas localmente y de forma segura. Este proyecto se basa en la tecnología de gru.ai y la integramos en un servidor de comandos del sistema y MCP para facilitar su uso.
Para escenarios avanzados, también mantuvimos la capacidad de ejecutar entornos sandbox en el clúster k8s de forma local o remota.
Características
- Terminal
- Ejecutar cualquier comando de Linux
- Ejecutar scripts de Python directamente
- Compartir sesión entre invocaciones [en desarrollo]
- Archivo
- Montar las carpetas de la máquina host en el entorno sandbox
- Acceda a los archivos de sandbox a través de enlaces http
- Leer el contenido del archivo en modo multimodal
- Escribir/reescribir archivos [en desarrollo]
- Editar archivos [en desarrollo]
- Buscar archivos [en desarrollo]
- Navegador
- Abre cualquier URL y devuelve el contenido en modo multimodal
- Descargar desde cualquier URL [en desarrollo]
- Operar el navegador mediante instrucciones [en desarrollo]
- La toma de posesión humana [subdesarrollo]
- Servidor HTTP
- Iniciar el servicio http en cualquier carpeta a pedido [en desarrollo]
- SDK
- SDK de Python: Instalación mediante
pip install pygbox
. Consulta PyPI para más detalles. - SDK de Typescript [en desarrollo]
- SDK de Python: Instalación mediante
- MCP
- Compatibilidad estándar con MCP
- Integrar Claude Desktop y Cursor
Casos de uso
Su cliente de IA, como Claude Desktop, puede usar gbox MCP para ofrecer mejores resultados, como
1. Generación de diagramas
Generar diagramas de los precios de las acciones de Tesla: https://claude.ai/share/34de8ca3-4e04-441b-9e79-5875fa9fc97a
2. Generación de archivos PDF
Generar PDF de las últimas noticias sobre IA: https://claude.ai/share/84600933-dcf2-44be-a2fd-7f49540db57a
3. Análisis y cálculo
Analizar y comparar la capitalización de mercado de Nvidia/Tesla: https://claude.ai/share/70c335b7-9fff-4ee7-8459-e6b7462d8994
4. Procesamiento de archivos locales
Busque imágenes en la carpeta de descarga y comprímalas en zip. https://claude.ai/share/f8c4c617-9b32-4062-a8e2-2ab33ef46f42
5. Ejecutar tareas arbitrarias
Descargar vídeo de youtube: https://claude.ai/share/c2ab6bcb-7032-489f-87d5-cc38f72c2ca9
Instalación
Requisitos del sistema
- macOS 10.15 o posterior
- Docker Desktop para Mac
- Cerveza casera
Nota: Próximamente habrá soporte para otras plataformas (Linux, Windows).
Pasos de instalación
Pasos de actualización
Uso de la línea de comandos
El proyecto proporciona una herramienta de línea de comandos gbox
para administrar contenedores sandbox:
Montajes de volumen
El comando gbox box create
admite montajes de volúmenes compatibles con Docker mediante el parámetro -v
o --volume
. Esto permite compartir archivos y directorios entre el sistema host y los contenedores sandbox.
La sintaxis de montaje de volumen sigue este formato:
Dónde:
/host/path
: Ruta a un archivo o directorio en su sistema host/container/path
: Ruta donde se montará el archivo o directorio en el contenedorro
(opcional): hace que el montaje sea de solo lecturapropagation
(opcional): establece el modo de propagación de montaje (privado, rprivate, compartido, rshared, esclavo, rslave)
Ejemplos:
Nota: La ruta del host debe existir antes de crear el contenedor. Si no existe, se creará automáticamente.
Configuración de desarrollo
Prerrequisitos
- Vaya a 1.21 o posterior
- Escritorio Docker
- Hacer
- pnpm (a través de corepack)
- Node.js 16.13 o posterior
Construir
Servicios en ejecución
Contribuyendo
¡Agradecemos tus contribuciones! No dudes en enviar una solicitud de incorporación de cambios. Para cambios importantes, primero abre una incidencia para comentar qué te gustaría cambiar.
- Bifurcar el repositorio
- Crea tu rama de funciones (
git checkout -b username/feature-name
) - Confirme sus cambios (
git commit -m 'Add some feature'
) - Empujar a la rama (
git push origin username/feature-name
) - Abrir una solicitud de extracción
Cosas que debe saber sobre el desarrollo y la depuración local
Cómo ejecutar gbox en el entorno de desarrollo en lugar del instalado en el sistema
- Detenga el gbox instalado mediante
gbox cleanup
. Esto detendrá el servidor API para que pueda ejecutarlo en el entorno de desarrollo. - Ejecute
make api-dev
en la raíz del proyecto. - Ejecute
./gbox box list
, este es el comando que se ejecuta desde su entorno de desarrollo.
Cómo conectar un cliente MCP como Claude Desktop al servidor MCP en el entorno de desarrollo
- Ejecute
make mcp-dev
en la raíz del proyecto. - Ejecute
./gbox mcp export --merge-to claude
Cómo abrir la inspección de MCP
- Ejecute
make mcp-inspect
en la raíz del proyecto. - Haga clic en el enlace que aparece en la terminal.
Cómo crear y usar imágenes en el entorno de desarrollo
- Ejecute
make build-image-python
en la raíz del proyecto para construir una imagen de Python, omake build-images
para construir todas las imágenes. - Cambie el nombre de la imagen según sea necesario (por ejemplo,
make build-image-typescript
para la imagen TypeScript). - Es posible que tengas que eliminar los entornos sandbox actuales para que la nueva imagen sea efectiva
./gbox box delete --all
¿Por qué el cliente MCP aún obtiene el contenido antiguo de MCP?
- Después de cambiar la configuración de MCP, como las definiciones de herramientas, debe ejecutar
make build
para actualizar el archivodist/index.js
. - Es posible que también necesites ejecutar
./gbox mcp export --merge-to claude
Licencia
Este proyecto está licenciado bajo la Licencia Apache 2.0: consulte el archivo de LICENCIA para obtener más detalles.
This server cannot be installed
Gru-sandbox(gbox) es un proyecto de código abierto que proporciona un entorno sandbox autohospedable para la integración de MCP u otros casos de uso de agentes de IA.