Technische Referenz zu MCP
Verwenden Sie diese Seite, wenn Sie Transportdetails, statische Anmeldeinformationen, Funktionsgrenzen oder Protokollfehlerbehebung benötigen. Für die kürzeste persönliche Einrichtung beginnen Sie mit Verbinden Sie Kanera mit Ihrem KI-Agenten.
Verbindungsmethoden
| Verbindung | Authentifizierung | Effektiver Zugang |
|---|---|---|
| Interaktives OAuth | Browser-Anmeldung und Einwilligung | Fungiert als verbundener Benutzer mit Lese- und Schreibtoolfunktion. Der Kunde kontrolliert die Verfügbarkeit und Genehmigung von Aktionen; Kanera erzwingt die Board-Rolle des Benutzers. Es erhält niemals Zugriff auf die Arbeitsbereichsverwaltung. |
| Geräteautorisierung | Ein kurzer Benutzercode, der in einem Browser auf einem beliebigen Gerät genehmigt wird | Fungiert als genehmigender Benutzer, genau wie interaktives OAuth. Es erhält niemals Zugriff auf die Arbeitsbereichsverwaltung. |
| Unbeaufsichtigter Agent | OAuth client_credentials | Verwendet eine Workspace-Dienstidentität, die auf die von einem Administrator ausgewählte maximale Lese-, Schreib- oder Admin-Grenze begrenzt ist. Der Administrator fügt derzeit keine Tools zum Standard-MCP-Server hinzu. Verwenden Sie einen separaten Arbeitsbereich oder Board-API-Schlüssel für die direkte REST-Verwaltung. |
| Persönlicher API-Schlüssel | Statischer Inhaber-Token | Fungiert als Eigentümer aller zugänglichen Boards. Der Standard-MCP bleibt arbeitsorientiert; Direkte REST-Anfragen erben separat die unterstützten Berechtigungen des Besitzers. |
| Arbeitsbereichs- oder Board-API-Schlüssel | Statischer Inhaber-Token | Bleibt an seinen Standardarbeitsbereich oder sein eigenständiges Board und seinen Lese-, Schreib- oder Admin-Bereich angeheftet. Der Administrator fügt dem Standard-MCP keine Konfigurationstools hinzu. |
Siehe Verbinden Sie einen KI-Agenten für interaktives OAuth, Einwilligung, Widerruf, unbeaufsichtigte Agenten und den Autorisierungsablauf.
Gehostete Endpunkte
Kaneras gehosteter MCP-Endpunkt ist:
https://mcp.kanera.app/mcp
Die Dienstzustandsprüfung ist:
https://mcp.kanera.app/health
OAuth-fähige Clients können den MCP-Endpunkt direkt hinzufügen und die Authentifizierung im Browser abschließen. Ein Client, der einen API-Schlüssel verwendet, sendet ihn als Bearer-Token:
Authorization: Bearer kanera_live_...
Wenn Ihr Team Kanera an seiner eigenen Adresse betreibt, gilt das Gleiche /mcp und /health Dort gelten die Wege. Kopieren Sie die genaue MCP-Adresse, die unten angezeigt wird Profileinstellungen -> API-Schlüssel in dieser Kanera.
Protokollversionen
Der gehostete Endpunkt bedient sowohl das aktuelle MCP-Protokoll als auch die früheren Versionen, die Claude, Codex, Cursor, Copilot, Gemini CLI und OpenCode heute verwenden, vom selben Server. Ältere Kunden sehen dieselben Tools, Ressourcen und Eingabeaufforderungen wie zuvor; Clients auf dem aktuellen Protokoll erhalten ebenfalls Veranstaltungsabonnements. Tool-Schemata werden für beide im gleichen JSON-Schema-Dialekt veröffentlicht, sodass kein Kunde einen anderen Vertrag sieht. kanera mcp over stdio akzeptiert auch beides.
OAuth-Token-Sicherheit
OAuth-fähige Clients verarbeiten die Sicherheitsdetails automatisch. Der für eine Kanera-Verbindung ausgestellte Token funktioniert nur mit der von Kanera angezeigten MCP-Adresse; Es kann nicht als allgemeine öffentliche API-Anmeldeinformation wiederverwendet werden.
Wenn Sie einen benutzerdefinierten OAuth-Client erstellen, senden Sie genau diese MCP-Adresse als resource bei der Autorisierung und jedem Token-Austausch. Die folgenden Beispiele für die Geräteautorisierung zeigen, wo es hingehört. Verwenden Sie einen persönlichen, Workspace- oder Board-API-Schlüssel für eine Integration, die die REST-API direkt aufruft.
Geräteautorisierung für CLI und Headless-Clients
Ein Client, der keine Browserumleitung empfangen kann, z. B. ein Terminaltool, eine SSH-Sitzung oder ein Computer ohne verwendbaren Browser, kann eine Verbindung mit der OAuth-Geräteautorisierungsgewährung (RFC 8628) herstellen. Der Client zeigt einen Kurzcode an, eine Person genehmigt ihn in einem Browser auf einem beliebigen Gerät und der Client fragt ab, bis er Token erhält.
Das Ergebnis ist dieselbe Identität wie interaktives OAuth. Die Verbindung fungiert als genehmigender Benutzer mit Lese- und Schreibtoolfunktion, während Kanera weiterhin die Rolle dieses Benutzers auf jedem Board durchsetzt. Es erhält niemals Zugriff auf die Arbeitsbereichsverwaltung. Für die Genehmigung einer Geräteanforderung ist ein Plan erforderlich, der Agentenverbindungen zulässt, die gleichen Anforderungen wie bei jeder anderen Agentenverbindung.
Kanera wirbt mit dem Einströmen /.well-known/oauth-authorization-server:
| Metadatenfeld | Wert |
|---|---|
device_authorization_endpoint | https://api.kanera.app/oauth/device/code |
grant_types_supported | Inklusive urn:ietf:params:oauth:grant-type:device_code |
Registrieren Sie einen Geräteclient
Registrieren Sie den Kunden unter /oauth/register mit dem Gerätegewährungstyp. Ein reiner Geräte-Client benötigt keinen Umleitungs-URI; redirect_uris ist nur erforderlich, wenn der Client auch verwendet authorization_code.
curl -X POST https://api.kanera.app/oauth/register \
-H 'content-type: application/json' \
-d '{
"client_name": "Acme CLI",
"grant_types": ["urn:ietf:params:oauth:grant-type:device_code", "refresh_token"]
}'
Kanera lehnt den Gerätefluss für jeden Client ab, der nicht mit dem Gerätegewährungstyp registriert wurde.
Fordern Sie einen Gerätecode an
curl -X POST https://api.kanera.app/oauth/device/code \
-d client_id=kanera_client_... \
-d resource=https://mcp.kanera.app/mcp \
-d 'scope=kanera:read kanera:write offline_access'
resource ist erforderlich und muss mit der MCP-Adresse übereinstimmen. Kanera normalisiert jede vom Benutzer autorisierte Geräteanfrage auf kanera:read kanera:write, einschließlich Clients, die dies auslassen scope oder nur „Lesen“ anfordern. Kanera gibt ein Aktualisierungstoken aus, wenn der Client das registriert hat refresh_token Förderart; offline_access wird akzeptiert, ist aber nicht erforderlich. Nur kanera:read, kanera:write, und offline_access werden akzeptiert.
| Antwortfeld | Bedeutung |
|---|---|
device_code | Das Geheimnis, das der Client beim Abfragen zurücksendet. |
user_code | Der Funktionscode, den die Person eingibt, im folgenden Format ABCD-2345. |
verification_uri | Die /oauth/device Seite auf Ihrer Kanera-Webadresse. |
verification_uri_complete | Dieselbe Seite mit dem vorab ausgefüllten Code in der Abfragezeichenfolge. |
expires_in | 600. Die Anfrage läuft zehn Minuten nach ihrer Ausstellung ab. |
interval | 5. Die Mindestanzahl von Sekunden zwischen Umfragen. |
Genehmigen Sie die Anfrage
- Der Client zeigt die an
user_codeund dieverification_uri, oder öffnet sichverification_uri_completedirekt. - Die Person öffnet diese Adresse und meldet sich bei Kanera an, falls dies noch nicht geschehen ist.
- Die Seite benennt den Client, zeigt den Code an, damit er mit dem Terminal verglichen werden kann, und listet auf, was der Client tun kann.
- Wählen Zugriff erlauben genehmigt die Verbindung. Wählen Leugnen lehnt es ab.
Umfrage nach Token
curl -X POST https://api.kanera.app/oauth/token \
-d grant_type=urn:ietf:params:oauth:grant-type:device_code \
-d device_code=kanera_device_... \
-d client_id=kanera_client_... \
-d resource=https://mcp.kanera.app/mcp
Umfrage nicht schneller als interval. Bis die Anfrage abgeschlossen ist, kehrt der Token-Endpunkt zurück 400 mit einem Standard-OAuth-Fehler:
| Fehler | Bedeutung | Was der Kunde tun sollte |
|---|---|---|
authorization_pending | Bisher hat noch niemand den Antrag genehmigt oder abgelehnt. | Führen Sie die Abfrage im aktuellen Intervall fort. |
slow_down | Der Client hat schneller als im Intervall abgefragt. | Kanera verlängert die Pause um fünf Sekunden. Nutzen Sie von nun an das längere Intervall. |
access_denied | Die Person lehnte den Antrag ab. | Beenden Sie die Umfrage und starten Sie eine neue Anfrage. |
expired_token | Der Code ist abgelaufen oder seine Token wurden bereits ausgegeben. | Starten Sie eine neue Anfrage. |
invalid_grant | Der Gerätecode ist unbekannt oder gehört zu einem anderen Client. | Starten Sie eine neue Anfrage. |
Nach der Genehmigung gibt der Endpunkt die gleiche Nutzlast zurück wie jeder andere Zuschuss: eine zielgruppengebundene kanera_mcp_... Zugriffstoken, gültig für fünfzehn Minuten, plus ein Aktualisierungstoken, wenn der Client das registriert hat refresh_token Zuschussart. Ein Gerätecode ist einmalig, daher ist ein wiederholter Austausch möglich expired_token. Aktualisierungsanfragen müssen dasselbe enthalten resource.
Verwalten oder widerrufen Sie eine Geräteverbindung, bei der alle anderen Agentenverbindungen verwaltet werden Profileinstellungen -> API-Schlüssel.
Erstellen Sie einen API-Schlüssel
Verwenden Sie API-Schlüssel für lokale stdio, Clients, die nur statische Bearer-Tokens akzeptieren, oder benutzerdefinierte serverseitige Integrationen.
Persönlicher API-Schlüssel
- Offen Profileinstellungen.
- Gehe zu API-Schlüssel.
- Erstellen Sie einen persönlichen API-Schlüssel.
- Wählen Sie Schreibgeschützt oder Lesen und schreiben. Schreibgeschützt ist die richtige Standardeinstellung für einen unbeaufsichtigten Agenten: Kanera lehnt jede Änderung an der API ab, sodass nicht nur die Toolberechtigungen des Clients zwischen einem Agenten und Ihrer Arbeit stehen. Einem Client, der mit einem Nur-Lese-Schlüssel verbunden ist, werden nur die Lesetools angeboten, sodass er niemals eine Änderung plant, die er nicht durchführen kann.
- Fügen Sie optional ein privates Label hinzu, das den Kunden identifiziert.
- Kopieren Sie das Geheimnis, wenn es angezeigt wird.
Ein persönlicher Schlüssel hat ein Präfix wie z kanera_u_live_.... Es wird einmal angezeigt und fungiert als sein Besitzer, begrenzt durch den von Ihnen gewählten Bereich. Speichern Sie es nur im Anmeldeinformationsspeicher des AI-Clients oder im Secret Manager Ihres Servers.
Arbeitsbereichs- oder Board-API-Schlüssel
- Öffnen Sie den Standardarbeitsbereich oder das eigenständige Board.
- Gehe zu Einstellungen -> API.
- Erstellen Sie einen API-Schlüssel.
- Wählen Sie den kleinsten Bereich, der zum Workflow passt.
- Kopieren Sie das Geheimnis, wenn es angezeigt wird.
| Umfang | Zuschüsse |
|---|---|
| Lesen | Untersuchen, suchen, zusammenfassen und berichten, ohne Kanera zu ändern. |
| Schreiben | Erstellen und aktualisieren Sie Board-Inhalte, einschließlich Karten, Checklisten, Kommentare, Aufgaben, Beschriftungen, benutzerdefinierte Feldwerte und Notizen. |
| Admin | Führen Sie eine unterstützte direkte öffentliche API-Verwaltung durch. Der Standard-MCP-Server bleibt arbeitsorientiert und stellt keine Arbeitsbereichs-, Board-, Listen-, Beschriftungs-, Feld-, Options-, Aufbewahrungs- oder Bestellverwaltungstools zur Verfügung. |
Verbinden Sie einen lokalen stdio-Client
Der einfachste lokale stdio-Server ist der Kanera CLI. Installieren Sie es, melden Sie sich einmal an und richten Sie den Client darauf kanera mcp; Es bedient die gleiche Tool-Ebene wie stdio unter Verwendung der gespeicherten Anmeldeinformationen, sodass kein zweiter Schlüssel an einer zweiten Stelle konfiguriert werden muss.
npm install --global @kanera/cli
kanera auth login
{
"mcpServers": {
"kanera": {
"command": "kanera",
"args": ["mcp"]
}
}
}
Benutzen npx @kanera/cli mcp Anstelle einer globalen Installation, wenn Sie lieber nichts installieren und hinzufügen möchten "args": ["mcp", "--profile", "agent"] um ein benanntes Profil auszuwählen.
Um die Anmeldeinformationen über die Umgebung und nicht über ein gespeichertes Profil bereitzustellen – die übliche Wahl in CI oder einen Sandbox-Agenten – lauten sowohl die CLI als auch das eigenständige MCP-Paket:
| Umgebungsvariable | Zweck |
|---|---|
KANERA_API_KEY | Ein persönlicher, Workspace- oder Board-API-Schlüssel. |
KANERA_PUBLIC_API_URL | Der öffentliche API-Ursprung von Kanera, z https://api.kanera.app. |
{
"mcpServers": {
"kanera": {
"command": "npx",
"args": ["-y", "@kanera/cli", "mcp"],
"env": {
"KANERA_API_KEY": "kanera_u_live_...",
"KANERA_PUBLIC_API_URL": "https://api.kanera.app"
}
}
}
}
Verwenden Sie den gehosteten HTTP-Endpunkt, wenn Sie den MCP-Prozess überhaupt nicht lokal ausführen müssen.
Ressourcen
Kanera bietet vier strukturierte JSON-Ressourcenvorlagen:
| Ressource | URI | Enthält |
|---|---|---|
| Standardarbeitsbereich | kanera://workspace/{workspaceId} | Begrenzte Arbeitsbereichskonfiguration und freigegebene Listen, Beschriftungen, Felder, Vorlagen, Automatisierungen und Mitgliedschaften, die für die Anmeldeinformationen sichtbar sind |
| Board | kanera://board/{boardId} | Begrenzte Metadaten und sichtbare Konfiguration für einen Standard-Arbeitsbereich oder ein eigenständiges Board ohne Karten |
| Karte | kanera://card/{cardId} | Kartendetails, einschließlich Beschriftungen, Beauftragte, Checklisten, Anhänge und verknüpfte Notizen |
| Hinweis | kanera://note/{noteId} | Eine sichtbare persönliche oder Teamnotiz |
Persönliche Notizen sind für den verbundenen Benutzer privat. Bedeuten Sie nicht, dass ein anderes Workspace-Mitglied oder ein Workspace-Service-Berechtigungsnachweis sie lesen kann.
Kartenreferenzen
MCP-Kartenfelder benannt cardId oder cardIds Akzeptieren Sie eine dieser Referenzen:
- Ein menschlicher Kartenschlüssel wie z
PROJ-123, einschließlich eines genauen Schlüssels, der ein vorheriges Arbeitsbereichspräfix verwendet. - Eine kanonische Kanera-Karten-URL.
- Die von der öffentlichen API zurückgegebene Karten-UUID.
Verwenden Sie die menschliche Taste in Eingabeaufforderungen und benutzerorientierten Antworten. Kanera löst es in die UUID auf, bevor es den vorhandenen öffentlichen API-Vorgang aufruft, sodass Autorisierung, Aktivität und Prüfverhalten gleich bleiben. Ein aufgelöster Schlüssel wird für die Verbindung einige Minuten lang gespeichert, sodass die Suche nicht wiederholt wird, wenn er in einer mehrstufigen Aufgabe wiederholt wird. Wenn der verbundene Benutzer denselben Schlüssel in mehr als einer Organisation sehen kann, verwenden Sie die kanonische Karten-URL, um die beabsichtigte Organisation eindeutig zu identifizieren.
Die Kartenergebnisse enthalten den aktuellen, für Menschen lesbaren Schlüssel. Die kanera://card/{cardId} Ressourcen-URI verwendet weiterhin die UUID; Menschliche Tasten und Links gelten für MCP-Tool-Eingaben.
Fähigkeitsgruppen
Die Live-Tool-Schemata sind die Autorität für Namen, Eingaben, Sicherheitsanmerkungen und Grenzwerte. Der Server umfasst derzeit:
| Bereich | Verfügbare Operationen |
|---|---|
| Entdeckung | Untersuchen Sie die Aktionssitzung, blättern Sie zu Standardarbeitsbereichen und zugänglichen Boards, lesen Sie begrenzte Arbeitsbereiche oder Board-Konfigurationen und blättern Sie zu Boards und Mitgliedern |
| Konfigurationsgrenze | Lesen Sie Listen, Beschriftungen, Felder, Optionen, Mitglieder und Berechtigungen, die für die gezielte Arbeit erforderlich sind. Erstellen, Bearbeiten, Neuordnen, Aufbewahren und andere Vorgänge zur Listen-/Arbeitsbereichsverwaltung verbleiben in der Kanera-Schnittstelle und sind keine MCP-Tools |
| Suchen | Durchsuchen Sie Live-Karten, Notizen, Kommentare und Dateinamen von Anhängen oder durchsuchen Sie die offizielle Kanera-Dokumentation |
| Karten | Lesen Sie Zusammenfassungen oder vollständige Inhalte, rufen Sie begrenzte Checklisten-/Kommentarinhalte für bis zu 200 ausgewählte Karten ab, erstellen, aktualisieren, verschieben, neu anordnen, kopieren, verschieben Sie zwischen kompatiblen Boards, archivieren, dearchivieren, vervollständigen, öffnen Sie erneut und verwalten Sie Anhänge und Cover |
| Kartenbeziehungen | Lesen Sie einzelne Links mit cards.get, erkunden Sie Ketten mit cards.dependency_graph, und hinzufügen oder entfernen blocks, blocked_by, oder relates_to Links mit cards.set_relations |
| Anhänge | Lesen Sie den Inhalt eines Anhangs mit cards.get_attachment (Bilder als Bilder, Textdateien als ausgelagerter Text); Hängen Sie eine Datei von der eigenen Festplatte des Agenten an cards.create_upload_link, die eine einmalige URL zurückgibt, mit der der Agent den Upload durchführt curl -T |
| Bretttrenner | Erstellen Sie betitelte, optional farbige Trennzeichen; ihr Aussehen aktualisieren; verschieben Sie sie relativ zu Karten, Trennzeichen oder Listenrändern; Platzkarten relativ zu Trennzeichen; und Trennzeichen löschen, ohne die Karten zu wechseln |
| Massenkartenarbeit | Vervollständigen, datieren, kennzeichnen, zuweisen, verschieben, archivieren, kopieren oder benutzerdefinierte Felder auf ausgewählten Karten festlegen, wobei in jedem Schema Batch-Limits auf Board-Ebene angezeigt werden |
| Aufgaben und Felder | Ersetzen Sie Beauftragte oder Bezeichnungen und legen Sie unterstützte benutzerdefinierte Feldwerte fest oder löschen Sie sie |
| Kommentare | Seite, mit optionalen Anhängen hinzufügen, bearbeiten, einen geeigneten Kommentar löschen und idempotent Reaktionen hinzufügen oder entfernen |
| Checklisten | Lesen Sie die Checklisten einer Karte als verschachtelten Baum mit IDs. Erstellen Sie eine Checkliste zusammen mit ihren Elementen, Beauftragten, Fälligkeitsterminen und einer Ebene von Unterchecklisten in einem einzigen atomaren Aufruf. Fügen Sie ein oder mehrere Elemente an einer ausgewählten Position hinzu. Aktualisieren Sie ein oder mehrere Elemente mit unterschiedlichen Änderungen pro Element. Legen Sie für jedes Element einen Beauftragten oder ein Fälligkeitsdatum fest. umbenennen, neu anordnen, verschieben und löschen. Stapel werden vollständig validiert, bevor etwas geschrieben wird, und Fehler benennen das genaue Feld |
| Die nächsten Prioritäten | Entdecken Sie lesbare persönliche und Teamkollegen-Warteschlangen, lesen Sie die genaue Rangfolge und fügen Sie zugewiesene aktive Karten hinzu, verschieben oder entfernen Sie sie, wenn die Anmeldeinformationen und die Arbeitsbereichsautorität dies zulassen |
| Agent läuft | Kündigen Sie Arbeiten während des Fluges auf einer Karte mit an runs.start, Fortschritt melden und Herzschlag mit runs.update, schließen Sie den Lauf mit einem Terminalstatus und prüfen Sie, was bereits läuft runs.list |
| Arbeit und Berichterstattung | Fragen Sie begrenzte persönliche oder sichtbare Teamkarten mit den Filtern „Überfällig“, „Nicht zugewiesen“, „Inaktivität“ und „Zuletzt verschoben“ ab. Lesen Sie den ganzen Tag des verbundenen Benutzers in einem Anruf mit work.my_day; Überprüfen Sie Zeitpläne und Cross-Board-Rollups mit work.portfolio_summary; und generieren Sie persönliche Standup-Beweise in zugänglichen Foren |
| Aktivität und abgeschlossene Arbeit | Seitenboard-Aktivität und Kartenverlauf sowie Fertigstellungsverlauf und Arbeitsaufzeichnungen lesen |
| Notizen | Seitennotiz-Metadaten, vollständigen Inhalt lesen, kleine Dateien erstellen, aktualisieren, verknüpfen, anhängen, persönliche Notizen oder Teamnotizen kopieren und neu anordnen |
| Notizblock | Erfassen Sie „Erinnere mich an…“-Elemente in Ihrem privaten Bereich Notizblock Posteingang, ohne ein Board auszuwählen, Seiten aufzulisten und zu lesen und Elemente abzuhaken. Erfordert eine Browser-Anmeldung oder einen persönlichen Schlüssel |
Siehe die generiertes MCP-Werkzeuginventar für jeden registrierten Werkzeugnamen.
Kartenbeziehungen
cards.get beinhaltet die Karten relations und hiddenBlockerCount. cards.set_relations Fügt Beziehungen im selben Arbeitsbereich hinzu oder entfernt sie:
{
"cardId": "WEB-18",
"direction": "blocked_by",
"otherCardIds": ["MKT-42", "MKT-43"],
"remove": false
}
direction ist blocks, blocked_by, oder relates_to, vorlesen cardId's Seite. otherCardIds akzeptiert eine Kartenreferenz oder bis zu 50; remove Der Standardwert ist „false“. Adds sind idempotent und werden pro Ziel festgeschrieben. Ein Teilerfolg kehrt zurück failed Einträge und alle notAttemptedCardIds neben den daraus resultierenden Zusammenhängen. Wenn der letzte Lesevorgang fehlschlägt, addedCardIds und relationsUnavailable berichten, was gerettet wurde. Der Aufruf schlägt fehl, wenn jeder Änderungsversuch abgelehnt wird. Entfernungs-Commits auch pro Ziel: removedCardIds bewahrt erfolgreiche Entfernungen neben allen failed, notAttemptedCardIds, oder relationsUnavailable Details. notFoundCardIds benennt Beziehungen, die es nicht sehen oder finden kann; die werden in Ruhe gelassen.
Für schreibfähige Anmeldeinformationen ist Bearbeitungszugriff erforderlich cardId und jede gesperrte Karte sowie Lesezugriff auf die anderen Karten. Zyklen, Selbstverknüpfungen, Cross-Workspace-Verknüpfungen und abgeschlossene Karten werden als neue Blocker abgelehnt. Bei Lesevorgängen werden unzugängliche Kartendetails weggelassen, aber versteckte aktive Blocker gezählt. Benutzen filters: { blockedOnly: true } mit work.query_cards für gesperrte offene Karten, bzw atRiskOnly: true für offene Karten, deren sichtbarer Blocker überfällig ist oder danach fällig ist; work.portfolio_summary meldet beide Anklagepunkte; abonnieren card.blocked und card.unblocked für Übergänge. Diese Ereignisse funktionieren unabhängig von konfigurierten Automatisierungen.
Beim Abschließen über MCP wird keine interaktive Warnung wegen blockierter Arbeit angezeigt. Lesen Sie zuerst die Zusammenhänge, bevor Sie entscheiden, ob die Arbeit fertig ist. Ein blockierter Agentenlauf (runs.update mit status: "blocked") beschreibt diesen Lauf und erstellt keine Kartenabhängigkeit. Siehe Kartenbeziehungen und Blockierung.
Abhängigkeitsdiagramme
cards.dependency_graph beantwortet, was eine Karte blockiert, was sie blockiert und welche Arbeit über ein Board oder einen Arbeitsbereich hinweg verbunden ist. Übergeben Sie genau eines davon cardId (Schlüssel, UUID oder kanonische URL), boardId, oder workspaceId:
{ "cardId": "MKT-42" }
Das Tool gibt erweitert zurück cards, edges, und truncated. Zu den Karten gehören Schlüssel, Titel, URL, Quellboard-/Listennamen, inScopesowie verfügbare Daten, Bezeichnungen und Beauftragte. openBlockerCount enthält aktive Blocker, die der Anrufer nicht sehen kann; offMapBlockerCount zählt aktive Blocker, die auf dieser Karte fehlen. Es werden nur vorhandene optionale Werte ungleich Null berücksichtigt. A blocks Kante läuft ab sourceCardId zu targetCardId.
Ein Kartenumfang kehrt ebenfalls zurück focus: blockedBy und blocks sind direkte Verbindungen; upstream und downstream sind transitive Karten-IDs in der Reihenfolge, in der sie am nächsten liegen; relatedTo listet kontextbezogene Links auf. onMap: false bedeutet, dass die angeforderte Karte ausgefüllt, archiviert, nicht verknüpft oder aus anderen Gründen nicht in der Grafik enthalten ist. Abwesenheit ist kein Beweis dafür, dass eine Karte keine Beziehungen hat.
Die Grafik verfolgt blockierende Links in beide Richtungen durch lesbare offene Karten. Abgeschlossene Voraussetzungen können angezeigt werden, die Durchquerung wird jedoch nicht fortgesetzt. Versteckte Karten werden ohne Namensnennung gezählt oder zur Überbrückung zu anderen Arbeiten verwendet. Verwandte Nachbarn werden einen Sprung von den offenen Samen des Zielfernrohrs entfernt. Die Reaktion stoppt bei 400 Karten und Sets truncated; Grenzen Sie den Spielraum für weitere Details ein. Dies ist ein Lesetool. Benutzen cards.set_relations um Links zu bearbeiten und Abhängigkeitsereignisse um Veränderungen zu überwachen.
Termine
Datumseingaben werden akzeptiert YYYY-MM-DD oder alltägliche Phrasen, aufgelöst in Ihrer eigenen Zeitzone aus Ihrem Kanera-Profil: today, tomorrow 1pm, friday (am nächsten Freitag, einschließlich heute), next friday (eine Woche danach), in 2 weeks, next month, end of week, end of month, oder oct 12. session.get gibt Ihr zurück timeZone und today So kann Ihnen ein Agent das Datum zeigen, an dem es geklappt hat. Kanera-Fälligkeitstermine verwenden Zeitfenster statt exakter Zeiten, daher wählt eine Zeit das passende Zeitfenster aus: bis 09:00 Uhr Morgen, bis 13:00 Uhr Nachmittag, bis 17:00 Uhr Ende des Arbeitstagesund alles, was später kommt, im ganztägigen Slot. Ein Satz, den Kanera nicht lesen kann, wird mit den akzeptierten Formen abgelehnt und nicht erraten.
Ergebnisreihenfolge
In der Beschreibung jedes Listentools wird die Reihenfolge angegeben, in der die Ergebnisse zurückgegeben werden, z. B. „Neueste zuerst“ für Kommentare und Aktivitäten, Anzeigereihenfolge für Listen und Checklisten und „Ältester zuerst“ für work.query_cards standardmäßig.
Zeitpläne und Starttermine
Benutzen work.schedule mit genau einem boardId oder workspaceId. Es liest die gleiche Arbeitstags-Engine wie die Zeitleistenansicht, verfolgt zugängliche verbundene Ketten flächendeckend und schließt abgeschlossene und unzugängliche Karten aus. Anzeigefilter verändern die Berechnung nicht.
| Ergebnis | Bedeutung |
|---|---|
cards[].plannedStart, plannedEnd, durationDays | Der geplante Datumsbereich und seine einschließliche Dauer von Montag bis Freitag. |
earliestStart, earliestFinish, latestStart, latestFinish | Durch Abhängigkeiten eingeschränkte Daten und die neuesten Daten, die das Ende der Kette bewahren. |
slackDays, critical | Spielraum für Arbeitstage und ob es bei vernetzter Arbeit keine Lücken gibt. Null Slack bedeutet, dass die Berechnung keinen Datumsanker hat. |
conflicts[] | Widersprüchliche offene Blocker mit blockerId, edgeId, kind, und Arbeitstag days. |
criticalEdgeIds | Beziehungen auf dem planungskritischen Pfad. |
summary | Geplant/ungeplant, Konflikt- und kritische Zählungen, Datumsbereich, projectedFinish, latestDue, und Arbeitstag slipDays gegenüber dem spätesten Fälligkeitsdatum. |
Pass startDateLocalDate zu cards.create, cards.update drinnen changes, oder jeder Eintrag von cards.bulk_create. Benutzen YYYY-MM-DD oder eine unterstützte relative Datumsphrase, die in der Zone des Benutzers aufgelöst wird; null löscht einen vorhandenen Start. Ein Start hat kein Zeitfenster und kann nicht später erfolgen. Für diese Schreibvorgänge ist Bearbeitungszugriff erforderlich und die Nachfolgedaten werden nicht automatisch verschoben.
Es gibt keine hypothetische Zeitplaneingabe: Schlagen Sie eine Änderung gegenüber dem aktuellen Zeitplan vor, wenden Sie sie dann an und lesen Sie sie nur dann erneut, wenn eine gespeicherte Änderung beabsichtigt ist. Siehe Ausgearbeitete Planungsbeispiele und Planen Sie Ereignisnutzlasten. Deaktivierte Planungsfunktionen kehren zurück TIMELINE_DISABLED oder DEPENDENCIES_DISABLED für Operationen, die sie erfordern.
Veranstaltungsabonnements
Ein Client kann das aktuelle MCP-Protokoll abonnieren card.created, card.updated, card.moved, und comment.created in einem Arbeitsbereich, einer Tafel oder einer Karte, um priorities.changed für die Up-Next-Warteschlange des verbundenen Benutzers und bis my_day.ready für einen Briefing-Ping an Wochentagen morgens und empfangen Sie jedes Vorkommnis mit einem verifizierten HTTPS-Rückruf, den es kontrolliert. Abonnements gehören zur Verbindung, dauern bis zu 24 Stunden pro Aktualisierung und werden vor jeder Zustellung erneut mit dem aktuellen Zugriff der Identität abgeglichen. Siehe Abonnieren Sie Veranstaltungen für Katalog, Verifizierung, Signierung, Wiederholungsversuche und Fehlercodes.
Integrierte Eingabeaufforderungen
| Prompt | Benutzen |
|---|---|
summarize_board_status | Untersuchen Sie ein Board und fassen Sie den Fortschritt, Blockaden, veraltete Arbeiten und die nächsten Aktionen zusammen. |
prepare_standup_update | Kombinieren Sie persönliche aktuelle Arbeiten und paginierten Arbeitsverlauf auf zugänglichen Boards, um einen Standup zu entwerfen. |
draft_card_from_notes | Lesen Sie eine Notiz und entwerfen Sie einen Kartentitel und eine Markdown-Beschreibung, ohne die Karte zu erstellen. |
Normale Konversationsaufforderungen funktionieren auch dann, wenn ein AI-Client keine MCP-Eingabeaufforderungsvorlagen bereitstellt.
Sicherheit und zerstörerische Operationen
- Interaktives und Gerätecode-OAuth wird immer gewährt
kanera:readundkanera:write;offline_accessbleibt optional. Der MCP-Client kontrolliert die Werkzeugverfügbarkeit und -genehmigungen und Kanera setzt die Vorstandsrollen durch. Admin-Tools funktionieren nur, wenn der Benutzer die entsprechende Admin-Rolle innehat: Organisationsadministratoren können Arbeitsbereiche und eigenständige Boards erstellen, und Workspace-Administratoren können Boards hinzufügen und Automatisierungen verwalten. - Jeder OAuth-Flow bindet seine Autorisierung, seinen Code, seine Aktualisierungsfamilie und sein Zugriffstoken an den kanonischen MCP
resource. - Roh
kanera_mcp_...Zugriffstoken werden nur vom MCP-Endpunkt akzeptiert und von abgelehnt/api/v1; Der MCP-Dienst verwendet für öffentliche API-Aufrufe separate, kurzlebige interne Delegationsanmeldeinformationen. - Für die Geräteautorisierung gelten dieselben Bereiche und dieselben Grenzwerte. Ein Gerätecode läuft nach zehn Minuten ab, kann einmal ausgetauscht werden und wird nur von einem angemeldeten Benutzer genehmigt, der den vom Kunden angezeigten Code bestätigt.
- Unbeaufsichtigte Agenten und Arbeitsbereichsschlüssel sind auf ihren konfigurierten Bereich begrenzt.
- Persönliche Schlüssel erben die aktuellen Berechtigungen ihres Besitzers und sollten wie das Benutzerkonto geschützt werden.
- API-Schlüssel mit Lesebereich und unbeaufsichtigte Dienstanmeldeinformationen können keine geschützten Mutationen aufrufen.
- API-Schlüssel- und MCP-Aktivitäten werden mit der entsprechenden Benutzer- oder Integrationsidentität aufgezeichnet. Ein interaktiver OAuth-Agent wird als der Agent aufgezeichnet, der für seinen Benutzer handelt: Kommentare und Aktivitätszeilen tragen den Namen des Agenten und werden als dargestellt
via <agent>, und der Benutzer wird darüber informiert, was sein Agent getan hat, anstatt dass es als seine eigene Aktion unterdrückt wird. Ein persönlicher API-Schlüssel, der von einem Skript verwendet wird, fungiert weiterhin als dessen Besitzer. - Durch das Trennen der OAuth-Verbindung oder das Löschen eines unbeaufsichtigten Agenten werden dessen aktive Anmeldeinformationen widerrufen.
- Verwenden Sie pro Client separate Anmeldeinformationen, damit eine Verbindung widerrufen werden kann, ohne dass dies Auswirkungen auf eine andere hat.
Kanera MCP kann Folgendes nicht löschen:
- Boards
- Listen
- Beschriftungen oder benutzerdefinierte Felder
- Notizen
- Beachten Sie Anhänge
Löschen Sie diese manuell in Kanera. MCP kann Karten archivieren oder dearchivieren und die aktiven Karten in einer Liste archivieren.
Die Verwaltung über MCP beschränkt sich auf das Erstellen von Arbeitsbereichen und eigenständigen Boards (Organisationsadministratoren unter Verwendung einer interaktiven OAuth-Bewilligung oder eines schreibfähigen persönlichen Schlüssels), das Hinzufügen von Boards zu einem Arbeitsbereich sowie das Erstellen, Bearbeiten, Aktivieren und Löschen von Automatisierungen (Arbeitsbereichsadministratoren). MCP kann Arbeitsbereiche, Boards, Listen, Beschriftungen, Felder, Optionen, Mitglieder oder Aufbewahrungseinstellungen nicht bearbeiten, neu anordnen oder löschen. Diese Vorgänge bleiben in der Kanera-Schnittstelle; Unterstützte REST-Endpunkte bleiben für bewusst erstellte Integrationen verfügbar.
MCP kann Folgendes dauerhaft löschen:
- Ein vom handelnden Benutzer verfasster Kommentar
- Eine Checkliste und ihre Elemente
- Ein Checklistenpunkt
Diese Werkzeugschemata sind als destruktiv gekennzeichnet. Verwenden Sie sie nur nach ausdrücklicher Anfrage und überprüfen Sie das Ziel, bevor Sie sie aufrufen.
Fehlerbehebung
| Problem | Was zu überprüfen ist |
|---|---|
| Der Client kann keine Verbindung herstellen | Verwenden Sie das genaue /mcp URL für die Kanera, zu der Sie eine Verbindung herstellen, wie unten gezeigt Profileinstellungen -> API-Schlüssel. |
| Der Kunde bittet um einen Token, anstatt Kanera zu öffnen | Es unterstützt kein Remote-MCP-OAuth. Verwenden Sie einen API-Schlüssel oder einen unterstützten Client. |
| Der Client verfügt über keinen Browser, zu dem er umleiten kann | Benutzen Geräteautorisierung wenn der Client dies unterstützt, oder einen API-Schlüssel, wenn dies nicht der Fall ist. |
Die Umfragen kehren immer wieder zurück slow_down | Umfrage nicht schneller als die interval mit dem Gerätecode zurückgegeben und jeweils das längere Intervall übernehmen slow_down. |
| Auf der Geräteseite wird ein ungültiger oder abgelaufener Code gemeldet | Codes dauern zehn Minuten und funktionieren einmal. Überprüfen Sie den Code, melden Sie sich zuerst an und fordern Sie dann einen neuen Code vom Kunden an. |
Der Token-Endpunkt kehrt zurück invalid_target | Senden Sie die genaue MCP-Adresse von Profileinstellungen -> API-Schlüssel als resource bei der Autorisierung und jedem Token-Austausch. |
| Der API-Schlüssel wird als fehlend gemeldet | Set KANERA_API_KEY für stdio oder senden Authorization: Bearer ... über HTTP. |
Eine Anfrage wird zurückgegeben 401 | Der Berechtigungsnachweis fehlt, ist fehlerhaft, abgelaufen, widerrufen oder wurde falsch kopiert. Starten Sie OAuth neu oder ersetzen Sie den API-Schlüssel. |
Eine Anfrage wird zurückgegeben 403 | Bestätigen Sie für persönliches OAuth, dass der handelnde Benutzer ein Redakteur und kein Beobachter auf dem Zielboard ist. Bestätigen Sie für einen API-Schlüssel oder einen unbeaufsichtigten Agenten außerdem, dass die Anmeldeinformationen schreibfähig sind. |
| Der Agent kann lesen, aber nicht bearbeiten | Erlauben Sie die Schreibaktion im MCP-Client und bestätigen Sie, dass die amtierende Identität Zugriff auf den Board-Editor hat. Verwenden Sie für Dienstverbindungen und API-Schlüssel auch einen schreibfähigen Berechtigungsnachweis. Bestehende persönliche OAuth-Verbindungen müssen nicht erneut verbunden werden. |
| Der Agent kann kein Board finden | Nutzen Sie die vollständige Board-Erkennung. Ein Board kann eigenständig sein oder nur über eine explizite Gastmitgliedschaft verfügbar sein. |
| Der Agent kann keinen Arbeitsbereich verwalten | MCP deckt nur die Erstellung von Arbeitsbereichen und Boards sowie die Verwaltung von Automatisierungen ab, und zwar nur dann, wenn die handelnde Identität ein Administrator ist; Arbeitsbereichsbezogene und schreibgeschützte Anmeldeinformationen können keine Arbeitsbereiche erstellen. Für andere Verwaltungszwecke verwenden Sie die Kanera-Schnittstelle oder einen unterstützten öffentlichen REST-Endpunkt. |
| Ein Coding-Agent verfügt über Tools, nutzt diese jedoch nur unzureichend | Installieren Sie den Beamten Kanera-Agentenfähigkeit. |
| Neue oder geänderte Werkzeuge werden nicht angezeigt | Aktualisieren Sie den MCP-Server im Client oder scannen Sie ihn erneut, damit er die aktuellen Schemata abruft. Starten Sie den Client neu, wenn er keine Aktualisierungsaktion hat; Eine erneute OAuth-Autorisierung ist normalerweise nicht erforderlich. |
| Der Client kann keine Ereignisse abonnieren | Veranstaltungen brauchen die Ausrichtung /mcp Endpunkt und ein Client im aktuellen MCP-Protokoll; ein stdio kanera mcp Der Server bietet sie nie an. Siehe Abonnieren Sie Veranstaltungen für Rückruf- und Bereichsfehler. |
