KI-Assistenten verbinden (MCP)
Wie Claude, ChatGPT oder ein anderer Agent über das Model Context Protocol mit Ihrer Norka arbeiten kann.
Norka spricht MCP (das Model Context Protocol). Sobald ein Assistent verbunden ist, können Sie ihn fragen „Wer reist am Freitag an?“ oder ihm sagen „Buche Apartment 2 für die Nováks vom 3. bis 7. August“, und er erledigt das, mit denselben Regeln und Benachrichtigungen wie die App.
Die Serveradresse ist für jeden Client dieselbe:
https://mcp.mojenorka.cz/mcp
1. Einen API-Token erstellen
- Öffnen Sie in Norka Einstellungen → API-Tokens und klicken Sie auf Token erstellen.
- Benennen Sie ihn danach, wo Sie ihn verwenden (zum Beispiel „Claude Desktop“), und wählen Sie einen Umfang:
| Umfang | Was der Assistent darf |
|---|---|
| Lesen | Kalender, Aufenthalte, Gäste, unbezahlte Aufenthalte und die Einstellungen sehen |
| Schreiben | zusätzlich Aufenthalte buchen und ändern, Reinigungen zuweisen, den Check-in-Link senden |
| Verwaltung | zusätzlich die Einstellungen ändern: Objekte, Türcodes, Saisons, Kalender-Feeds |
- Der Token wird nur einmal angezeigt. Kopieren Sie ihn; Norka speichert nur seinen Hash. Sie können ihn jederzeit widerrufen.
Beginnen Sie mit dem Umfang Lesen. Geben Sie einem Token Schreib- oder Verwaltungsrechte erst, wenn Sie wissen, wofür der Assistent ihn nutzt.
2. Den Server in Ihrem Client eintragen
Der Token wird als gewöhnlicher Header Authorization: Bearer … gesendet.
Claude Desktop
Öffnen Sie Settings → Developer → Edit Config und fügen Sie hinzu:
{
"mcpServers": {
"norka": {
"url": "https://mcp.mojenorka.cz/mcp",
"headers": { "Authorization": "Bearer nrk_…" }
}
}
}
Starten Sie Claude Desktop neu. Norka erscheint unter den Tools.
Claude Code
claude mcp add --transport http norka https://mcp.mojenorka.cz/mcp \
--header "Authorization: Bearer nrk_…"
ChatGPT, Cursor und andere
Fügen Sie in den Einstellungen des Clients einen entfernten MCP-Server hinzu (manchmal Connector genannt), mit der Adresse oben und dem Header Authorization. Die genauen Schritte unterscheiden sich je nach Client, aber mehr als diese beiden Angaben braucht es nicht.
Prüfen, ob es funktioniert
Bitten Sie den Assistenten: „Rufe whoami auf.“ Er antwortet mit dem Arbeitsbereich, für den der Token gilt, und den Tools, die er hat.
3. Was der Assistent kann
Welche Tools ein Assistent sieht, richtet sich nach dem Umfang des Tokens. Eine Auswahl:
| Tool | Umfang | Macht |
|---|---|---|
get_movements | Lesen | wer an einem Tag anreist und wer abreist |
check_availability | Lesen | welche Objekte für einen Aufenthalt frei sind und was im Weg steht |
search_reservations | Lesen | Aufenthalte nach Datum, Objekt, Status oder Name |
get_reservation | Lesen | einen Aufenthalt vollständig, einschließlich Türcode |
list_guests | Lesen | wer zu einem Aufenthalt gehört |
get_estate_statistics | Lesen | Umsatz und Auslastung eines Objekts nach Monaten |
get_estate_pricing | Lesen | die Preisliste eines Objekts: Grundpreis, Saisonpreise, Preisregeln und das kommende Jahr Nacht für Nacht |
get_price_quote | Lesen | was ein Aufenthalt in einem bestimmten Zeitraum laut Preisliste kostet |
list_unpaid | Lesen | unbezahlte Aufenthalte, einschließlich überfälliger |
get_attention | Lesen | was jetzt erledigt werden muss |
preview_transfer | Lesen | was die Verlegung eines Aufenthalts in ein anderes Apartment bewirken würde |
list_collisions | Lesen | zwei Aufenthalte, die dasselbe Objekt beanspruchen |
list_inquiries | Lesen | Anfragen aus dem Buchungswidget, die auf Antwort warten |
list_booking_widgets | Lesen | die Buchungswidgets auf Ihren Websites: was sie anbieten, Aussehen, erlaubte Websites und der Code zum Einfügen |
create_reservation, update_reservation | Schreiben | einen Aufenthalt buchen oder ändern |
block_dates | Schreiben | Termine eines Apartments für Wartungsarbeiten sperren |
transfer_reservation | Schreiben | einen Aufenthalt in ein anderes Apartment verlegen |
resolve_collision | Schreiben | eine Kollision lösen, indem einer der beiden überlappenden Aufenthalte storniert wird |
update_reservation_estate | Schreiben | Preis, Reinigungskosten oder Türcode eines Objekts eines Aufenthalts, oder dass danach niemand reinigt |
add_guest, update_guest | Schreiben | das Gästebuch eines Aufenthalts |
assign_cleaner, mark_cleaning_complete | Schreiben | die Reinigung nach einem Aufenthalt |
send_checkin_link | Schreiben | dem Gast den Link zum Online-Check-in per E-Mail senden, bei eingeschalteten SMS auch per SMS |
add_note | Schreiben | eine Notiz in den Verlauf des Aufenthalts schreiben |
list_invoices | Lesen | alle Rechnungen und Gutschriften, gefiltert, mit ihrer Summe |
get_invoices | Lesen | ob ein Aufenthalt eine Rechnung braucht, worauf sie lauten würde und was schon ausgestellt ist |
issue_invoice | Schreiben | die Rechnung für den Aufenthalt an den Hauptgast ausstellen, nummeriert und endgültig |
send_invoice | Schreiben | die Rechnung mit dem PDF per E-Mail an den Gast senden |
accept_inquiry, decline_inquiry | Schreiben | eine Anfrage von der Website annehmen (der Aufenthalt wird bestätigt und der Gast erhält eine Bestätigung) oder ablehnen, den Termin freigeben und den Gast per E-Mail informieren |
create_estate, update_season, create_pin_code | Verwaltung | Objekte (ein neues verlangt eine Kapazität, beds und extra_beds), Saisons und Türcodes ändern, einschließlich der nach Räumen gegliederten Reinigungscheckliste (cleaning_checklist); update_estate kann ein Objekt auch abschalten, sodass es nicht mehr angeboten und nicht mehr in die Auslastung eingerechnet wird; ein neues oder wieder eingeschaltetes Objekt über dem Limit des Tarifs lehnt Norka ab |
set_season_price, create_rate_rule, update_rate_rule | Verwaltung | der Preis eines Objekts pro Saison sowie ein Festpreis oder ein Rabatt für bestimmte Termine |
create_booking_widget, update_booking_widget | Verwaltung | ein Buchungswidget anlegen oder ändern: angebotene Objekte, erlaubte Websites, Mindestnächte, Anzeige von Preisen und Bewertungen, Abschalten, Farben als Hex-Code (accent, free, busy), Eckenradius und Größe (compact, regular, large); Löschen eines Widgets und Erneuern seines Tokens bleiben in der App |
Jede Antwort enthält einen Link auf die Seite in der App, aus der sie stammt, sodass Sie sie überprüfen können.
Was der Assistent bewusst nicht kann
- Etwas löschen. Keine Reservierungen, Objekte, Gäste oder Mitglieder.
- Er storniert keine Rechnungen. Eine Stornierung oder Gutschrift erstellen Sie selbst in der App.
- Tokens erstellen oder widerrufen, damit sich ein geleakter Token nicht selbst erneuern kann.
- Mitglieder verwalten oder den Arbeitsbereich löschen. Dafür ist eine angemeldete Sitzung in der App nötig.
- Kontaktdaten von Gästen sehen, außer wenn er gezielt nach einem Gast mit Namen fragt; Listen enthalten nur Namen.
- Außer Kontrolle geraten. Jedes Tool hat ein Aufrufbudget; ein Assistent, der in einer Schleife hängt, erhält eine verständliche Fehlermeldung und macht nichts kaputt.
Häufige Fragen
Kann ich mehrere Tokens haben? Ja. Ein Token pro Client ist eine gute Gewohnheit, damit sich jeder einzeln widerrufen lässt.
Funktioniert der Token auch außerhalb von MCP? Ja, die REST API akzeptiert denselben Token. Der Umfang gilt genauso: Ein Lese-Token wird bei jeder Anfrage abgelehnt, die etwas ändert.
Ich möchte den Server ohne Assistenten ausprobieren.
Verwenden Sie den offiziellen MCP Inspector: npx @modelcontextprotocol/inspector, geben Sie die Serveradresse und den Header mit dem Token ein.