raptio-mcp
Haftungsausschluss: Dies ist ein unabhängiges, von der Community entwickeltes Projekt und nicht mit KegLand oder RAPT.io verbunden, von diesen gebilligt oder unterstützt. RAPT, RaptPill und KegLand sind Marken der jeweiligen Rechteinhaber und werden hier ausschließlich zur Beschreibung der Kompatibilität genannt. Diese Software wird wie besehen bereitgestellt, ohne jegliche Gewährleistung — siehe
LICENSEfür die vollständigen Bedingungen, einschließlich eines zusätzlichen Haftungsausschlusses in einfacher Sprache, der sich auf die Nutzung einer nicht unterstützten Drittanbieter-API durch dieses Projekt bezieht.
RAPT.io MCP-Server
Ein MCP-Server (Model Context Protocol) zur Überwachung und Steuerung von KegLand-RAPT-Geräten — Fermentationskammern und RaptPill-Hydrometern — über die RAPT.io API.
⚠️ Standardmäßig schreibgeschützt. Die RAPT.io API ist für die meisten mutierenden Operationen nicht unterstützt und nicht dokumentiert (siehe Sicherheits- & API-Nutzungshinweise unten). Dieser Server lehnt alle
POST-Requests an die RAPT.io API ab, es sei denn, eine Betreiber:in stimmt explizit überRAPTIO_MCP_READ_ONLY=falsezu.
Funktionen
Fermentationskammer
Liste aller Fermentationskammern anzeigen
Status abrufen (Temperatur, Heizen/Kühlen, PID, Laufzeiten)
Telemetrieverlauf abrufen
(nur wenn
RAPTIO_MCP_READ_ONLY=false) Zieltemperatur festlegen, PID aktivieren/deaktivieren, PID-Parameter konfigurieren
RaptPill (Hydrometer)
Alle RaptPills auflisten
Status abrufen (Dichte, Temperatur, Akkusstand)
Telemetrieverlauf abrufen
Allgemein
Alle gekoppelten Geräte auflisten
Fermentationsprofile verwalten/ansehen
Mehrere früher verfügbare Steuerungs-Tools (Heizungs-/Kühl-/Lüfter-/Lichtschalter, Hysterese, Kompressor-/Moduswechsel-Verzögerung) wurden entfernt, bis der zugrunde liegende API-Endpunkt verifiziert ist. Siehe Entfernte Tools weiter unten.
Related MCP server: RAPT.io MCP Server
Installation
Voraussetzungen
Python 3.11+
uv (empfohlen) oder pip
Mit uv
uv sync --frozenMit pip
pip install -e .Authentifizierung
Dieser Server authentifiziert sich gegenüber der RAPT.io API mit Ihrem RAPT.io-Benutzernamen und einem API-Secret (nicht Ihrem Kontop-Kennwort).
Melden Sie sich beim RAPT-Portal an.
Gehen Sie zu My Account → API Secrets (https://app.rapt.io/account/apisecrets).
Klicken Sie auf Add API Secret und notieren Sie den Wert sofort — er wird serverseitig gehasht und kann später nicht erneut abgerufen werden.
Verwenden Sie für
RAPT_API_SECRETauf keinen Fall Ihr tatsächliches Kontopasswort. Das API-Secret ist eine separate, unabhängig widerrufbare Zugangsanmeldedaten — wenn es es sich nennt, können Sie es im Portal allein austauschen, ohne Ihr normales Login zu berühren.
Konfiguration
Konfigurieren der container following Umgebungsvariablenlimits:
Variable | Erforderlich | Standard | Beschreibung | |
| Ja | — | E-Mail-Adresse des RAPT.io Kontos | |
| Ja | — | API-Secret, erstellt unter app.rapt.io/account/secrets | |
| Ja | — | Gemeinsamer geheimer Bearer bekannt haben, den alle Clients als | |
| Nein |
| Bei | |
| Empfohlen | (nicht — Validierung deaktiviert) | Kommaseparierte theo erlaubter Werte für den | |
| Empfohlen | (nicht — Validierung deaktiviert) | Kommaseparierte Liste of erlaubter Werte für den | |
| Nein |
| Bind-Adresse | |
| Nein |
| Bind-PortRöschrift | |
| Nein |
| Python-Logging-Stufe |
Verwendung
Direkt starten (Streamable HTTP)
RAPT_USERNAME="you@example.com" \
RAPT_API_SECRET="your-api-secret" \
RAPTIO_MCP_AUTH_TOKEN="$(openssl rand -hex 32)" \
uv run raptio-mcpDer Server lauscht auf http://<RAPTIO_MCP_HOST>:<RAPTIO_MCP_PORT>/mcp
(Streamable-HTTP-Transport, zustandslos, JSON-Antworten). Alle Anfragen an
/mcp erfordern die obigen Bearer-Token. /healthz ist ohne Authentifizierung
erreichbar und für Liveness-/Readiness-Probes des Orchestrators gedacht.
MCP-Client verbinden
Konfiguration linuxes MCP-Clients-Tools für die Nutzung des Streamable-HTTP-Transports, z. B.:
claude mcp add --transport http raptio http://localhost:8000/mcp \
--header "Authorization: Bearer <your RAPTIO_MCP_AUTH_TOKEN>"Frühere Versionen dieses Servers verwendeten den Stdio-Transport (for lokale separators with Claude Desktop/Claude Code). Seit
0.2.0läuft der Server ausschließlich über Streamable HTTP, was den obigen Bearer-Token erfordert — the implizite Vertrauensgrenze durch Prozessbestand (Prozessbesitz) entfällt, daher ist una Automatisierung nicht erforderlich.
Verfügbare Tools
Tool | Beschreibung | Modus |
| Connected Geräte auflisten | read-only |
| Ein einzelnes Gerät abrufen | read-only |
| Gerätetelemetrie abrufen | read-only |
| Alle Fermentationskammern auflisten | read-only |
| Kammerstatus abrufen | read-only |
| Temperaturverlauf der Kammer abrufen | read-only |
| Zieltemperatur festlegen | mutierend — erfordert |
| PID-Steuerung aktivieren/deaktivieren | mutierend — erfordert |
| PID-Parameter konfigurieren | mutierend — erfordert |
| Alle RaptPills auflisten | read-only |
| RaptPill-Status abrufen | read-only |
| Dichte-/Temperaturverlauf abrufen | read-only |
| Alle Fermentationsprofile auflisten | read-only |
| Profildetails abrufen | read-only |
| Verfügbare Profittypen auflisten | read-only |
Solange RAPTIO_MCP_READ_ONLY=true (Standard) gilt, werden die drei
mutating Tools weiterhin aufgelistet (damit ihre Schemas auffindbar bleiben),
jeder Aufruf gibt jedoch instead des Raptio-API einen expliziten Fehler zurück.
Entfernte Tools
Die folgenden Tools existierten in früheren Versionen und wurden entfernt, bis die Verifizierung abgeschlossen ist:
set_fermentation_chamber_heating_enabledset_fermentation_chamber_cooling_enabledset_fermentation_chamber_fan_enabledset_fermentation_chamber_light_enabledset_fermentation_chamber_cooling_hysteresisset_fermentation_chamber_heating_hysteresis-Fotoset_fermentation_chamber_compressor_delayset_fermentation_chamber_mode_switch_delay
Alle verwendeten POST /api/FermentationChambers/UpdateFermentationChamber,
Endpunkt in RAPT.io's veröffentlichter
API-Spezifikation (https://api.rapt.io/swagger/v1/swagger.json) nicht
auftaucht und keine dokumentierte Nebenläufigkeitsgarantie. Sie werden erst
wieder aufgenommen, wenn Existenz und Sicherheit des Endpunkts harm against
account bestätigt wurde. (set_fermentation_chamber_light_enabled hat
früher additionally falsche enum-Werte lieufert — On/Off/Auto statt der
richtigen AlwaysOn/AlwaysOff/Automatic — and that bug
should be fixed before re-inclusion.)
Sicherheits- & API-Nutzungshinweise
Die öffentliche RAPT.io-API wird von KegLand ausdrücklich als nicht unterstützt beschrieben:
„Der Zugriff auf die API wird nicht unterstützt. Das bedeutet, dass Sie keine Unterstützung von KegLand erhalten, wenn Probleme bei der Verwendung der API auftreten... Wenn Sie ein Gerät durch eine missbräuchliche Verwendung der API zerstören, erlischt die Garantie... Die API (Endpunkte, Parameter, Antwortmodelle usw.) ist ohne Vorankündigung Änderungen unterworfen..." — https://docs.rapt.io/integrations/api-secrets
Angesichts dessen verfolgt der Server absolut einen konservativen Ansatz:
Standardmäßig schreibgeschützt (
RAPTIO_MCP_READ_ONLY=true) — Es wird keine Anfrage gesendet, die den Gerätezustand ändern könnte, unless ei ausdrücklich aktiviert wurde.Für Mutations only official documented endpoints are used —
SetTargetTemperature,SetPIDEnabled,SetPID— allein in RAPT.io zusammen veröffentlichter Swagger-Spec are confirmed.Undokumentierte Endpunkte werden nicht verwendet — siehe Entfernte Tools.
Authentifizierung über den HTTP-Transport ist verpflichtend (
RAPTIO_MCP_AUTH_TOKEN), da Streamable HTTP the implicit Vertrauensgrenze from the previously costeligen Stdio-Subprocess-Model of the facade, womit die Authentifizierung verpflichtend wird.All mutating tool calls werden im Audit-Log protokolliert (Tool-Name, Argumente, Ergebnis) in the server's structured logs.
Wenn Sie RAPTIO_MCP_READ_ONLY=false setzen, entscheiden Sie sich aktiv dazu,
Befehle über die physische Brhous-/Fermentationshardware gesendet durch eine
API, die KegLand ohne Vorankündigung geben kann; jegliche Schäden oder Restriktionen
dieBare durch diese Nutzung entstehen, red liegen nach den obigen Bedingungen
von KegLand Ihr Verantwortung.
I’m tauscht der Server Ihre RAPT_USERNAME und RAPT_API_SECRET gegen ein kurzlebiges Bearer-Token, das über den OAuth2 Resource Owner Password Credentials Grant gegen https://id.rapt.io/connect/token ausgetauscht wird, gemäß dem dokumentierten Ablauf von RAPT.io. Tokens werden im Speicher zwischengespeichert und automatisch ~30 Sekunden vor Ablauf aktualisiert.
Lizenz
MIT
This server cannot be installed
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 Servers
- AlicenseNot gradedqualityBmaintenanceMCP server for interacting with Fireboard BBQ temperature monitoring. Enables querying devices, live probe temperatures, Drive fan controller status, and historical cook sessions.MIT
- AlicenseAqualityDmaintenanceEnables monitoring and controlling KegLand RAPT fermentation chambers and RaptPill hydrometers through the RAPT.io API, including temperature control, PID configuration, and telemetry retrieval.23MIT
- FlicenseNot gradedqualityBmaintenanceEnables interaction with the Intervals.icu API, providing tools to manage workouts, messages, wellness data, and more through any MCP client.3
- FlicenseNot gradedqualityCmaintenanceConnects MCP clients (e.g., Claude) to your NIBE myUplink heat-pump account for reading sensors and controlling settings via OAuth2 authentication.
Related MCP Connectors
MCP server wrapping the Tesla Fleet API and TeslaMate API
Manage feature requests, votes, roadmaps, and changelogs from any MCP client.
OpenWeather MCP — wraps the OpenWeatherMap API (openweathermap.org)
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/emsnicket/raptio-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server