apocrypha
Apocrypha
Apocrypha ist Jensens Einzelbenutzer-, append-only Remote-MCP-Speicher für nützlichen persönlichen Kontext, den ein Assistent nicht in seinem normalen eingebauten Speicher ablegen sollte. Claude und ChatGPT teilen sich denselben standardmäßigen Streamable-HTTP-Endpunkt unter /mcp. Es unterstützt standardbasiertes OAuth 2.1 für Clients wie Claude, behält aber auch ein separates statisches Bearer-Token für Clients, die einen Autorisierungs-Header direkt setzen können.
Umfang: nur außergewöhnlicher Speicher
Apocrypha folgt den allgemeinen Speicher- und Komprimierungssemantiken von OptMem mit einer Spezialisierung: Es ist kein zweiter Allzweck-Speicher. Ein Assistent sollte hier nur schreiben, wenn persönlicher Kontext es wert ist, erinnert zu werden, der Assistent jedoch beurteilt, dass er diesen Kontext nicht in seinem eigenen persönlichen Speicher ablegen soll – zum Beispiel Wohnung, Einkommen, finanzielle Laufbahn, sozioökonomische Umstände oder damit zusammenhängender Arbeitspipeline-Kontext. Fakten, die für den normalen eingebauten Speicher geeignet sind, gehören dorthin und sollten nicht auch in Apocrypha kopiert werden. Diese Trennung vermeidet redundante oder widersprüchliche Erinnerungen über Systeme hinweg.
LOG.txt ist maßgeblich. Es verwendet OptMems 320-Byte-Festbreiten-Datensätze (ein durch Zeilenumbruch beendeter Speicher pro Datensatz), und TREE/<size> verwendet dessen 288-Byte-Festbreiten-Binär-Merge-Datensätze. Korrekturen sind spätere Log-Einträge; rohe Erinnerungen werden nie bearbeitet oder gelöscht. Google Drive ist nur ein auf dem Telefon lesbarer Spiegel.
Related MCP server: JauMemory MCP Server
Werkzeuge
apocrypha_wake: obligatorischer Lesevorgang des stehenden Kontexts, unterhalb der Client-Antwortlimits paginiert; verweigert, solange eine Komprimierung aussteht.apocrypha_note: zeichnet nur sonst nicht erlaubten dauerhaften Kontext auf, kollabiert Leerzeichen, hängt einen datierten Speicher an, spiegelt Drive und gibt die nächste neu mögliche Komprimierung zurück.apocrypha_sleep: holt oder erledigt die nächste Merge-Tree-Komprimierung.apocrypha_recall: case-insensitive Regex-Suche über das vollständige rohe Log.apocrypha_forget: kürzt eine falsche Zusammenfassung und alle darüber liegenden Zusammenfassungen, ohne das Log zu berühren.
Wake gibt absichtlich jeden rohen Datensatz zurück, solange das Log innerhalb seines 96-Zeilen-Renderbudgets passt. Sobald das Log dieses Budget überschreitet, kachelt es die vollständige Historie mit gespeicherten Baumzusammenfassungen in Richtung Vergangenheit und zunehmend feineren Details in Richtung Gegenwart. Eine Notiz gibt nur die erste neu mögliche Komprimierung zurück; jede Schlafantwort gibt die nächste Aufgabe in der Kaskade zurück. Das Entleeren dieser Kaskade vor dem Aufwachen ist beabsichtigt, da Wake nie aus einem teilweise aufgebauten Baum rendert.
Die Komprimierung folgt OptMems kategorieneutraler Regel: Behalte, was dauerhafte Wirkung hat, verwerfe, was nicht, und erfinde nichts. Das rohe Log bleibt maßgeblich, unabhängig davon, was eine Zusammenfassung auslässt.
Lokale Verifikation
npm install
npm testDie Tests umfassen einen OptMem-Stresstest mit 2.000 Speichern, Invarianten für Festdatensätze und Bäume, Paginierung, zunehmende Details in Richtung Gegenwart, Byte-Identität von Vergessen/Wiederaufbau, Neustart-Persistenz, MCP-Schemas und die Drive-batchUpdate-Anfrage.
Entwicklungs- und Bereitstellungsworkflow
C:\Users\Jensen\code\apochrypha ist das Entwicklung-Checkout. Der öffentliche main-Zweig von GitHub ist die Release-Quelle, und Alpha stellt diesen veröffentlichten Zweig bereit, nicht unveröffentlichte lokale Dateien.
Nehmen Sie Änderungen im lokalen Checkout vor und führen Sie
npm testaus.Committen Sie die Änderungen und pushen Sie
mainzu GitHub.Führen Sie von PowerShell aus
./scripts/deploy-alpha.ps1aus.
Das Bereitstellungsskript verweigert einen unsauberen Baum, einen Nicht-main-Zweig oder einen lokalen Commit, der von origin/main abweicht. Auf Alpha führt es ein Fast-Forward-Only-Update durch, installiert gesperrte Produktionsabhängigkeiten, startet den Dienst neu und überprüft den lokalen Health-Endpunkt. Der Laufzeitzustand bleibt getrennt: Anmeldeinformationen liegen in /etc/apocrypha.env, während das append-only Log, der Zusammenfassungsbaum und der OAuth-Zustand in /var/lib/apocrypha liegen; keiner davon ist Teil von Git.
Google-Autorisierung (einmalig, auf dem Laptop)
Aktivieren Sie in Google Cloud die Google Docs API und erstellen Sie einen Desktop-OAuth-Client.
Konfigurieren Sie den OAuth-Zustimmungsbildschirm und veröffentlichen Sie ihn in Produktion. Wenn Sie ihn im Testmodus lassen, läuft das Refresh-Token nach sieben Tagen ab.
Fügen Sie
http://127.0.0.1:53682/oauth2callbackhinzu, wenn die Client-Konfiguration eine autorisierte Weiterleitungs-URI verlangt.Führen Sie aus:
GOOGLE_CLIENT_ID='...' GOOGLE_CLIENT_SECRET='...' npm run oauth:googleDer Helfer fordert access_type=offline, prompt=consent und nur https://www.googleapis.com/auth/documents. Legen Sie das gedruckte Refresh-Token in /etc/apocrypha.env; committen Sie es nicht.
Der Spiegel zielt auf GOOGLE_DOC_ID, nicht auf den Dokumenttitel. Das Umbenennen des Google-Dokuments bricht die Synchronisierung nicht und darf nicht durch eine titelbasierte Suche ersetzt werden.
Auf Alpha bereitstellen
Kopieren Sie dieses Projekt nach /srv/apocrypha und führen Sie dann als root aus:
cd /srv/apocrypha
npm ci --omit=dev
useradd --system --home /var/lib/apocrypha --shell /usr/sbin/nologin apocrypha || true
chown -R apocrypha:apocrypha /var/lib/apocrypha
install -o root -g root -m 600 deploy/apocrypha.env.example /etc/apocrypha.env
install -o root -g root -m 644 deploy/apocrypha.service /etc/systemd/system/apocrypha.service
systemctl daemon-reload
systemctl enable --now apocryphaBearbeiten Sie /etc/apocrypha.env mit echten, unabhängigen MCP_BEARER_TOKEN- und OAUTH_ACCESS_KEY-Werten, bevor Sie den Dienst starten. Der Prozess bindet immer 127.0.0.1; nginx ist der einzige öffentliche Listener.
Claude verbinden
Geben Sie im Dialog für benutzerdefinierte Verbindungen von Claude https://mcp.jensenabler.com/mcp ein und lassen Sie die optionalen Felder für OAuth-Client-ID und Client-Secret leer. Claude entdeckt die OAuth-Metadaten von Apocrypha und registriert sich dynamisch. Wenn die Autorisierungsseite von Apocrypha geöffnet wird, fügen Sie den privaten OAUTH_ACCESS_KEY ein und genehmigen Sie den Zugriff. Verwenden Sie hier nicht die Google-OAuth-Client-Anmeldeinformationen.
Der Genehmigungsschlüssel wird nur auf der Autorisierungsseite verwendet. Claude erhält ein eingeschränktes, ablaufendes Zugriffstoken und ein rotierendes Refresh-Token; es erhält niemals den Genehmigungsschlüssel oder das statische Bearer-Token.
Einen Bearer-Token-Client verbinden
Für einen MCP-Client, der benutzerdefinierte Header unterstützt, verwenden Sie Streamable HTTP unter https://mcp.jensenabler.com/mcp mit Authorization: Bearer <MCP_BEARER_TOKEN>. Das statische Token ist unabhängig von Claudes OAuth-Anmeldeinformationen.
Abnahmeaufrufe
curl https://mcp.jensenabler.com/healthz
curl -i -X POST https://mcp.jensenabler.com/mcpFür eine Prüfung auf Protokollebene verwenden Sie den MCP Inspector mit Streamable HTTP, URL https://mcp.jensenabler.com/mcp, und entweder dessen OAuth-Flow oder den Anfrage-Header Authorization: Bearer <MCP_BEARER_TOKEN>.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to save and recall information from files or free-form notes using natural language, acting as a long-term memory system.MIT

JauMemory MCP Serverofficial
AlicenseAqualityCmaintenanceProvides persistent memory capabilities for AI assistants, enabling storage, recall, and analysis of information across conversations with intelligent memory management.2538MIT- AlicenseBqualityCmaintenanceProvides persistent memory for AI assistants, enabling storage, recall, and analysis of information across conversations with intelligent memory management.5038MIT
- AlicenseAqualityBmaintenanceGives AI assistants a persistent memory across conversations, allowing them to remember user preferences, notes, and facts between chats.6123MIT
Related MCP Connectors
Cross-session, cross-device memory for your agent: remember and recall notes. No key to start.
Persistent memory and knowledge management for AI agents with semantic search and 50+ tools.
Universal memory for AI agents and tools. Save, organize and search context anywhere.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/JensenAbler/apocrypha'
If you have feedback or need assistance with the MCP directory API, please join our Discord server