easyVerein in Claude, ChatGPT und jedem MCP-Client. Für Ihr ganzes Team.
Mitglieder, Adressen, Gruppen, Rechnungen, Buchungen, Termine, Inventar. Ein Token in Loopthink, ein Login pro Person, Rollen pro Tool und ein Audit-Eintrag für jeden Aufruf.
Kostenlos für 2 Connectors, ohne Karte · Pro 19 € · in der EU betrieben · 21 Lese-Tools, 3 Schreib-Tools standardmäßig aus
“Wie viele Mitglieder sind seit dem 1. Januar eingetreten, und wie viele sind im selben Zeitraum ausgetreten?”
Netto 29 Mitglieder mehr in diesem Jahr:
| Zeitraum | Eintritte | Austritte | Netto |
|---|---|---|---|
| Q1 2026 | 18 | 6 | +12 |
| Q2 2026 | 14 | 9 | +5 |
| Q3 2026 | 21 | 9 | +12 |
- nur lesend
- maskiert
Ein Token rein, die Tools kommen raus.


In easyVerein verwaltet ein Verein seine Mitglieder und sein Geld: Mitgliedsnummern und Eintrittsdaten, Abteilungen und Beitragsgruppen, Kontaktdaten, Beitragsrechnungen, Bank- und Kassenbuchungen, Veranstaltungen mit ihren Teilnehmern, Inventar und wer es ausgeliehen hat. Die Fragen sind einfach, „wie viele Mitglieder sind dieses Jahr eingetreten“, „welche Beitragsrechnungen sind noch offen“, „wer hat die zwei Zelte noch nicht zurückgebracht“, aber heute brauchen sie ein Login, das richtige Modul und einen Export, den nur die Kasse zu bauen weiß.
Mit dem easyVerein-Connector fragen Vorstand, Kasse und Büro in Claude oder ChatGPT und bekommen die Antwort aus den laufenden Vereinsdaten. Loopthink hält einen easyVerein-API-Token, jede Person meldet sich mit ihrer eigenen Identität an, und jeder Aufruf wird unter ihrem Namen protokolliert. Der Token erreicht den KI-Client nie.
Einundzwanzig Lese-Tools decken die Organisation, Mitglieder mit ihren Gruppenzuordnungen und benutzerdefinierten Feldern, Mitgliedergruppen, Kontaktdaten, Rechnungen und Rechnungspositionen, Buchungen und Abrechnungskonten, Veranstaltungen und Teilnahmen, Kalender, Inventar und Ausleihen sowie Aufgaben ab. Die drei Schreib-Tools, Kontaktdaten anlegen und aktualisieren sowie eine Veranstaltung anlegen, bleiben aus, bis Sie sie für eine Rolle einschalten.
- Vorstand
“Wie viele Mitglieder sind seit dem 1. Januar eingetreten, und wie viele sind im selben Zeitraum ausgetreten?”
Beantwortet von
list_members - Kasse
“Welche Beitragsrechnungen aus dem Frühjahrslauf haben noch eine offene Zahlungsdifferenz?”
Beantwortet von
list_invoices - Kasse
“Summiere die Buchungen auf dem Konto „Spenden“ für das letzte Quartal.”
Beantwortet von
list_bookings - Büro
“Wie viele Personen haben für das Sommerfest am 12. Juli zugesagt, und wie viele abgesagt?”
Beantwortet von
list_event_participations - Büro
“Welche Inventargegenstände sind gerade ausgeliehen und noch nicht zurückgegeben?”
Beantwortet von
list_lendings - Büro
“Lege die Veranstaltung „Jahreshauptversammlung“ am 14. März von 19:00 bis 21:00 Uhr im Vereinsheim-Kalender an.”
Beantwortet von
create_event
Was der easyVerein-Connector kann.
| Tool | Was es tut | Zugriff | Standard |
|---|---|---|---|
| get_organization | Returns the club (organization) behind the token with name, address, settings and enabled modules. Use to test the connection. | Lesen | An |
| list_members | Lists club members (membership data: membershipNumber, joinDate, resignationDate, paymentAmount, groups, contactDetails reference). Names and addresses live in contact details:… | Lesen | An |
| get_member | Returns one member by ID with membership data. | Lesen | An |
| list_member_group_assignments | Lists the group memberships of one member (memberGroup, start, end, paymentActive). Use to see which departments or fee groups a member belongs to. | Lesen | An |
| list_member_custom_fields | Lists the custom field values of one member (customField reference and value). Field definitions come from list_custom_fields. | Lesen | An |
| list_member_groups | Lists member groups (departments, teams, fee groups) with name, kind and paymentAmount. Paged: the response carries results and total; ask for page + 1 while page * limit < total. | Lesen | An |
| list_custom_fields | Lists the custom field definitions of the club (name, kind, settings_type) to interpret custom field values. Paged: the response carries results and total; ask for page + 1 whil… | Lesen | An |
| list_contact_details | Lists contact details (addresses): names, emails, phones, postal address, bank and payment data of members and non-member contacts. Use search for a name; member_isnull=true ret… | Lesen | An |
| get_contact_details | Returns one contact details record by ID (name, email, phone, address, payment data). | Lesen | An |
| list_invoices | Lists invoices (invNumber, date, totalPrice, receiver, kind, paymentDifference, isDraft). Open invoices have a paymentDifference other than 0. | Lesen | An |
| get_invoice | Returns one invoice by ID. | Lesen | An |
| list_invoice_items | Lists invoice line items (title, description, quantity, price, tax, billing account), optionally for one invoice. Paged: the response carries results and total; ask for page + 1… | Lesen | An |
| list_bookings | Lists bookings (bank and cash transactions: amount, date, receiver, description, billingAccount, related invoices). Filter by date range (YYYY-MM-DD) or billing account. | Lesen | An |
| list_billing_accounts | Lists billing accounts (Buchungskonten / chart of accounts: name, number, skr). Paged: the response carries results and total; ask for page + 1 while page * limit < total. | Lesen | An |
| list_events | Lists calendar events (name, start, end, location, calendar, canceled). Filter by start date range; datetimes as YYYY-MM-DDTHH:MM:SS or dates as YYYY-MM-DD. | Lesen | An |
| get_event | Returns one event by ID. | Lesen | An |
| list_event_participations | Lists the participations of one event (participationAddress, state, description). Use for attendance questions. | Lesen | An |
| list_calendars | Lists the club's calendars (name, short, color). Paged: the response carries results and total; ask for page + 1 while page * limit < total. | Lesen | An |
| list_inventory_objects | Lists inventory objects (equipment: name, identifier, location, availability for lending). Paged: the response carries results and total; ask for page + 1 while page * limit < t… | Lesen | An |
| list_lendings | Lists lendings of inventory objects (borrowingDate, returnDate, quantity, state, borrower). Filter by borrowing date (YYYY-MM-DD). | Lesen | An |
| list_tasks | Lists tasks (to-dos) with name, state, due date and assigned member. Filter by due date range (YYYY-MM-DD). | Lesen | An |
| create_contact_details | Creates a contact details record (address). For a person firstName and familyName are required, for a company (_isCompany true) companyName. | Schreiben | Aus |
| update_contact_details | Updates a contact details record (PATCH, only the fields sent change). Pass the fields as a JSON object with easyVerein field names, e.g. | Schreiben | Aus |
| create_event | Creates a calendar event. Pass a JSON object with easyVerein field names: name (required, max 500 chars), start and end (YYYY-MM-DDTHH:MM:SS), allDay, calendar (calendar ID from… | Schreiben | Aus |
Schreib-Tools sind für jede Rolle aus, bis Sie sie einschalten, ein Tool für eine Rolle. Die Namen und Beschreibungen sind das, was das Modell sieht, deshalb bleiben sie englisch; es bekommt außerdem die vollständige Parameterbeschreibung jedes Tools.
So kommen Sie an den easyVerein-Token.
Fünf Minuten, einmalig. Niemand in Ihrem Team sieht ihn je.
- 1
In easyVerein mit einem Konto anmelden, das Admin-Rechte (Vorstand) für die Daten hat, die Loopthink sehen soll.
- 2
Einstellungen > API öffnen (easyverein.com/app/settings/easyVereinApi/).
- 3
Einen Token anlegen. Nur Lesezugriff wählen, sofern keine Schreib-Tools eingeschaltet werden; Schreibzugriff ist für Anlege- und Aktualisierungs-Tools nötig.
- 4
Den Token kopieren und in Loopthink einfügen.
- 5
Eine Erinnerung setzen: Der Token läuft 30 Tage nach dem Anlegen ab. Vorher einen neuen Token anlegen und ihn in Loopthink ersetzen.
- 6
In Loopthink fügen Sie easyVerein aus dem Katalog hinzu und fügen den Token ein. Eine Minute später sieht Ihr Team die Tools.
Seit API v2.0 sind easyVerein-Tokens 30 Tage gültig. Ab Tag 15 signalisiert die API in jedem Antwort-Header tokenRefreshNeeded, und GET /refresh-token würde den Token rotieren und den alten sofort ungültig machen. Loopthink kann Tokens nicht erneuern, also schlägt nach 30 Tagen jeder Aufruf mit 401 fehl, bis ein neuer Token eingefügt ist. Jeder API-Aufruf gilt nach dem easyVerein-AV-Vertrag als Weisung des Vereins zur Datenverarbeitung. Rate-Limit: 100 Anfragen pro Minute.
Was wir in easyVerein zu maskieren empfehlen.
Die Mitgliederkartei eines Vereins besteht von oben bis unten aus personenbezogenen Daten: Namen, private und geschäftliche E-Mail und Telefon, Straße und Ort, Geburtsdatum, IBAN, BIC, Kontoinhaber und SEPA-Mandat, die Mitgliedsnummer, interne Notizen und die Gegen-IBAN auf Buchungen. Die vorgeschlagenen Felder maskieren all das, sodass eine Vorstandsrolle sehen kann, dass 28 Beitragsrechnungen über insgesamt 1.540 Euro offen sind oder dass 61 Personen für das Sommerfest zugesagt haben, ohne eine einzige Bankverbindung oder einen Geburtstag zu sehen. Die Rolle Kasse kann die Bankfelder unmaskiert bekommen, während der übrige Vorstand sie nicht sieht.
- firstName
- familyName
- name
- companyName
- privateEmail
- companyEmail
- emailOrUserName
- privatePhone
- companyPhone
- mobilePhone
- street
- zip
- city
- dateOfBirth
- iban
- bic
- bankAccountOwner
- sepaMandate
- internalNote
- membershipNumber
- receiver
- counterpartIban
- counterpartBic
- companyStreet
- companyCity
- companyZip
- addressSuffix
- nameAffix
- salutation
- companion_name
- companion_email
- blockReason
easyVerein und Loopthink
- Der Token läuft nach 30 Tagen ab. Was passiert dann?
- Seit API v2.0 sind easyVerein-Tokens 30 Tage gültig, und Loopthink kann sie nicht erneuern. Nach 30 Tagen schlägt jeder Aufruf mit 401 fehl, bis ein Admin unter Einstellungen > API einen neuen Token anlegt und ihn einmal in den Connector einfügt. Setzen Sie sich eine Erinnerung für Tag 25; sonst muss niemand im Team etwas tun.
- Welchen Zugriff sollte der Token haben?
- Wählen Sie nur Lesezugriff (read:all), es sei denn, Sie wollen create_contact_details, update_contact_details oder create_event einschalten; die brauchen write:all. Legen Sie den Token mit einem Konto an, das Vorstandsrechte für die Daten hat, die der Assistent sehen soll, idealerweise einem eigenen. Jeder API-Aufruf gilt nach dem easyVerein-AV-Vertrag als Weisung des Vereins zur Datenverarbeitung, und das Rate-Limit liegt bei 100 Anfragen pro Minute, was die seitenweise arbeitenden Tools deutlich unterschreiten.
- Warum zeigt list_members keine Namen?
- In easyVerein sind der Mitgliedsdatensatz und die Kontaktdaten getrennte Objekte. list_members liefert Mitgliedsdaten wie membershipNumber, joinDate und paymentAmount und verweist für den Namen auf die Kontaktdaten; das Tool kann firstName, familyName und privateEmail aus dem verknüpften Datensatz im selben Aufruf anfordern. Ob eine Rolle diese Felder sieht, entscheidet dann die Maskierung, die Sie festlegen.
- Braucht jedes Teammitglied einen eigenen easyVerein-Account?
- Nein. Loopthink hält einen Schlüssel oder Token für easyVerein. Ihre Leute melden sich mit ihrer eigenen Identität bei Loopthink an, und jeder Aufruf an easyVerein wird unter ihrem Namen protokolliert. Die Lizenzen in easyVerein bleiben, wie sie heute sind.
- Wo liegt der easyVerein-Schlüssel?
- In Loopthink, verschlüsselt, in der EU. Er erreicht weder den KI-Client noch die Personen, die den Connector nutzen. Rotieren Sie ihn in easyVerein, wann immer Sie wollen, und fügen Sie den neuen einmal ein.
- Kann jemand aus dem Chat heraus in easyVerein schreiben?
- Nur, wenn Sie es einschalten. Schreibaktionen sind eine eigene Zeile in der Rechtematrix und für jede Rolle standardmäßig aus. Braucht eine Rolle ein Schreib-Tool, geben Sie genau dieses eine Tool genau dieser Rolle frei.
- Was sieht das Modell?
- Das Ergebnis des Tool-Aufrufs, nach der Maskierung. Felder, die Sie als personenbezogen markieren, etwa E-Mail-Adressen, Namen oder Kartendaten, werden maskiert, bevor die Antwort zu den KI-Client reist. Das Modell bekommt die Zahlen, nicht die Menschen.
- Was kostet es?
- Kostenlos für eine Person und zwei Connectors, ohne Karte. Pro kostet 19 € im Monat für bis zu fünf Personen und jeden Connector auf dieser Seite, mit Rollen, feldgenauer Maskierung und 30 Tagen Audit-Log. Team kostet 49 € für zehn Personen und bringt Ihre eigenen REST-APIs und SQL-Datenbanken, Ihre eigene Domain und Ihren eigenen Identity Provider dazu. Kein Gespräch nötig.
Hängen Sie fest, oder fehlt ein Tool? Ein Mensch, der diesen Connector kennt, antwortet innerhalb eines Arbeitstags.