Sally MCP mit OpenHands (OpenDevin)
OpenHands (ehemals OpenDevin) ist eine Open-Source-Plattform für autonome Software-Agents. Das Model Context Protocol (MCP) ist ein offener Standard, über den KI-Tools auf externe Datenquellen zugreifen können. OpenHands unterstützt MCP-Server sowohl in OpenHands Cloud als auch im Agent SDK nativ. Nach der Verbindung können Agents deine Sally-Meetings, Zusammenfassungen und Transkripte im Rahmen automatisierter Workflows abfragen, zum Beispiel um Kontext aus vergangenen Besprechungen zu sammeln, offene Aufgaben zusammenzustellen oder Transkriptdaten in nachgelagerte Aufgaben einzuspeisen.
Hintergrundinformationen zum Sally MCP Connector, den verfügbaren Tools und Best Practices zur Sicherheit findest du im Allgemeinen Setup-Guide.
- Ein OpenHands Cloud-Konto unter app.all-hands.dev oder das OpenHands SDK lokal installiert (
pip install openhands-ai). - Einen aktiven Sally-Account mit Zugriff auf mindestens ein Unternehmenskonto.
- Sally MCP aktiviert in deinem Unternehmenskonto (Admin-Einstellung).
Schnellnavigation
- Personal Access Token in Sally erstellen
- MCP-Verbindung in OpenHands einrichten
- Alternative: OpenHands SDK verwenden
- Troubleshooting
1. Personal Access Token in Sally erstellen
Ein Personal Access Token (PAT) ist der Schlüssel, mit dem sich der OpenHands-Agent am Sally MCP-Endpoint authentifiziert. Du erstellst ihn einmal.
- Melde dich in Sally an unter app.sally.io.
- Öffne unten links in der Sidebar die Einstellungen.
- Wähle in den Einstellungen den Punkt "Integrationen". Klicke unter "Deine persönlichen Integrationen" auf "+ Integration hinzufügen".
- Im Integrations-Dialog findest du den Eintrag "Sally MCP". Klicke dort auf "Token erstellen".
-
Fülle den Dialog "Neuen Sally MCP Token erstellen" aus:
- Bezeichnung: ein sprechender Name, an dem du den Token später erkennst (z. B. "OpenHands").
- Läuft ab: wähle eine Laufzeit: 30 Tage, 90 Tage, 1 Jahr, 2 Jahre oder Nie.
Klicke dann auf "Token erstellen".
- Sally zeigt dir den kompletten Token genau einmal an. Kopiere ihn sofort und lege ihn in einem Passwort-Manager oder einem sicheren Secret-Store ab. Sobald du den Dialog schließt, ist der Klartext-Wert weg. Du kannst ihn nicht noch einmal einsehen, sondern nur neu generieren.
Der Token gibt Lese-Zugriff auf alle Termine, Aufzeichnungen und Zusammenfassungen, die dein Sally-User in diesem Unternehmenskonto sieht. Teile ihn nicht in Slack, Mail oder Tickets. Lege ihn in einem Passwort-Manager ab.
- Klicke auf "Fertig".
Du kannst jederzeit unter Einstellungen → Integrationen → Sally MCP → "Tokens verwalten" zurückkehren, um Tokens neu zu generieren, zu widerrufen oder zusätzliche anzulegen. Beim Neugenerieren wird der alte Token sofort ungültig, tausche ihn also in jedem Client aus, der ihn noch verwendet.
2. MCP-Verbindung in OpenHands einrichten
- Klicke in OpenHands Cloud links unten auf das Profil-Symbol.
- Wähle im aufpoppenden Menü den Punkt MCP.
- Klicke oben rechts auf Add Server. Fülle im Konfigurationsformular die folgenden Felder aus.
- Wähle bei Server Type den Wert SHTTP.
Im Dropdown ist standardmäßig SSE vorausgewählt. Sally nutzt aber das modernere Streamable-HTTP-Protokoll, daher unbedingt auf SHTTP umstellen. Bei SSE schlägt die Verbindung fehl.
- Trage bei URL ein:
https://app.sally.io/api/v1/McpExternal - Füge bei API Key den kompletten Sally-Token ein, also
sally_pat_...mit Präfix. Schreibe keinBearerdavor. - Belasse Timeout (seconds) beim Default-Wert 60.
Sally-Anfragen sind normalerweise in 1-3 Sekunden durch, der Default ist also mehr als ausreichend. Bei sehr großen Abfragen (z. B. lange Transkripte mehrerer Meetings) kannst du den Wert nachträglich über das Stift-Symbol am Server-Eintrag erhöhen.
- Klicke auf Add Server.
OpenHands zeigt nach dem Speichern des Servers keine Erfolgsmeldung an. Der Eintrag erscheint einfach in der Server-Liste, das bestätigt nur, dass die Konfiguration gespeichert wurde, nicht dass die Verbindung tatsächlich funktioniert. Die Verbindung muss in einer echten Konversation geprüft werden:
- Kehre über das OpenHands-Logo oben links zur Startseite zurück.
- Klicke unter Start from Scratch auf New Conversation.
- Stelle eine echte Sally-Anfrage, zum Beispiel:
"Was wurde in meinem letzten Termin besprochen?"
Wenn der Agent die Sally-Tools (search_appointments, get_recordings, get_summary, search_summaries, get_transcription) aufruft und tatsächliche Meeting-Inhalte zurückliefert, ist die Anbindung erfolgreich.
Damit der Agent die Sally-Tools überhaupt aufrufen kann, muss unter Settings → Language Model (LLM) ein Modell konfiguriert sein. OpenHands Cloud bringt standardmäßig das Modell openhands/minimax-m2.5 mit, das sofort funktioniert. Stärkere Modelle (Claude, GPT) lassen sich über eigene API-Keys einbinden, sind für Sally-Anfragen aber nicht nötig.
3. Alternative: OpenHands SDK verwenden
Wenn du das OpenHands Agent SDK statt der Cloud-UI nutzt, kannst du die Sally MCP-Config programmatisch übergeben.
mcp_config = {
"mcpServers": {
"sally": {
"url": "https://app.sally.io/api/v1/McpExternal",
"headers": {
"Authorization": "Bearer sally_pat_HIER_DEINEN_TOKEN_EINSETZEN"
}
}
}
}
Ersetze HIER_DEINEN_TOKEN_EINSETZEN durch den Token aus Schritt 1.
Für Produktiv-Workflows empfiehlt es sich, den Token in einer Umgebungsvariable zu speichern, statt ihn fest einzutragen:
import os
sally_token = os.environ["SALLY_MCP_TOKEN"]
mcp_config = {
"mcpServers": {
"sally": {
"url": "https://app.sally.io/api/v1/McpExternal",
"headers": {
"Authorization": f"Bearer {sally_token}"
}
}
}
}
Variable vorher setzen: export SALLY_MCP_TOKEN=sally_pat_abc123...
Übergib die Config an den Agent und führe ihn aus:
from openhands.sdk import Agent, LLM
llm = LLM(model="anthropic/claude-sonnet-4-20250514")
agent = Agent(
llm=llm,
tools=[],
mcp_config=mcp_config,
)
result = agent.run(
"Suche meine Sally-Meetings der letzten 14 Tage zum Thema Produkt-Roadmap "
"und fasse die wichtigsten Entscheidungen zusammen."
)
print(result)
Der Agent ruft search_appointments oder search_summaries auf, um relevante Meetings zu finden, und nutzt dann get_summary oder get_transcription, um Details zu extrahieren.
4. Troubleshooting
| Problem | Lösung |
|---|---|
| Agent erwähnt nur seine internen Tools (Bash, Browser etc.), keine Sally-Tools | Server Type prüfen (muss SHTTP sein, nicht SSE). Token-Format prüfen: nur der nackte sally_pat_...-Wert, ohne Bearer-Präfix. |
| Agent ruft Sally-Tool auf, bekommt aber "401 Unauthorized" | Token in Sally widerrufen und neu erstellen, dann den Server-Eintrag in OpenHands über das Stift-Symbol bearbeiten und den neuen Token einsetzen. |
| Anfragen brechen mit Timeout ab | Server-Eintrag bearbeiten und Timeout-Wert von 60 auf 120 oder höher setzen. |
| Sally-Tools tauchen auf, werden aber nicht aufgerufen | Sprachmodell prüfen. Schwächere Modelle ignorieren manchmal verfügbare Tools. Auf ein stärkeres Modell wechseln. |
Weitere Tipps findest du im Allgemeinen Setup-Guide → Troubleshooting.








