Ironbrain / MailCal / Installation

MailCal installieren

Kurze Anleitung für Ops und Bots: Tools von nuget.org, Config-Datei, Multi-Account und ein paar Smoke-Befehle. Keine Secrets auf dieser Seite—nur Platzhalter.

← Zurück zur Produktseite

Voraussetzung

Sie brauchen das .NET 10 SDK. Danach installieren Sie die globalen Tools von nuget.org—ohne PAT:

dotnet tool install -g Ironbrain.MailCal.Cli
dotnet tool install -g Ironbrain.MailCal.Mcp
ironbrain-mailcal --version

Befehle danach: ironbrain-mailcal (CLI) und ironbrain-mailcal-mcp (MCP über stdio).

  <div>
    <h2 class="text-2xl font-bold tracking-tight text-zinc-900 dark:text-white">CLI und MCP</h2>
    <p class="mt-3 text-zinc-600 dark:text-zinc-400">
      Beide nutzen dieselbe Config. Die CLI eignet sich für Skripte, Cron und Bots, die aus der Shell starten. Der MCP-Server ist für Cursor und andere Clients, die Tools im Chat anbieten. Fähigkeiten und Konten sind gleich—nur der Transport unterscheidet sich.
    </p>
  </div>

  <div>
    <h2 class="text-2xl font-bold tracking-tight text-zinc-900 dark:text-white">Config-Pfad</h2>
    <p class="mt-3 text-zinc-600 dark:text-zinc-400">
      Standard: <code class="rounded bg-zinc-200/80 dark:bg-zinc-800 px-1.5 py-0.5 text-sm">~/.config/ironbrain/mailcal.json</code>.
      Alternativ: Flag <code class="rounded bg-zinc-200/80 dark:bg-zinc-800 px-1.5 py-0.5 text-sm">--config</code> oder Umgebungsvariable <code class="rounded bg-zinc-200/80 dark:bg-zinc-800 px-1.5 py-0.5 text-sm">IRONBRAIN_MAILCAL_CONFIG</code>.
    </p>
  </div>

  <div>
    <h2 class="text-2xl font-bold tracking-tight text-zinc-900 dark:text-white">Multi-Account</h2>
    <p class="mt-3 text-zinc-600 dark:text-zinc-400">
      In der Config gibt es <code class="rounded bg-zinc-200/80 dark:bg-zinc-800 px-1.5 py-0.5 text-sm">defaultAccount</code> und eine Map <code class="rounded bg-zinc-200/80 dark:bg-zinc-800 px-1.5 py-0.5 text-sm">accounts</code>.
      Ein Konto wählen Sie mit <code class="rounded bg-zinc-200/80 dark:bg-zinc-800 px-1.5 py-0.5 text-sm">--account</code> / <code class="rounded bg-zinc-200/80 dark:bg-zinc-800 px-1.5 py-0.5 text-sm">-a</code> oder über <code class="rounded bg-zinc-200/80 dark:bg-zinc-800 px-1.5 py-0.5 text-sm">IRONBRAIN_MAILCAL_ACCOUNT</code>.
    </p>
  </div>

  <div>
    <h2 class="text-2xl font-bold tracking-tight text-zinc-900 dark:text-white">SMTP-Send-Gate</h2>
    <p class="mt-3 text-zinc-600 dark:text-zinc-400">
      Für persönliche oder nur-lesende Konten setzen Sie <code class="rounded bg-zinc-200/80 dark:bg-zinc-800 px-1.5 py-0.5 text-sm">Email.Smtp.Enabled</code> auf <code class="rounded bg-zinc-200/80 dark:bg-zinc-800 px-1.5 py-0.5 text-sm">false</code>. Dann können Bots über dieses Konto nicht versenden.
    </p>
  </div>
</div>

Beispiel-Config (Platzhalter)

Form nur als Orientierung—Passwörter und Hostnamen durch Ihre Werte ersetzen. Keine echten Zugangsdaten hier ablegen.

{
  "defaultAccount": "personal",
  "accounts": {
    "personal": {
      "Email": {
        "Imap": {
          "Host": "mail.example.com",
          "Port": 993,
          "UseSsl": true,
          "Username": "you@example.com",
          "Password": "YOUR_IMAP_PASSWORD"
        },
        "Smtp": {
          "Enabled": false,
          "Host": "mail.example.com",
          "Port": 587,
          "Username": "you@example.com",
          "Password": "YOUR_SMTP_PASSWORD"
        }
      },
      "Calendar": {
        "SourceUrl": "https://caldav.example.com/dav/calendars/user/you/",
        "Username": "you@example.com",
        "Password": "YOUR_CALDAV_PASSWORD"
      }
    },
    "bot": {
      "Email": {
        "Imap": {
          "Host": "mail.example.com",
          "Port": 993,
          "UseSsl": true,
          "Username": "bot@example.com",
          "Password": "YOUR_BOT_IMAP_PASSWORD"
        },
        "Smtp": {
          "Enabled": true,
          "Host": "mail.example.com",
          "Port": 587,
          "Username": "bot@example.com",
          "Password": "YOUR_BOT_SMTP_PASSWORD"
        }
      },
      "Calendar": {
        "SourceUrl": "https://caldav.example.com/dav/calendars/user/bot/",
        "Username": "bot@example.com",
        "Password": "YOUR_BOT_CALDAV_PASSWORD"
      }
    }
  }
}

Smoke-Test

Nach der Config prüfen, ob Konten und Protokolle erreichbar sind:

ironbrain-mailcal account list
ironbrain-mailcal --account personal mail list --limit 5
ironbrain-mailcal --account <cal-account> cal calendars --include-shared

Zurück zu MailCal