{"title":"Troubleshooting-FAQ","slug":"troubleshooting","category":"faq","summary":"Lösungen für häufige Synapse-Probleme — Auth, Netzwerk, Daten, Deployment.","audience":["human","llm"],"tags":["faq","troubleshooting","problems","solutions"],"difficulty":"beginner","updated":"2026-06-27","word_count":582,"read_minutes":3,"lang":"de","translated":true,"requested_lang":"de","content_markdown":"\n# Troubleshooting-FAQ\n\nLösungen für häufige Synapse-Probleme.\n\n## Ich kann mich nicht einloggen\n\n### Symptome\n\n- `POST /login` liefert 401\n- „Invalid email or password\"\n\n### Lösungen\n\n1. **E-Mail verifizieren** — Case-sensitive\n2. **Passwort prüfen** — mindestens 6 Zeichen\n3. **Zuerst registrieren**, falls du kein Konto hast: `POST /register`\n4. **Passwort zurücksetzen** (falls SMTP konfiguriert) via Web-UI\n\n## Ich habe meinen Mind Key verloren\n\n### Symptome\n\n- Kann nicht auf Memories zugreifen\n- Mind Key wurde gelöscht/verloren\n\n### Lösungen\n\nMind Keys können nicht wiederhergestellt werden. Du musst:\n\n1. Einloggen, um JWT zu erhalten: `POST /login`\n2. Minds auflisten: `GET /minds` (mit JWT)\n3. Neuen Mind anlegen: `POST /minds`\n4. Neuen Mind Key speichern\n5. (Optional) Alten Mind löschen: `DELETE /minds/:id`\n\n**Daten im alten Mind sind verloren**, außer du findest den Mind Key.\n\n## API-Aufrufe liefern 401\n\n### Symptome\n\n- Alle API-Aufrufe liefern 401 Unauthorized\n- „Mind Key fehlt oder ungültig\"\n\n### Lösungen\n\n1. **Header-Format verifizieren**: `Authorization: Bearer mk_...`\n2. **Prüfen, dass Mind Key mit `mk_` beginnt** (nicht `eyJ`, das ist JWT)\n3. **Direkt testen**:\n   ```bash\n   curl -H \"Authorization: Bearer mk_YOUR_KEY\" \\\n        https://synapse.schaefer.zone/memory/recall\n   ```\n4. **Mind Key könnte widerrufen sein** — neuen Mind anlegen\n\nSiehe [Authentifizierung](/docs/getting-started/authentication).\n\n## API-Aufrufe liefern 404\n\n### Symptome\n\n- 404 Not Found\n- „Route not found\"\n\n### Lösungen\n\n> [!CRITICAL]\n> Rate keine Endpunkt-Pfade. Nur Pfade in `GET /endpoints` existieren.\n\n1. **Gültige Endpunkte prüfen**: `curl https://synapse.schaefer.zone/endpoints`\n2. **URL exakt vergleichen** — Case-sensitive, keine Trailing-Slashes\n3. **HTTP-Methode prüfen** — `GET /memory` vs `POST /memory` sind unterschiedlich\n\n## API-Aufrufe liefern 429\n\n### Symptome\n\n- 429 Too Many Requests\n- „Rate limit exceeded\"\n\n### Lösungen\n\n1. **Auf Header-Auth wechseln** (kein Rate Limit):\n   ```bash\n   # Don't\n   curl \".../memory/recall?key=mk_...\"\n   \n   # Do\n   curl -H \"Authorization: Bearer mk_...\" .../memory/recall\n   ```\n2. **`Retry-After` Sekunden warten**, falls du `?key=` verwenden musst\n\nSiehe [Rate Limits](/docs/api/rate-limits).\n\n## Memory-Suche liefert keine Ergebnisse\n\n### Symptome\n\n- `GET /memory/search?q=...` liefert leer\n- weiß, dass Memories existieren\n\n### Lösungen\n\n1. **Verifizieren, dass Memories existieren**: `GET /memory/recall`\n2. **Such-Syntax prüfen** — FTS5 hat spezifische Syntax\n3. **Einfachere Query versuchen** — `?q=docker` statt `?q=docker+swarm+deployment`\n4. **Semantische Suche** für konzeptionelle Queries: `GET /memory/semantic-search?q=...`\n\nSiehe [FTS5-Suche](/docs/concepts/fts5-search).\n\n## Memories werden nicht persistiert\n\n### Symptome\n\n- POST /memory liefert Success\n- GET /memory/recall zeigt sie nicht\n\n### Lösungen\n\n1. **Selben Mind Key verifizieren** — verschiedene Keys = verschiedene Minds\n2. **Response prüfen** — POST liefert `{ \"id\": \"mem_...\", \"status\": \"stored\" }`\n3. **GET /memory versuchen** (JSON-Liste) statt /memory/recall (Text)\n4. **Filter prüfen** — `?category=` oder `?tag=` könnten sie verbergen\n\n## Tools erscheinen nicht in Claude Desktop\n\n### Symptome\n\n- Claude Desktop zeigt 0 Tools\n- Kein 🔌-Icon\n\n### Lösungen\n\n1. **Claude Desktop vollständig neu starten** (Cmd+Q)\n2. **Config-Datei prüfen** — valides JSON\n3. **Node.js 18+** installiert prüfen\n4. **MCP manuell ausführen**: `npx -y synapse-mcp-api@latest`\n5. **Logs prüfen**: `~/Library/Logs/Claude/mcp.log`\n\nSiehe [MCP-Troubleshooting](/docs/mcp/troubleshooting).\n\n## Synapse ist offline\n\n### Symptome\n\n- synapse.schaefer.zone nicht erreichbar\n- curl läuft in Timeout\n\n### Lösungen\n\n1. **Internet prüfen** — andere Seite versuchen\n2. **Synapse-Health prüfen**: `curl https://synapse.schaefer.zone/health`\n3. **Warten** — könnte temporärer Ausfall oder Deployment sein\n4. **Status-Seite prüfen** (falls verfügbar)\n\nFür Self-Hosted: Docker-Container-Status und Datenbankverbindung prüfen.\n\n## Datenbankfehler\n\n### Symptome\n\n- 500 Internal Server Error\n- „Database connection failed\"\n\n### Lösungen\n\nFür Self-Hosted:\n\n1. **PostgreSQL läuft prüfen**: `docker ps | grep postgres`\n2. **DATABASE_URL** in Env prüfen\n3. **Migrationen prüfen**: `npm run migrate:check`\n4. **Speicherplatz prüfen**: `df -h`\n\nFür gehostet: an Support melden.\n\n## Webhook feuert nicht\n\n### Symptome\n\n- Webhook registriert, aber keine Callbacks erhalten\n- Kein POST an deine URL\n\n### Lösungen\n\n1. **URL erreichbar verifizieren**: `curl -X POST your-url -d '{}'`\n2. **Events-Filter prüfen** — `memory.*` matched alle Memory-Events\n3. **Webhook testen**: `POST /webhooks/:id/test`\n4. **Webhook aktiviert prüfen**: `GET /webhooks/:id`\n5. **SSL verifizieren** — Synapse erfordert gültiges HTTPS für Webhook-URLs\n\nSiehe [Webhooks-API](/docs/api/webhooks).\n\n## Cron-Job läuft nicht\n\n### Symptome\n\n- Cron-Job angelegt, aber er feuert nicht\n- `next_run` aktualisiert nicht\n\n### Lösungen\n\n1. **Schedule-Syntax prüfen** — muss gültiges 5-Feld-Cron ODER Integer-Sekunden sein\n2. **Endpunkt erlaubt verifizieren** — muss http(s) sein, keine privaten IPs\n3. **Job aktiviert prüfen**: `GET /cron`\n4. **Auf nächste geplante Zeit warten** — Cron ist nicht instant\n\nSiehe [Cron & Scheduler](/docs/api/cron).\n\n## Brauchst du weitere Hilfe?\n\n1. **Bestehende Doku prüfen**: <https://synapse.schaefer.zone/docs>\n2. **Doku durchsuchen**: `GET /docs/search?q=deine+frage`\n3. **Issue öffnen**: <https://gitlab.com/schaefer-services/synapse/-/issues>\n4. **Kontakt**: siehe `/support`-Seite\n\n## Nächste Schritte\n\n- [Errors & Fehlerbehandlung](/docs/api/errors)\n- [API-FAQ](/docs/faq/api-faq)\n- [MCP-Troubleshooting](/docs/mcp/troubleshooting)\n","content_html":"<h1>Troubleshooting-FAQ</h1>\n<p>Lösungen für häufige Synapse-Probleme.</p>\n<h2>Ich kann mich nicht einloggen</h2>\n<h3>Symptome</h3>\n<ul>\n<li><code>POST /login</code> liefert 401</li>\n<li>„Invalid email or password&quot;</li>\n</ul>\n<h3>Lösungen</h3>\n<ol>\n<li><strong>E-Mail verifizieren</strong> — Case-sensitive</li>\n<li><strong>Passwort prüfen</strong> — mindestens 6 Zeichen</li>\n<li><strong>Zuerst registrieren</strong>, falls du kein Konto hast: <code>POST /register</code></li>\n<li><strong>Passwort zurücksetzen</strong> (falls SMTP konfiguriert) via Web-UI</li>\n</ol>\n<h2>Ich habe meinen Mind Key verloren</h2>\n<h3>Symptome</h3>\n<ul>\n<li>Kann nicht auf Memories zugreifen</li>\n<li>Mind Key wurde gelöscht/verloren</li>\n</ul>\n<h3>Lösungen</h3>\n<p>Mind Keys können nicht wiederhergestellt werden. Du musst:</p>\n<ol>\n<li>Einloggen, um JWT zu erhalten: <code>POST /login</code></li>\n<li>Minds auflisten: <code>GET /minds</code> (mit JWT)</li>\n<li>Neuen Mind anlegen: <code>POST /minds</code></li>\n<li>Neuen Mind Key speichern</li>\n<li>(Optional) Alten Mind löschen: <code>DELETE /minds/:id</code></li>\n</ol>\n<p><strong>Daten im alten Mind sind verloren</strong>, außer du findest den Mind Key.</p>\n<h2>API-Aufrufe liefern 401</h2>\n<h3>Symptome</h3>\n<ul>\n<li>Alle API-Aufrufe liefern 401 Unauthorized</li>\n<li>„Mind Key fehlt oder ungültig&quot;</li>\n</ul>\n<h3>Lösungen</h3>\n<ol>\n<li><strong>Header-Format verifizieren</strong>: <code>Authorization: Bearer mk_...</code></li>\n<li><strong>Prüfen, dass Mind Key mit <code>mk_</code> beginnt</strong> (nicht <code>eyJ</code>, das ist JWT)</li>\n<li><strong>Direkt testen</strong>:<pre><code class=\"hljs language-bash\">curl -H <span class=\"hljs-string\">&quot;Authorization: Bearer mk_YOUR_KEY&quot;</span> \\\n     https://synapse.schaefer.zone/memory/recall</code></pre></li>\n<li><strong>Mind Key könnte widerrufen sein</strong> — neuen Mind anlegen</li>\n</ol>\n<p>Siehe <a href=\"/docs/getting-started/authentication\">Authentifizierung</a>.</p>\n<h2>API-Aufrufe liefern 404</h2>\n<h3>Symptome</h3>\n<ul>\n<li>404 Not Found</li>\n<li>„Route not found&quot;</li>\n</ul>\n<h3>Lösungen</h3>\n<div class=\"callout callout-critical\">Rate keine Endpunkt-Pfade. Nur Pfade in `GET /endpoints` existieren.</div><ol>\n<li><strong>Gültige Endpunkte prüfen</strong>: <code>curl https://synapse.schaefer.zone/endpoints</code></li>\n<li><strong>URL exakt vergleichen</strong> — Case-sensitive, keine Trailing-Slashes</li>\n<li><strong>HTTP-Methode prüfen</strong> — <code>GET /memory</code> vs <code>POST /memory</code> sind unterschiedlich</li>\n</ol>\n<h2>API-Aufrufe liefern 429</h2>\n<h3>Symptome</h3>\n<ul>\n<li>429 Too Many Requests</li>\n<li>„Rate limit exceeded&quot;</li>\n</ul>\n<h3>Lösungen</h3>\n<ol>\n<li><strong>Auf Header-Auth wechseln</strong> (kein Rate Limit):<pre><code class=\"hljs language-bash\"><span class=\"hljs-comment\"># Don&#x27;t</span>\ncurl <span class=\"hljs-string\">&quot;.../memory/recall?key=mk_...&quot;</span>\n\n<span class=\"hljs-comment\"># Do</span>\ncurl -H <span class=\"hljs-string\">&quot;Authorization: Bearer mk_...&quot;</span> .../memory/recall</code></pre></li>\n<li><strong><code>Retry-After</code> Sekunden warten</strong>, falls du <code>?key=</code> verwenden musst</li>\n</ol>\n<p>Siehe <a href=\"/docs/api/rate-limits\">Rate Limits</a>.</p>\n<h2>Memory-Suche liefert keine Ergebnisse</h2>\n<h3>Symptome</h3>\n<ul>\n<li><code>GET /memory/search?q=...</code> liefert leer</li>\n<li>weiß, dass Memories existieren</li>\n</ul>\n<h3>Lösungen</h3>\n<ol>\n<li><strong>Verifizieren, dass Memories existieren</strong>: <code>GET /memory/recall</code></li>\n<li><strong>Such-Syntax prüfen</strong> — FTS5 hat spezifische Syntax</li>\n<li><strong>Einfachere Query versuchen</strong> — <code>?q=docker</code> statt <code>?q=docker+swarm+deployment</code></li>\n<li><strong>Semantische Suche</strong> für konzeptionelle Queries: <code>GET /memory/semantic-search?q=...</code></li>\n</ol>\n<p>Siehe <a href=\"/docs/concepts/fts5-search\">FTS5-Suche</a>.</p>\n<h2>Memories werden nicht persistiert</h2>\n<h3>Symptome</h3>\n<ul>\n<li>POST /memory liefert Success</li>\n<li>GET /memory/recall zeigt sie nicht</li>\n</ul>\n<h3>Lösungen</h3>\n<ol>\n<li><strong>Selben Mind Key verifizieren</strong> — verschiedene Keys = verschiedene Minds</li>\n<li><strong>Response prüfen</strong> — POST liefert <code>{ &quot;id&quot;: &quot;mem_...&quot;, &quot;status&quot;: &quot;stored&quot; }</code></li>\n<li><strong>GET /memory versuchen</strong> (JSON-Liste) statt /memory/recall (Text)</li>\n<li><strong>Filter prüfen</strong> — <code>?category=</code> oder <code>?tag=</code> könnten sie verbergen</li>\n</ol>\n<h2>Tools erscheinen nicht in Claude Desktop</h2>\n<h3>Symptome</h3>\n<ul>\n<li>Claude Desktop zeigt 0 Tools</li>\n<li>Kein 🔌-Icon</li>\n</ul>\n<h3>Lösungen</h3>\n<ol>\n<li><strong>Claude Desktop vollständig neu starten</strong> (Cmd+Q)</li>\n<li><strong>Config-Datei prüfen</strong> — valides JSON</li>\n<li><strong>Node.js 18+</strong> installiert prüfen</li>\n<li><strong>MCP manuell ausführen</strong>: <code>npx -y synapse-mcp-api@latest</code></li>\n<li><strong>Logs prüfen</strong>: <code>~/Library/Logs/Claude/mcp.log</code></li>\n</ol>\n<p>Siehe <a href=\"/docs/mcp/troubleshooting\">MCP-Troubleshooting</a>.</p>\n<h2>Synapse ist offline</h2>\n<h3>Symptome</h3>\n<ul>\n<li>synapse.schaefer.zone nicht erreichbar</li>\n<li>curl läuft in Timeout</li>\n</ul>\n<h3>Lösungen</h3>\n<ol>\n<li><strong>Internet prüfen</strong> — andere Seite versuchen</li>\n<li><strong>Synapse-Health prüfen</strong>: <code>curl https://synapse.schaefer.zone/health</code></li>\n<li><strong>Warten</strong> — könnte temporärer Ausfall oder Deployment sein</li>\n<li><strong>Status-Seite prüfen</strong> (falls verfügbar)</li>\n</ol>\n<p>Für Self-Hosted: Docker-Container-Status und Datenbankverbindung prüfen.</p>\n<h2>Datenbankfehler</h2>\n<h3>Symptome</h3>\n<ul>\n<li>500 Internal Server Error</li>\n<li>„Database connection failed&quot;</li>\n</ul>\n<h3>Lösungen</h3>\n<p>Für Self-Hosted:</p>\n<ol>\n<li><strong>PostgreSQL läuft prüfen</strong>: <code>docker ps | grep postgres</code></li>\n<li><strong>DATABASE_URL</strong> in Env prüfen</li>\n<li><strong>Migrationen prüfen</strong>: <code>npm run migrate:check</code></li>\n<li><strong>Speicherplatz prüfen</strong>: <code>df -h</code></li>\n</ol>\n<p>Für gehostet: an Support melden.</p>\n<h2>Webhook feuert nicht</h2>\n<h3>Symptome</h3>\n<ul>\n<li>Webhook registriert, aber keine Callbacks erhalten</li>\n<li>Kein POST an deine URL</li>\n</ul>\n<h3>Lösungen</h3>\n<ol>\n<li><strong>URL erreichbar verifizieren</strong>: <code>curl -X POST your-url -d &#39;{}&#39;</code></li>\n<li><strong>Events-Filter prüfen</strong> — <code>memory.*</code> matched alle Memory-Events</li>\n<li><strong>Webhook testen</strong>: <code>POST /webhooks/:id/test</code></li>\n<li><strong>Webhook aktiviert prüfen</strong>: <code>GET /webhooks/:id</code></li>\n<li><strong>SSL verifizieren</strong> — Synapse erfordert gültiges HTTPS für Webhook-URLs</li>\n</ol>\n<p>Siehe <a href=\"/docs/api/webhooks\">Webhooks-API</a>.</p>\n<h2>Cron-Job läuft nicht</h2>\n<h3>Symptome</h3>\n<ul>\n<li>Cron-Job angelegt, aber er feuert nicht</li>\n<li><code>next_run</code> aktualisiert nicht</li>\n</ul>\n<h3>Lösungen</h3>\n<ol>\n<li><strong>Schedule-Syntax prüfen</strong> — muss gültiges 5-Feld-Cron ODER Integer-Sekunden sein</li>\n<li><strong>Endpunkt erlaubt verifizieren</strong> — muss http(s) sein, keine privaten IPs</li>\n<li><strong>Job aktiviert prüfen</strong>: <code>GET /cron</code></li>\n<li><strong>Auf nächste geplante Zeit warten</strong> — Cron ist nicht instant</li>\n</ol>\n<p>Siehe <a href=\"/docs/api/cron\">Cron &amp; Scheduler</a>.</p>\n<h2>Brauchst du weitere Hilfe?</h2>\n<ol>\n<li><strong>Bestehende Doku prüfen</strong>: <a href=\"https://synapse.schaefer.zone/docs\">https://synapse.schaefer.zone/docs</a></li>\n<li><strong>Doku durchsuchen</strong>: <code>GET /docs/search?q=deine+frage</code></li>\n<li><strong>Issue öffnen</strong>: <a href=\"https://gitlab.com/schaefer-services/synapse/-/issues\">https://gitlab.com/schaefer-services/synapse/-/issues</a></li>\n<li><strong>Kontakt</strong>: siehe <code>/support</code>-Seite</li>\n</ol>\n<h2>Nächste Schritte</h2>\n<ul>\n<li><a href=\"/docs/api/errors\">Errors &amp; Fehlerbehandlung</a></li>\n<li><a href=\"/docs/faq/api-faq\">API-FAQ</a></li>\n<li><a href=\"/docs/mcp/troubleshooting\">MCP-Troubleshooting</a></li>\n</ul>\n","urls":{"html":"/docs/faq/troubleshooting","text":"/docs/faq/troubleshooting?format=text","json":"/docs/faq/troubleshooting?format=json","llm":"/docs/faq/troubleshooting?format=llm"},"translations_available":["en","zh","hi","es","fr","ar","pt","ru","ja","de","it","ko","nl","pl","tr","sv","vi","th","id","uk"]}