Ein Model Context Protocol (MCP) Server, der Clio mit Claude verbindet — sodass Rechtsanwälte und Legal-Ops-Manager Claude fragen können, offene Matters aufzulisten, Zeiteinträge eines Falls abzurufen, einen Kontaktdatensatz zu laden oder eine Zusammenfassung der Abrechnungsaktivität zu erstellen, alles aus einer Claude-Konversation heraus, ohne die Clio-Oberfläche zu öffnen. Der Scaffold liegt unter apps/web/public/artifacts/mcp-server-clio-legal/ und ist bewusst auf Lesezugriff beschränkt: Clio-Matterdaten und Zeiteintragsnotizen sind mandantenvertrauliche Kommunikation und Arbeitsergebnisse, daher registriert der Server keine Schreiboperationen und protokolliert ausschließlich Metadaten (Tool-Name, Zeitstempel, Ergebnisanzahl — niemals Matter-Namen, Aktivitätsnotizen oder Kontaktkennungen).
Wann verwenden
Greifen Sie darauf zurück, wenn Ihr Rechtsteam oder Ihre Einzelkanzlei Clio nutzt und Sie sich täglich mehrfach durch die Clio-Oberfläche klicken, um dieselben Fragen zu beantworten: Wie viele offene Matters gibt es in einem bestimmten Rechtsgebiet, wie viele Stunden wurden in einem bestimmten Mandat diesen Monat abgerechnet, welche Matters hatten in den letzten 30 Tagen keine Aktivität, wie lauten die Kontaktdaten eines bestimmten Mandanten. Diese Fragen sind mechanischer Natur: Sie erfordern einen Filter, eine Suche und das Ablesen eines Werts aus einer Liste. Sie lassen sich gut in eine Claude-Tool-Konversation überführen.
Das Zeit-Argument: Ein Einzelanwalt, der täglich fünf solcher Abfragen durchführt — je drei Minuten in der Clio-Oberfläche (Browser-Tab öffnen, zu Matters navigieren, Filter setzen, Ergebnis lesen, Zahl in die Akte kopieren) — investiert rund 75 Minuten pro Woche in Navigation. Dieselben fünf Abfragen als Claude-Tool-Calls dauern zusammen unter zwei Minuten. Das sind etwa 60 Stunden pro Jahr, die für substanzielle juristische Arbeit zurückgewonnen werden. Bei einem Stundensatz von 300 USD beläuft sich der Opportunitätskosteneffekt auf rund 18.000 USD jährlich (Schätzung; Ihr tatsächlicher Stundensatz und Abfragevolumen bestimmen den realen Wert). Für Kanzleien, in denen mehrere Anwälte ähnliche Abfragen über einen größeren Matter-Bestand durchführen, skalieren die Zahlen entsprechend.
Für Legal-Ops-Manager, die wöchentliche Matter-Statusberichte, Soll-Ist-Vergleiche oder Produktivitätszusammenfassungen nach Rechtsgebiet erstellen, ermöglicht der Server, dass Claude die Rohdaten abruft und die Erzählung in einer einzigen Konversation erstellt — ohne Excel-Export als Zwischenschritt.
Wann NICHT verwenden
Verzichten Sie darauf, wenn das Matter-Abfragevolumen unter etwa zehn Abfragen pro Woche im gesamten Team liegt. Die Einrichtungskosten umfassen: Registrierung einer Entwickleranwendung in Clio, Durchführung des OAuth-Flows zum Erhalten eines Access Tokens, Installation einer Python-Umgebung und Überprüfung der Vertraulichkeitsimplikationen mit der für die Datensicherheitspolitik der Kanzlei verantwortlichen Person. Diese Einrichtungskosten amortisieren sich bei geringem Volumen nicht. Nutzen Sie die Clio-Oberfläche; kehren Sie zurück, wenn das Volumen wächst.
Verzichten Sie darauf, wenn Ihre Kanzlei noch keine schriftliche Richtlinie hat, die KI-Zugriff auf Mandantenmatterdaten regelt. Der MCP-Server leitet Clio-Daten durch das Kontextfenster von Claude, was bedeutet, dass Mandantennamen, Matter-Beschreibungen, Zeiteintragsnotizen und Kontaktdaten durch die Anthropic-API fließen. Prüfen Sie Anthropics Datenverarbeitungsbedingungen und holen Sie, wo dies Ihre Jurisdiktion erfordert, die Einwilligung der Mandanten für KI-gestützte Aktenbearbeitung ein, bevor Sie das System produktiv einsetzen.
Verzichten Sie darauf, wenn Sie Schreiboperationen benötigen — Zeiteinträge über Claude erstellen, Matter-Status aktualisieren, Kontakte hinzufügen oder Kommunikation protokollieren. Der Scaffold registriert bewusst keine Schreib-Tools. Das Hinzufügen von Schreibzugriff erfordert eine explizite Code-Änderung, eine Überprüfung des Privilegienmodells und eine Haftungsrisikoabwägung, die außerhalb des Rahmens dieses Scaffolds liegt. Konsultieren Sie Rechtsrat, bevor Sie einem KI-Assistenten Schreibzugriff auf Mandantenmatterdaten erteilen.
Einrichtung
Die vollständige Einrichtungsdokumentation befindet sich in apps/web/public/artifacts/mcp-server-clio-legal/README.md. Zusammenfassung:
- Klonen Sie das Bundle in ein privates Repository. Führen Sie
pip install -e .in einem Python-3.11+-Virtualenv aus. - Registrieren Sie eine Entwickleranwendung im Clio-Entwicklerportal unter
https://app.clio.com/settings/developer_applications. Gewähren Sie Lesezugriff auf Matters, Contacts und Activities. Kopieren Sie den App Key (CLIO_CLIENT_ID) und das App Secret (CLIO_CLIENT_SECRET). - Führen Sie den OAuth-Authorization-Code-Flow durch, um Access Token und Refresh Token zu erhalten (das README erklärt den
curl-Austausch Schritt für Schritt). - Setzen Sie die Umgebungsvariablen:
CLIO_ACCESS_TOKEN,CLIO_REGION(eines vonus,eu,ca,au— passend zur Clio-Login-URL) und optionalCLIO_CLIENT_ID,CLIO_CLIENT_SECRET,CLIO_REFRESH_TOKENfür die Refresh-Implementierung, die Sie vor dem Produktivbetrieb hinzufügen werden. - Registrieren Sie den Server in Claude Desktop über das JSON-Snippet im README, oder fügen Sie ihn zu Claude Code mit
claude mcp addhinzu. - Plausibilitätsprüfung: Bitten Sie Claude, die offenen Matters aufzulisten. Bestätigen Sie, dass die Antwort die Felder
display_numberundstatusenthält. Bestätigen Sie, dass das Audit-Log nurtool=list_matters ts=... results=Nzeigt — ohne Matter-Namen.
Das OAuth-Access-Token läuft nach etwa einer Stunde ab. Der Scaffold implementiert keine automatische Token-Erneuerung (TODO-Punkt 2 im README). Für den Produktivbetrieb implementieren Sie den Refresh-Flow, bevor Sie den Server an Anwälte verteilen.
Was der Server tut
Der Server registriert fünf Tools, alle mit Lesezugriff:
list_matters ruft GET /api/v4/matters.json mit einem fields-Parameter auf, der id, display_number, description, status, open_date, close_date, client, practice_area, responsible_attorney, originating_attorney und custom_field_values anfordert. Es wird Filterung nach status (open/closed/pending), client_id und einem Paginierungs-Cursor unterstützt. Die Clio-API gibt standardmäßig nur id und etag zurück, sofern Sie fields nicht explizit angeben; der fields-String in server.py ist der Mechanismus, der Antworten nützlich macht.
get_matter ruft GET /api/v4/matters/{id}.json mit demselben fields-Parameter auf. Verwenden Sie dieses Tool, wenn Sie eine Matter-ID aus list_matters haben und die vollständigen Metadaten einschließlich benutzerdefinierter Felder benötigen.
get_matter_time_entries ruft GET /api/v4/activities.json mit den Filtern type=TimeEntry und matter_id auf. Zeiteinträge in Clio sind ein Subtyp der Activities-Ressource; der type-Filter isoliert sie. Die Antwort enthält Datum, Menge (Stunden als Dezimalzahl), Einzelpreis, Abrechnungskennzeichen, Timekeeperbezeichnung und Aktivitätsbeschreibung. Datumsbegrenzer werden unterstützt. Zeiteintragsnotizen (Feld note) können privilegierte Arbeitsergebnisse enthalten; Anwälte, die dieses Tool nutzen, sollten die Claude-Konversation wie jeden anderen Kanal behandeln, über den privilegierte Inhalte übertragen werden.
get_matter_activity ruft ebenfalls GET /api/v4/activities.json auf, jedoch ohne die Einschränkung type=TimeEntry, und gibt Zeiteinträge, Kosteneinträge und Pauschaleinträge zusammen zurück. Der optionale type-Parameter erlaubt die Filterung auf eine einzelne Kategorie. Verwenden Sie dieses Tool, wenn Sie ein vollständiges Abrechnungsbild für ein Matter benötigen.
get_contact ruft GET /api/v4/contacts/{id}.json mit Feldern für Name, Typ, E-Mail-Adressen, Telefonnummern und Firmenzugehörigkeit auf. Kontaktdatensätze in Clio umfassen Mandanten, Gegenparteien, Sachverständige und andere Kanzleikontakte. Die Mandantenidentität unterliegt Verschwiegenheitspflichten; behandeln Sie die Ergebnisse dieses Tools entsprechend.
Die Dispatch-Logik befindet sich in apps/web/public/artifacts/mcp-server-clio-legal/src/clio_legal_mcp/server.py.
Kostenrealität
Drei Positionen:
Claude-Abonnement. Claude Desktop oder Claude Code mit aktiviertem MCP. Pro für 20 USD/Nutzer/Monat oder Team für 25–30 USD/Nutzer/Monat deckt die meisten Rechtsteam-Setups ab. Anwälte mit intensiver Nutzung können Max in Betracht ziehen.
Server-Hosting. Selbst gehosteter Python-Prozess. Für die Entwicklung lokal pro Anwalt betreiben; für den gemeinsamen Einsatz auf einer kleinen internen VM (1 vCPU / 1 GB RAM reicht für unter 100 Aufrufe/Tag) hinter Ihrem VPN. Ungefähr 5–20 USD/Monat bei einem Cloud-Anbieter; kostenlos, wenn bereits interne Serverkapazität vorhanden ist.
Clio-API-Kontingent. Clio erzwingt ein Limit von 3 Anfragen/Sekunde pro Anwendung. Ein Team mit 50 täglichen Clio-Abfragen über Claude bleibt bei normalen Nutzungsmustern deutlich innerhalb dieses Limits. Das Limit wird relevant, wenn Sie eine Automatisierung aufbauen, die die gesamte Matter-Liste in einer Schleife durchsucht.
Die nicht budgetierte Position ist der Zeitaufwand für die OAuth-Einrichtung und die Überprüfung der Vertraulichkeitsrichtlinie. Planen Sie 1–2 Stunden Entwicklerzeit für die Einrichtung und 1–2 Stunden Anwalts- oder Compliance-Zeit für die Überprüfung der Datenflussimplikationen vor dem Produktivbetrieb ein. Kanzleien in Jurisdiktionen mit strengen Datensouveränitätsregeln (DSGVO usw.) benötigen möglicherweise eine zusätzliche Prüfung, ob die Weiterleitung von Mandantenmatterdaten über einen in den USA ansässigen KI-Anbieter zulässig ist — konsultieren Sie dazu Rechtsrat.
Fehlerszenarien
Access-Token-Ablauf mitten in einer Sitzung. Clio-Access-Tokens laufen nach etwa einer Stunde ab. Wenn das Token abläuft, während ein Anwalt in einer Claude-Konversation ist, geben nachfolgende Tool-Aufrufe HTTP 401 zurück, was in Claude als Fehler oder als Antwort erscheint, die darauf hindeutet, dass Daten nicht verfügbar sind. Der Anwalt bemerkt möglicherweise nicht, dass das Token abgelaufen ist.
Guard: Implementieren Sie den OAuth-Refresh-Flow (TODO-Punkt 2 im README unter apps/web/public/artifacts/mcp-server-clio-legal/README.md), bevor Sie den Server über den einrichtenden Entwickler hinaus verteilen. Das Refresh-Token läuft nicht im gleichen Zeitplan wie das Access-Token ab; ein Refresh-Aufruf beim Serverstart stellt sicher, dass das Access-Token vor nutzerorientierten Tool-Aufrufen gültig ist.
Rate-Limit-Auslösung bei Burst-Abfragen. Ein Anwalt, der Claude bittet, alle offenen Matters zusammenzufassen und dann sofort die Zeiteinträge für jeden einzelnen abzufragen, generiert N+1 API-Aufrufe in schneller Folge. Bei einer Liste von 50 Matters sind das 51 sequenzielle Aufrufe; beim Clio-Limit von 3 Anfragen/Sekunde treten nach wenigen Sekunden 429-Fehler auf.
Guard: Fügen Sie Wiederholungsversuche mit exponentiellem Backoff zu clio_get() in server.py hinzu (TODO-Punkt 3 im README). Ein einfaches Muster: Bei 429 1 Sekunde warten, erneut versuchen; bei zweitem 429 2 Sekunden warten; Maximum 60 Sekunden; nach 5 Versuchen abbrechen.
Verletzung der mandantenrechtlichen Verschwiegenheit über das Claude-Kontextfenster. Wenn get_matter_time_entries oder get_matter_activity Ergebnisse zurückgibt, kann das Aktivitätsnotizfeld privilegierte Informationen enthalten: Strategiediskussionen, Entwurfsargumente, Vergleichsparameter, Mandantenanweisungen. Diese Notizen landen im Kontextfenster von Claude, das heißt, sie fließen durch die Anthropic-API und können in Claudes Antworttext erscheinen. Wenn der Anwalt seine Claude-Konversation teilt, kann er unbeabsichtigt privilegierte Inhalte einschließen, die aus Clio-Notizen stammen.
Guard: Besprechen Sie vor der Einführung mit den Anwälten, die diesen Server nutzen werden, die Gepflogenheiten bei Zeiteintragsnotizen. Überlegen Sie, ob die Kanzleikonvention allgemeine Notizen (Zeitcodes und kurze Beschreibungen) oder detaillierte Notizen (Strategiezusammenfassungen) vorsieht. Bei detaillierten Notizen: Entscheiden Sie, ob das Feld note aus TIME_ENTRY_FIELDS und ACTIVITY_FIELDS in server.py vor dem Rollout entfernt werden soll. Die Feld-Strings stehen am Anfang von server.py und sind einfach zu bearbeiten.
Falsche Region erzeugt 404s, die wie fehlende Daten aussehen. Wenn CLIO_REGION auf us gesetzt ist, das Clio-Konto der Kanzlei aber in der EU- oder CA-Region liegt, trifft jeder API-Aufruf die falsche Basis-URL und gibt 404 zurück. Claude interpretiert die leere Antwort als „keine Matters gefunden” statt als „falscher Endpoint”.
Guard: Überprüfen Sie Ihre Region vor dem Deployment, indem Sie die URL Ihres Clio-Logins kontrollieren. Setzen Sie CLIO_REGION entsprechend. Der Plausibilitätsprüfungsschritt im README erkennt dies: Wenn Sie wissen, dass offene Matters vorhanden sind, aber list_matters null Ergebnisse zurückgibt, ist die Region das Erste, was zu überprüfen ist.
Versus den Alternativen
Clio-native Berichte und KI-Funktionen. Clio enthält integrierte Berichte (Matter-Berichte, Zeitberichte, Abrechnungszusammenfassungen) und hat begonnen, KI-Funktionen in sein Produkt zu integrieren. Wählen Sie die nativen Berichte, wenn Ihre Abfragemuster durch Clios Berichtsvorlagen abgedeckt sind und die Antwort in Clio verbleibt. Wählen Sie diesen MCP-Server, wenn die Antwort in einer Claude-Konversation ankommen muss, die auch anderen Kontext einbezieht — etwa das Verfassen eines Mandantenupdate-E-Mails unter Verwendung der Zeiteintragszusammenfassung zusammen mit einer separaten Schriftsatz-Vorlage.
Manueller CSV-Export und Claude-Upload. Eine Alternative, die keine Server-Einrichtung erfordert: Matter-Bericht aus Clio als CSV exportieren, in Claude hochladen, Claude zur Analyse bitten. Dies funktioniert für einmalige Analysen und vermeidet OAuth- und Hosting-Aufwand vollständig. Wählen Sie diesen Ansatz, wenn die Abfragehäufigkeit gering ist (unter zehnmal pro Woche), wenn die Daten nicht aktuell sein müssen, oder wenn die IT-Richtlinie der Kanzlei lokale Serverprozesse untersagt. Wählen Sie den MCP-Server, wenn Abfragen häufig sind, aktuelle Daten erfordern oder in eine laufende Claude-Konversation eingebettet sein müssen, ohne den Upload einer Datei zu unterbrechen.
Stack
Selbst gehosteter Python-MCP-Server (offizielles mcp-SDK, httpx, pydantic) mit Kommunikation zur Clio-API v4 im Backend; Claude Desktop oder Code im Frontend. Optional: strukturiertes Logging über python-json-logger, geleitet in Ihren Matter-Management-Audit-Trail; Sentry- / OpenTelemetry-Export mit bereinigten Matter-Namen und Notizinhalten vor der Übertragung. Quelle in apps/web/public/artifacts/mcp-server-clio-legal/src/clio_legal_mcp/server.py.