Skip to main content
Glama
joao-parana

AutoPeças MCP Server

by joao-parana

MCP mit N8N

mcp-autopeças mit n8n

MCP-Server in Python, der über das MCP-Protokoll Daten aus Google Sheets-Tabellen liest und schreibt – kompatibel mit Claude Desktop, Claude Code und jedem MCP-Client (einschließlich des mcpClientTool-Knotens in N8N).

Der Server deckt zwei Domänen in einem einzigen Prozess ab, wobei jede einer Tabelle in derselben Google Sheets-Datei zugeordnet ist:

Domäne

Tabelle

Tools

Autoteile (AutoMax)

AutoPeças (gid=0)

6 Tools — nur lesend

Krankenhausbetten

Leitos (gid=1562350974)

9 Tools — lesen, schreiben, E-Mail und SMS

Voraussetzungen

  • Python 3.12+

  • uv (empfohlen) oder pip

  • Google Service Account mit Editor-Berechtigung für die Tabelle (erforderlich für leitos_atualizar_status_limpeza)

Installation

cd mcp-alura
uv sync          # ou: pip install -e .

Konfiguration

1. Google-Anmeldedaten (Service Account)

In der Google Cloud Console:

  1. Erstellen Sie ein Projekt → APIs & Services → Aktivieren Sie die Google Sheets API

  2. Erstellen Sie einen Service Account → generieren und laden Sie den JSON-Schlüssel herunter

  3. Teilen Sie die Tabelle mit der E-Mail-Adresse des Service Accounts mit Editor-Berechtigung

2. Umgebungsvariablen

cp .env.example .env

Bearbeiten Sie die .env-Datei mit mindestens folgenden Einträgen:

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=+18647139932

Die SPREADSHEET_ID finden Sie in der URL: docs.google.com/spreadsheets/d/**{ID}**/edit

Erwartete Tabellenstruktur

Tabelle AutoPeças:

Código

Nome

Categoria

Marca

Preço

Estoque

Fornecedor

Descrição

Localização

F-1023

Filtro de Óleo

Motor

Bosch

35.90

48

AutoDist

...

Prateleira A3

Tabelle Leitos — Spalten bestätigt durch das N8N-Knoten-Schema:

ID_Leito

Quarto

Tipo_Quarto

Status_Ocupacao

Status_Limpeza

Paciente

Ultima_Limpeza

A-101

Quarto 10

Enfermaria

Ocupado

Concluído

João Silva

2025-03-28

UTI-05

UTI Norte

UTI

Disponível

Pendente

2025-03-27

Die Spaltennamen können in der .env-Datei mit COL_* und LEITOS_COL_* angepasst werden.


Autoteile-Tools

Tool

Funktion

autopecas_buscar_peca

Suche nach Name, Code oder Beschreibung

autopecas_listar_pecas

Katalog auflisten mit Paginierung und Filtern

autopecas_obter_detalhes

Vollständige Details eines Teils nach Code

autopecas_listar_categorias

Kategorien mit Teileanzahl

autopecas_verificar_estoque

Lagerbestand nach Code oder Zusammenfassung nach Kategorie

autopecas_listar_marcas

Hersteller mit Teileanzahl

Krankenhausbetten-Tools

Zuordnung der N8N-Agenten (mcp-all-nodes.json) zu Python-Tools:

N8N-Agent

Filter

Äquivalente Tools

Agent Diretoria

Vollzugriff

leitos_listar_leitos, leitos_resumo_ocupacao, leitos_verificar_disponibilidade, leitos_obter_detalhes_leito

Agent Enfermaria

Tipo_Quarto = Enfermaria

leitos_listar_enfermaria

Agent UTI

Tipo_Quarto = UTI

leitos_listar_uti

Alle Agenten

leitos_enviar_notificacao, leitos_enviar_sms

N8N-Schreibknoten

row_numberID_Leito

leitos_atualizar_status_limpeza

Tool

Lesen/Schreiben

Funktion

leitos_listar_leitos

Lesen

Alle Betten auflisten; filterbar nach Tipo_Quarto, Status_Ocupacao, Status_Limpeza

leitos_listar_enfermaria

Lesen

Fester Filter Tipo_Quarto=Enfermaria — Belegungs- und Reinigungsberichte

leitos_listar_uti

Lesen

Fester Filter Tipo_Quarto=UTI — Aufenthaltstage und Patientenanzahl

leitos_verificar_disponibilidade

Lesen

Betten mit Status_Ocupacao=Disponível, Zusammenfassung nach Typ

leitos_obter_detalhes_leito

Lesen

Vollständige Daten eines Bettes nach ID_Leito

leitos_resumo_ocupacao

Lesen

Dashboard: Belegung und Reinigung gruppiert nach Tipo_Quarto

leitos_atualizar_status_limpeza

Schreiben

Aktualisiert Status_Limpeza eines Bettes nach ID_Leito

leitos_enviar_notificacao

Extern

E-Mail-Versand via Gmail SMTP

leitos_enviar_sms

Extern

SMS-Versand via Twilio REST API

Status_Ocupacao: Disponível 🟢 · Ocupado 🔴 · Reservado 🔵

Status_Limpeza: Concluído ✅ · Pendente ⚠️ · Em Andamento 🔄

Zimmertypen: Enfermaria · UTI · Apartamento · Semi-Intensivo

E-Mail-Versand konfigurieren

Das Tool leitos_enviar_notificacao verwendet Gmail SMTP mit einem App-Passwort:

  1. Aktivieren Sie die Zwei-Faktor-Authentifizierung im Google-Konto

  2. Besuchen Sie myaccount.google.com/apppasswords

  3. Erstellen Sie ein Passwort für "E-Mail" und fügen Sie es in GMAIL_APP_PASSWORD in der .env ein

SMS-Versand konfigurieren

Das Tool leitos_enviar_sms verwendet die Twilio REST API:

  1. Erstellen Sie ein Konto auf twilio.com

  2. Rufen Sie Account SID und Auth Token im Dashboard ab

  3. Registrieren oder kaufen Sie eine Absendernummer und konfigurieren Sie TWILIO_FROM_NUMBER


Verwendung in Claude Desktop

Fügen Sie dies zu ~/Library/Application Support/Claude/claude_desktop_config.json hinzu:

{
  "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"
      }
    }
  }
}

Verwendung in Claude Code

claude mcp add hospital-mcp -- uv run --project /caminho/para/mcp-alura python server.py

Verwendung in N8N (MCP Client)

Konfigurieren Sie den MCP Client Tool-Knoten, der auf den Endpunkt des Servers zeigt. Die drei N8N-Agenten können denselben Python-MCP-Server gemeinsam nutzen, wobei jeder die für seine Rolle geeigneten Tools über include: selected verwendet.

Lokaler Test

uv run python server.py

Um die 15 Tools mit dem MCP Inspector zu untersuchen:

npx @modelcontextprotocol/inspector uv run python server.py
Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - A tier

Resources

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