Skip to main content
Glama

AWS DevOps Study KB

Eine selbst gehostete Memo-Wissensdatenbank zur Vorbereitung auf die AWS DevOps Engineer Professional Prüfung — du schreibst die Notizen nicht, dein KI-Agent tut das. Stelle Claude, OpenWebUI oder einem anderen Agenten eine Lernfrage („Was ist der Basis-Leistungsunterschied zwischen gp3 und io2, und wann würde ich welches wählen?"), und er speichert hier als Nebeneffekt der Antwort ein gut strukturiertes, getaggtes Memo — fundiert durch offizielle AWS-Dokumentation, falls er auch mit dem AWS Knowledge MCP server verbunden ist. Frag nächste Woche erneut, und der Agent findet das Memo, anstatt die Antwort neu abzuleiten.

Keine Ordner, keine manuelle Organisation — jedes Memo ist flach, getaggt und per Volltextsuche durchsuchbar. Die Weboberfläche ist bewusst schreibgeschützt: Agenten besitzen alle Schreibvorgänge.

you: "explain EBS volume types, baseline performance, and when to pick each"
agent: [searches this KB — nothing found] [answers, grounded in AWS docs] [saves a memo,
        tagged ebs, storage, exam:resilient-cloud-solutions]

 ...two weeks later...

you: "remind me about EBS gp3 vs io2"
agent: [searches this KB — finds the memo] "Yep, saved this one already — gp3 baseline is
        3,000 IOPS / 125 MiB/s regardless of size..."

So funktioniert es

Ein Node.js/TypeScript-Dienst stellt denselben Memo-Speicher auf drei Arten bereit, sodass er mit dem funktioniert, was dein KI-Client spricht:

  • MCP (/mcp, streamable-HTTP) — für Claude Code, Claude Desktop, OpenWebUI oder jeden anderen MCP-nativen Client. Werkzeuge: create_memo, search_memos, get_memo, list_tags, update_memo, delete_memo.

  • REST + OpenAPI (/api/v1/*, Spezifikation unter /openapi.json) — für Agent-Frameworks und Bots, die nur OpenAPI/REST-Tool-Aufrufe unterstützen (benutzerdefinierte GPT Actions, LibreChat, ein selbst gebauter Telegram-Bot usw.).

  • Web-UI (/) — eine schreibgeschützte Ansicht zum Durchsuchen/Suchen/Tag-Filtern für dich, geschützt durch eine einfache Cookie-Session-Anmeldung. Es gibt überhaupt keine Erstellungs-/Bearbeitungsformulare — das ist kein Versehen, sondern der Punkt.

Alle drei sind dünne Adapter über einem einzigen SQLite-gestützten Dienst (Suche ist FTS5-Volltext + Tag-Filterung), sodass nichts zwischen dem, was ein MCP-Client sieht, und dem, was ein REST-Client sieht, abweichen kann — siehe CLAUDE.md für die Architektur im Detail.

Related MCP server: XMemo

Schnellstart

git clone <this-repo-url>
cd aws-devops-study-kb
cp .env.example .env        # fill in API_BEARER_TOKEN and SESSION_COOKIE_SECRET (see below)
npm install
npm run dev                 # http://localhost:8000

Generiere echte Geheimnisse, anstatt die .env.example-Platzhalter zu belassen:

openssl rand -hex 32   # → API_BEARER_TOKEN
openssl rand -hex 32   # → SESSION_COOKIE_SECRET

Für eine dauerhafte, über das Internet erreichbare Bereitstellung (damit auch ein cloud-gehosteter Agent oder ein Telegram-Bot sie erreichen kann), siehe docs/deployment.md — Docker Compose + ein Cloudflare Tunnel, ohne eingehende Ports öffnen zu müssen.

Einen KI-Agenten verbinden

Jeder Verbraucher benötigt das Bearer-Token aus .env (API_BEARER_TOKEN) als Authorization: Bearer <token>. Wähle den Pfad, der zu deinem Client passt.

MCP-Clients (Claude Code, Claude Desktop, OpenWebUI, …)

Claude Code, gegen eine laufende Bereitstellung:

claude mcp add --transport http aws-devops-study-kb https://<your-host>/mcp \
  --header "Authorization: Bearer <API_BEARER_TOKEN>"

Claude Desktop oder jeder Client, der über einen mcpServers-JSON-Block konfiguriert ist:

{
  "mcpServers": {
    "aws-devops-study-kb": {
      "type": "http",
      "url": "https://<your-host>/mcp",
      "headers": { "Authorization": "Bearer <API_BEARER_TOKEN>" }
    }
  }
}

OpenWebUI: Füge es als MCP-Toolserver hinzu (Einstellungen → Tools) mit derselben URL + Header, falls deine OpenWebUI-Version natives MCP unterstützt.

Sobald verbunden, weist das instructions-Feld des MCP-Servers (automatisch von Clients gelesen, die es berücksichtigen) das Modell bereits an, vor der Antwort zu suchen und Memos unaufgefordert zu speichern — siehe docs/agent-persona.md, wenn du dieses Verhalten explizit und zuverlässig über ein System-Prompt machen möchtest, anstatt darauf zu vertrauen, dass der Client es aufnimmt.

OpenAPI/REST-Tool-Aufruf-Clients

Für alles, das eine OpenAPI-Spezifikation importiert, anstatt MCP zu sprechen (benutzerdefinierte GPT Actions, LibreChat, ein benutzerdefinierter Bot):

  • Spezifikations-URL: https://<your-host>/openapi.json (bearer-token-geschützt — mit dem Header abrufen)

  • Eine statische Kopie ist unter openapi/generated.json eingecheckt, falls dein Client eine Datei anstelle eines Live-Abrufs benötigt (nach jeder Schemaänderung mit npm run generate:openapi neu generieren).

  • Jeder Aufruf benötigt denselben Authorization: Bearer <API_BEARER_TOKEN>-Header.

Tag-Konvention

Es gibt keine Ordner — Tags sind die einzige Organisationsstruktur, daher müssen Agenten sie konsistent verwenden. exam:<domain> für die 6 AWS DevOps Pro Prüfungsdomänen, plus freie Themen-Tags (ebs, s3, codepipeline, …). Die vollständige Konvention und wo sie für Agenten durchgesetzt/dokumentiert ist, findest du in docs/tag-conventions.md.

Entwicklung

npm test              # vitest — memoService, REST API, and MCP tool round-trips
npm run typecheck      # tsc --noEmit
npm run build           # compiles to dist/ (used by the Docker image)

Siehe CLAUDE.md für die vollständige Architektur-Beschreibung (warum SQLite+FTS5, warum eine gemeinsame Dienstschicht, das Authentifizierungsmodell, bekannte Stolperfallen), falls du dies erweiterst.

Lizenz

MIT

Maintenance

ActivitySlowing
ResponsivenessNo issues

Related MCP Connectors

  • XMemo is a user-owned Memory OS for AI agents, providing a shared, persistent memory layer across AI assistants, IDEs, CLIs, tools, projects, and sessions. It enables ChatGPT, Claude, Codex, Cursor, Gemini, and other supported AI clients to access authorized long-term context without requiring users to repeatedly explain their preferences, project decisions, or previous work. Beyond basic memory storage and retrieval, XMemo supports semantic search, contextual recall, memory updates and corrections, source attribution, version history, project-scoped context, task tracking, and governed memory lifecycle management. Identity-aware access controls, scoped authorization, and memory isolation help users manage which agents and workflows can access their information. XMemo also provides advanced capabilities for structured knowledge, reusable procedures, and memory consolidation through its broader Memory OS platform. Connect through hosted MCP with OAuth or bearer-token authentication, or integrate directly through REST APIs and supported client tools. Memory remains available across authorized clients and sessions, with user-controlled access, export, and deletion. Website: https://xmemo.dev Documentation: https://xmemo.dev/docs

  • Persistent memory layer for AI tools. Save and recall notes across Claude and other MCP clients.

  • Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.

  • MCP-native notes and memory for ChatGPT, Claude, and other AI tools.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Self-hosted semantic memory for AI agents. Save worklogs, decisions, and notes via MCP, then recall them across sessions by meaning rather than keyword. Backed by Postgres + pgvector with local embeddings (multilingual-e5-base).
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    XMemo is a secure, user-owned memory substrate and context engine for AI agents, CLIs, IDEs, and LLM workspaces. Exposed over Streamable HTTP MCP, it empowers agents with cross-session memory, task continuity, and personalized context. Key Features: * Personalized Context: Stores and recalls developer preferences, project guidelines, and coding patterns via semantic vector search. * Agent Daily Me
    31
    1,128 npm
    12
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    A self-hosted Markdown knowledge base and Agent Harness with an MCP server that enables AI agents to read and write notes, providing persistent memory and a shared workspace for multi-agent collaboration.
    2
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Self-hosted knowledge base that gives AI agents persistent memory over MCP. 18 tools covering notes, folders, tags and trash; hybrid search combining pgvector embeddings with bilingual full-text ranking via RRF; [[wikilink]] graph traversal and backlinks; document import from PDF, DOCX and EPUB. Connects over Streamable HTTP or stdio, with Bearer-token or OAuth auth.
    18
    3
    AGPL 3.0