AutoPeças MCP Server
MCP con N8N
mcp-autopartes con n8n
Servidor MCP en Python que lee y escribe en pestañas de una hoja de cálculo de Google Sheets a través del protocolo MCP — compatible con Claude Desktop, Claude Code y cualquier cliente MCP (incluido el nodo mcpClientTool de N8N).
El servidor cubre dos dominios en un único proceso, cada uno mapeado a una pestaña de la misma hoja de cálculo:
Dominio | Pestaña | Herramientas |
Autopartes (AutoMax) |
| 6 herramientas — solo lectura |
Camas Hospitalarias |
| 9 herramientas — lectura, escritura, correo electrónico y SMS |
Requisitos previos
Python 3.12+
uv(recomendado) opipCuenta de servicio de Google con permiso de Editor en la hoja de cálculo (necesario para
leitos_atualizar_status_limpeza)
Instalación
cd mcp-alura
uv sync # ou: pip install -e .Configuración
1. Credenciales de Google (Cuenta de servicio)
Crea un proyecto → APIs & Services → Habilita Google Sheets API
Crea una Service Account → genera y descarga la clave JSON
Comparte la hoja de cálculo con el correo electrónico de la cuenta de servicio con permiso de Editor
2. Variables de entorno
cp .env.example .envEdita el .env con al menos:
SPREADSHEET_ID=1zt4h2v3ldK3zELNNmvyn02elEB9dHdfXD5q85ZYh2k0
AUTOPECAS_SHEET_NAME=AutoPeças
LEITOS_SHEET_NAME=Leitos
GOOGLE_CREDENTIALS_PATH=/caminho/para/service_account.json
# Para leitos_enviar_notificacao (e-mail):
GMAIL_USER=setor@hospital.com.br
GMAIL_APP_PASSWORD=xxxx_xxxx_xxxx_xxxx
# Para leitos_enviar_sms:
TWILIO_ACCOUNT_SID=ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TWILIO_AUTH_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TWILIO_FROM_NUMBER=+18647139932El
SPREADSHEET_IDse encuentra en la URL:docs.google.com/spreadsheets/d/**{ID}**/edit
Estructura esperada de la hoja de cálculo
Pestaña AutoPeças:
Código | Nombre | Categoría | Marca | Precio | Stock | Proveedor | Descripción | Ubicación |
F-1023 | Filtro de aceite | Motor | Bosch | 35.90 | 48 | AutoDist | ... | Estante A3 |
Pestaña Leitos — columnas confirmadas por el esquema del nodo N8N:
ID_Leito | Habitación | Tipo_Habitación | Estado_Ocupación | Estado_Limpieza | Paciente | Última_Limpieza |
A-101 | Habitación 10 | Enfermería | Ocupado | Concluido | Juan Silva | 2025-03-28 |
UTI-05 | UTI Norte | UTI | Disponible | Pendiente | — | 2025-03-27 |
Los nombres de las columnas se pueden ajustar en el
.envconCOL_*yLEITOS_COL_*.
Herramientas de Autopartes
Herramienta | Qué hace |
| Busca por nombre, código o descripción |
| Lista el catálogo con paginación y filtros |
| Detalles completos de una pieza por código |
| Categorías con conteo de piezas |
| Stock por código o resumen por categoría |
| Fabricantes con conteo de piezas |
Herramientas de Camas Hospitalarias
Mapeo de los agentes N8N (mcp-all-nodes.json) a herramientas de Python:
Agente N8N | Filtro | Herramientas equivalentes |
Agente Dirección | Acceso total |
|
Agente Enfermería |
|
|
Agente UTI |
|
|
Todos los agentes | — |
|
Nodo de escritura N8N |
|
|
Herramienta | Lectura/Escritura | Qué hace |
| Lectura | Lista todas las camas; filtrable por |
| Lectura | Filtro fijo |
| Lectura | Filtro fijo |
| Lectura | Camas con |
| Lectura | Datos completos de una cama por |
| Lectura | Panel: ocupación y limpieza agrupados por |
| Escritura | Actualiza |
| Externo | Envía correo electrónico vía Gmail SMTP |
| Externo | Envía SMS vía Twilio REST API |
Estado_Ocupación: Disponible 🟢 · Ocupado 🔴 · Reservado 🔵
Estado_Limpieza: Concluido ✅ · Pendiente ⚠️ · En curso 🔄
Tipos de habitación: Enfermería · UTI · Apartamento · Semi-Intensivo
Configuración del envío de correo electrónico
La herramienta leitos_enviar_notificacao utiliza Gmail SMTP con Contraseña de Aplicación:
Activa la verificación en dos pasos en la cuenta de Google
Accede a myaccount.google.com/apppasswords
Crea una contraseña para "Email" y pégala en
GMAIL_APP_PASSWORDen el.env
Configuración del envío de SMS
La herramienta leitos_enviar_sms utiliza la API REST de Twilio:
Crea una cuenta en twilio.com
Obtén
Account SIDyAuth Tokenen el panel de controlRegistra o compra un número remitente y configura
TWILIO_FROM_NUMBER
Uso en Claude Desktop
Añade a ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"hospital-mcp": {
"command": "uv",
"args": ["run", "--project", "/caminho/para/mcp-alura", "python", "server.py"],
"env": {
"SPREADSHEET_ID": "1zt4h2v3ldK3zELNNmvyn02elEB9dHdfXD5q85ZYh2k0",
"AUTOPECAS_SHEET_NAME": "AutoPeças",
"LEITOS_SHEET_NAME": "Leitos",
"GOOGLE_CREDENTIALS_PATH": "/caminho/para/service_account.json",
"GMAIL_USER": "setor@hospital.com.br",
"GMAIL_APP_PASSWORD": "xxxx_xxxx_xxxx_xxxx",
"TWILIO_ACCOUNT_SID": "ACxxxxxxxx",
"TWILIO_AUTH_TOKEN": "xxxxxxxx",
"TWILIO_FROM_NUMBER": "+18647139932"
}
}
}
}Uso en Claude Code
claude mcp add hospital-mcp -- uv run --project /caminho/para/mcp-alura python server.pyUso en N8N (Cliente MCP)
Configura el nodo MCP Client Tool apuntando al endpoint del servidor.
Los tres agentes N8N pueden compartir el mismo servidor MCP de Python,
cada uno utilizando las herramientas adecuadas para su rol mediante include: selected.
Prueba local
uv run python server.pyPara inspeccionar las 15 herramientas con el Inspector MCP:
npx @modelcontextprotocol/inspector uv run python server.pyResources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/joao-parana/mcp-alura'
If you have feedback or need assistance with the MCP directory API, please join our Discord server