Skip to content
Go to app

Connect n8n

With n8n you build workflows where an AI agent reads your calendars and creates events — across all connected providers at once: Google, Outlook, iCloud, GMX, WEB.DE and more. No single Google Calendar or Outlook node can do that.

The address (MCP server URL) you will enter below is:

https://app.kalender-sync.de/mcp

1. Create the access and key in Kalender Sync

Section titled “1. Create the access and key in Kalender Sync”

In the app, open AI assistant → Connect the assistant and pick n8n. As with every access, you pick the calendars one by one and set the detail level per calendar — calendars you don’t share do not exist for n8n.

Create key gives you your access key (a token starting with ksa_). It is shown only once — copy it straight into the n8n credential (step 2). Treat it like a password: whoever holds the key holds exactly the access you gave this connection.

n8n can generate the workflow from a description. This template works:

Build a workflow with a Chat Trigger connected to an AI Agent.
The AI Agent should use an MCP Client Tool node with these settings:
- Endpoint URL: https://app.kalender-sync.de/mcp
- Server Transport: HTTP Streamable
- Authentication: Header Auth (I will fill in the credential myself)
- Include all available tools
Set the AI Agent's system message to:
"You are a calendar assistant with access to the user's calendars via
Kalender Sync MCP tools. Use list_calendars first to see which calendars
are available and their visibility levels. When asked about availability,
use get_availability. Always mention any warnings the tools return, and
say what your answer does NOT cover."
Use gpt-4.1-mini as the chat model.

The builder cannot create credentials — you enter the token by hand afterwards (next section, item 3).

  1. Add a Chat Trigger (or any other trigger — see the workflow ideas below).
  2. Add an AI Agent node behind it. As the chat model we recommend gpt-4.1-mini or a comparable non-reasoning model (see Troubleshooting for why).
  3. Attach an MCP Client Tool node under the agent’s Tool slot:
    • Endpoint URL: https://app.kalender-sync.de/mcp
    • Server Transport: HTTP Streamable
    • Authentication: Header Auth → create a new credential:
      • Name: Authorization
      • Value: Bearer ksa_… (your token from step 1 — the word Bearer, one space, then the token)
    • Tools to include: All
  4. Give the agent a system message — the one from the builder prompt above works verbatim.

Once everything is wired up, the MCP client node lists the available tools — list_calendars, get_availability, search_events and (with write access enabled) create_event, update_event, delete_event. Technical details for each tool: tool reference.

Open the chat and ask:

  • “Which calendars do you see, and with which visibility?” — the agent should name exactly the calendars you shared in step 1, including their detail levels.
  • “Am I free next Tuesday between 9 and 12?” — availability across all shared calendars.
  • “Create ‘test event via n8n’ tomorrow at 10 in [calendar name]” (Basic and up, calendar with write access) — then: “Delete it again.”

Every call shows up in the access log on the AI assistant page — you can watch live which tool was called when.

Availability bot for Slack or Telegram. Slack/Telegram trigger → AI agent with Kalender Sync tools → reply in the channel. Colleagues (or you, from your phone) ask for free slots in plain language — the agent checks Google, Outlook and GMX in one call.

Event from a form. n8n form or webhook trigger (say, a booking request from your website) → the agent extracts date, time and topic → create_event in your work calendar. The agent only manages events it created itself — it can never touch your existing events.

Morning briefing. Schedule trigger (weekdays at 7) → the agent summarises your day with search_events and get_availability → email or Slack: “4 events today, biggest gap 1–3 pm.”

Conflict watchdog. Hourly schedule trigger → the agent checks get_availability for double bookings between work and personal calendars → messages you only when something overlaps.

  • 401 / “Unauthorized”: token mistyped, expired or revoked. Check the credential: header name exactly Authorization, value exactly Bearer ksa_… (with the space). If in doubt, create a fresh token in the app.
  • Only SSE offered as transport: your n8n is older than 1.112. We only support HTTP Streamable — please update.
  • A calendar is missing from the list: it isn’t shared with this access — add it in the app under AI assistant → Edit sharing. Changes apply immediately, no new token needed.
  • create_event fails: write access is available on every plan and has to be enabled per calendar.

The same rules as for every assistant access apply to n8n: you decide per calendar what is visible, every query is logged (never the content of your events), and revoking in Kalender Sync kills the token instantly — regardless of what is stored in n8n. Keep the token exclusively in n8n credentials, never in node parameters or expressions, so it cannot leak into execution logs.