sketchup-mcp2
SketchupMCP - Integración del Protocolo de Contexto de Modelo de Sketchup
Originalmente derivado de mhyrr/sketchup-mcp. Se separó en la v0.0.1 con un nuevo protocolo de comunicación (tramado con prefijo de longitud de 4 bytes), arquitectura de manejadores modular, herramientas ampliadas de introspección / ensamblaje / operaciones de aristas, y cobertura total de pruebas unitarias tanto en Ruby como en Python. Publicado en PyPI como
sketchup-mcp2(el paquete originalsketchup-mcpes el upstream).
SketchupMCP conecta Sketchup a Claude AI a través del Protocolo de Contexto de Modelo (MCP), permitiendo que Claude interactúe directamente y controle Sketchup. Esta integración permite el modelado 3D asistido por prompts, la creación de escenas y la manipulación en Sketchup.
Un gran agradecimiento a Blender MCP por la inspiración y la estructura.
Características
Comunicación bidireccional: Conecta Claude AI a Sketchup a través de una conexión de socket TCP
Manipulación de componentes: Crea, modifica, elimina y transforma componentes en Sketchup
Control de materiales: Aplica y modifica materiales y colores
Inspección de escenas: Obtén información detallada sobre la escena actual de Sketchup
Manejo de selección: Obtén y manipula componentes seleccionados
Evaluación de código Ruby: Ejecuta código Ruby arbitrario directamente en SketchUp para operaciones avanzadas
Related MCP server: SketchupMCP
Componentes
El sistema consta de dos componentes principales:
Extensión de SketchUp (
su_mcp/su_mcp/): un plugin modular de Ruby que ejecuta un servidor TCP dentro de SketchUp (core/,handlers/,helpers/).Servidor MCP (
src/sketchup_mcp/): un paquete modular de Python construido sobre FastMCP —tools.pyexpone herramientas MCP,connection.pygestiona el socket TCP persistente con prefijo de longitud de 4 bytes,config.pylee variables de entornoSKETCHUP_MCP_*,errors.pymuestra errores estructurados de Ruby.
Instalación
Empaquetado de Python
Estamos usando uv, así que necesitarás ejecutar brew install uv
Extensión de Sketchup
Descarga o construye el archivo
.rbzmás recienteEn Sketchup, ve a Ventana > Administrador de extensiones
Haz clic en "Instalar extensión" y selecciona el archivo
.rbzdescargadoReinicia Sketchup
Uso
Iniciar la conexión
En Sketchup, ve a Extensiones > SketchupMCP > Iniciar servidor
El servidor se iniciará en el puerto predeterminado (9876)
Asegúrate de que el servidor MCP esté ejecutándose en tu terminal
Uso con Claude
Configura Claude para usar el servidor MCP añadiendo lo siguiente a tu configuración de Claude:
"mcpServers": {
"sketchup": {
"command": "uvx",
"args": [
"sketchup-mcp2"
]
}
}Esto obtendrá la versión más reciente de PyPI
Una vez conectado, Claude puede interactuar con Sketchup usando las siguientes capacidades:
Herramientas
Geometría y transformaciones:
create_component— Crea un cubo/cilindro/cono/esfera con dimensiones especificadas (mm)delete_component— Elimina un componente de la escenatransform_component— Mueve/rota/escala un componente (traslación en mm)set_material— Aplica colores con nombre o hexadecimales (#rrggbb) a un componenteexport_scene— Exporta a skp/obj/dae/stl/png/jpg
Operaciones booleanas y de aristas:
boolean_operation— Unión/diferencia/intersección en dos sólidoschamfer_edge— Bisela todas las aristas de un grupo/componente (distancia en mm)fillet_edge— Redondea todas las aristas (radio en mm, segmentos configurables)
Ensamblaje:
create_mortise_tenon,create_dovetail,create_finger_joint— Uniones de carpintería (dimensiones en mm)
Introspección:
get_model_info— Ruta, título, unidades, caja delimitadora del modelo activolist_components— Árbol de grupos/componentes con cajas delimitadoras (recursivo, profundidad máxima)get_component_info— Detalles sobre una entidad por IDfind_components— Búsqueda por nombre/tipo/capalist_layers,create_layer— Gestión de capas/etiquetasget_selection— IDs y metadatos de las entidades seleccionadas actualmenteundo— Deshace la última operación
Salida de emergencia:
eval_ruby— Ejecuta código Ruby arbitrario en SketchUp para cualquier cosa no cubierta anteriormente
Comandos de ejemplo
Aquí hay algunos ejemplos de lo que puedes pedirle a Claude que haga:
"Crea un modelo de casa simple con un techo y ventanas"
"Selecciona todos los componentes y obtén su información"
"Haz que el componente seleccionado sea rojo"
"Mueve el componente seleccionado 10 unidades hacia arriba"
"Exporta la escena actual como un modelo 3D"
"Crea un gabinete complejo de artes y oficios usando código Ruby"
Solución de problemas
Problemas de conexión: Asegúrate de que tanto el servidor de la extensión de Sketchup como el servidor MCP estén ejecutándose
Fallos en los comandos: Revisa la consola de Ruby en Sketchup para ver mensajes de error
Errores de tiempo de espera: Intenta simplificar tus solicitudes o dividirlas en pasos más pequeños
Detalles técnicos
Protocolo de comunicación
El sistema utiliza un protocolo simple basado en JSON sobre sockets TCP:
Los comandos se envían como objetos JSON con un
typeyparamsopcionalesLas respuestas son objetos JSON con un
statusy unresultomessage
Contribución
¡Las contribuciones son bienvenidas! Por favor, siéntete libre de enviar un Pull Request.
Licencia
MIT
Configuración de MCP
Añade a tu .mcp.json (Claude Code) o configuración de cliente equivalente:
{
"mcpServers": {
"sketchup": {
"command": "uvx",
"args": ["sketchup-mcp2"],
"env": {
"SKETCHUP_MCP_HOST": "127.0.0.1",
"SKETCHUP_MCP_PORT": "9876",
"SKETCHUP_MCP_TIMEOUT": "60",
"SKETCHUP_MCP_LOG_LEVEL": "INFO"
}
}
}
}Inicio manual (sin cliente MCP):
uvx sketchup-mcp2Escenarios complejos
Para trabajar con modelos completos de SketchUp (paredes, techos, marcos, ensamblajes) a través de
eval_ruby, consulta los fragmentos de Ruby detallados en
docs/sketchup-ruby-cookbook.md:
«Inspeccionar el modelo abierto» — consultar ruta, capas, caja delimitadora.
«Crear geometría — asistente confiable make_box» — extrusión segura
face.normal.z.«Pared enmarcada (montantes + placas)» — sección completa de pared.
«Pared con apertura» — perforación de agujeros en caras coplanares.
«Techo a dos aguas / a cuatro aguas» — construcción manual de triángulos.
«follow_me — perfil a lo largo de una ruta» — solera alrededor del perímetro.
«Errores comunes» — incluyendo la trampa de semántica invertida de
Group#subtract.
Solución de problemas
SketchUp not running or extension not started: ...
El servidor MCP de Python intentó conectarse en el puerto 9876 pero no encontró nada escuchando. O bien:
SketchUp no se está ejecutando, o
El plugin MCP está instalado pero no iniciado — abre Plugins → MCP Server → Start.
El servidor permanece activo después de este error; la siguiente llamada a la herramienta reintentará la conexión.
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 Connectors
Use AI models for chat, image, and video generation from Claude Code and other MCP hosts.
Connect Claude AI to UluP Spaces via MCP — create projects, nodes, and tasks with OAuth 2.0.
Persistent context for Claude. Your AI always knows your projects and next actions across sessions.
Connect Claude to your Platform7n workspaces — chat, links, and tasks. One-click OAuth.
Related MCP Servers
- AlicenseBqualityFmaintenanceConnects Sketchup to Claude AI through the Model Context Protocol, allowing Claude to directly interact with and control Sketchup for prompt-assisted 3D modeling and scene manipulation.10378MIT
- AlicenseBqualityCmaintenanceIntegration that connects Sketchup to Claude AI through the Model Context Protocol, allowing Claude to directly interact with and control Sketchup for prompt-assisted 3D modeling, scene creation, and manipulation.1024MIT
- AlicenseBqualityDmaintenanceEnables direct interaction and control of SketchUp through Claude AI using the Model Context Protocol and a TCP socket connection. It allows for prompt-assisted 3D modeling, component manipulation, and the execution of arbitrary Ruby code within the SketchUp environment.10MIT
- AlicenseAqualityCmaintenanceConnects Claude AI to SketchUp, allowing you to create and modify 3D models via natural language commands.217MIT
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/zinin/sketchup-mcp2'
If you have feedback or need assistance with the MCP directory API, please join our Discord server