Reported issues for Engram
Pod holds 20 of 32 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.
Back to Engram.
Most discussed
bug: ChatGPT MCP tool call blocked — Engram tools fail to execute
Bug
When using Engram as an MCP connector in ChatGPT (Settings > Apps > Developer mode), tool calls to Engram are blocked. ChatGPT reports: "I also tried to pass your request to Engram, but the tool call was blocked, so I can't confirm that anything was saved there."
Screenshot
User asked: "Engram can you remember everything I've said in my chatgpt"
ChatGPT attempted to call an Engram tool but it was blocked. The response fell back to a generic explanation instead of using the MCP tool
Read the thread · 2026-07-08 · closed · outside contributor · 3 comments
Distribute: list Engram on cursor.directory
Cursor has no formal app-review process — users add MCP servers via ~/.cursor/mcp.json / Settings → MCP. The community discovery surface is cursor.directory (third-party).
Owner believes a manual Cursor submission may already have been made independently. Confirm status before re-submitting (check
hello@getengram.appfor a reply) to avoid a duplicate.
Task
- Confirm whether a cursor.directory (or other Cursor) submission already exists.
- If not, submit at https:/
Read the thread · 2026-07-01 · open · outside contributor · 3 comments
Distribute: submit Engram to MCP registries (Official Registry, Smithery, Glama, PulseMCP, mcp.so)
Self-submit Engram to the major MCP server registries/aggregators for discovery + SEO. No review gate (except the official registry's namespace verification).
Reuse canonical listing copy in docs/launch/chatgpt-app-listing.md:
- Name: Engram
- MCP URL (remote):
https://mcp.getengram.app/mcp - Auth: OAuth 2.1 (Dynamic Client Registration) or API key
- Short: Persistent, searchable memory for AI agents — remember context across conversations.
- Category: Memory / Knowledge
Read the thread · 2026-07-01 · closed · outside contributor · 4 comments
feat(cli): import ChatGPT data export into Engram
Users want their full ChatGPT history in Engram, not just the model's recollection. ChatGPT can't bulk-upload past chats. Add an importer for the official ChatGPT data export.
- `engram import <conversations.json>` — parses the export's node tree (current_node → root), keeps user/assistant text messages in order, creates one Engram conversation per chat (tagged `chatgpt-import`), stores messages in batches.
- Flags: `--dry-run`, `--limit
`, `--tag `. Stops cleanly on plan-lim
Read the thread · 2026-06-30 · closed · outside contributor · 1 comment
appstore: restricted-data review + position the secrets vault for submission
Part of #184. Guidelines prohibit collecting payment card info, health data, government IDs, or credentials, and require 'operate only on explicitly shared snippets' (no chat-log extraction).
- Confirm core memory tools only store explicitly-passed content (they do) and document this for the privacy review.
- Secrets vault (
vault_*, named_secrets) stores client-encrypted secrets/credentials — assess whether to (a) exclude vault tools from the published ChatGPT app surface, (b) keep them w
Read the thread · 2026-06-30 · closed · outside contributor · 1 comment
appstore: response minimization audit on MCP tool outputs
Part of #184. Guidelines: 'Return only task-relevant data; exclude diagnostic metadata.'
Audit each tool's return payload for internal IDs, vectorize ids, raw metadata, or debug fields that the model/user don't need. Trim to what's useful for the task.
AC: documented review of every tool's output shape; unnecessary fields removed.
Read the thread · 2026-06-30 · closed · outside contributor · 2 comments
oauth: auth middleware accepts OAuth access tokens
Part of #168.
Extend src/middleware/auth.ts to accept engram_at_* Bearer tokens in addition to engram_sk_live_*:
- Detect prefix; for access tokens, hash + look up in
oauth_access_tokens, check expiry, resolve organization_id + tier. - Populate the same
AuthContextso all MCP tools + REST routes work unchanged. - Expired/unknown token → 401 with the resource-metadata
WWW-Authenticatechallenge. - Keep API-key path byte-for-byte unchanged.
AC: MCP call succeeds with a valid access t
Read the thread · 2026-06-30 · closed · outside contributor · 1 comment
feat: ChatGPT connector support (Developer mode / Apps) — OAuth or REST API
Problem
Engram cannot currently be added to ChatGPT. ChatGPT's custom connectors (Settings → Apps & Connectors → Developer mode) only accept OAuth or no-auth MCP servers. Engram authenticates with a static `Authorization: Bearer engram_sk_live_...` header, which the ChatGPT connector UI does not let users set. The curated Apps directory is publish-only and not a path for self-serve users either.
Result: every other MCP-native client (Claude Desktop, Claude Code, Cursor, Windsu
Read the thread · 2026-06-30 · closed · outside contributor · 4 comments
Most recent
feat(dashboard): one-click connector section — click-to-connect each tool
What
The dashboard's "Connect to ChatGPT" box (and the others) is a static 3-step instruction list. Replace it with a connector grid — one card per tool (ChatGPT, Claude, Cursor, Codex, Claude Code, Windsurf, VS Code) with a Connect button that does as much of the flow as each tool allows, instead of make-the-user-read-steps.
Why
Activation is the #1 problem (81% of connected users never save a memory). The faster and more obvious "connect it" is, the more people reach first value
Read the thread · 2026-07-23 · closed · outside contributor · 1 comment
Pro promise: public REST API + API usage metering (pricing says "MCP + REST API")
The pricing page sells Pro as "MCP + REST API" with "1 API key", and the dashboard shows usage — but:
- The memory API is MCP-only. The six memory operations (create/list/get/delete conversation, append, search) exist only as MCP tools on
/mcp. The REST surface under/api/*is account management (keys, seats, billing, usage) plus two dashboard-internal endpoints (/api/memories). A Pro customer who wants to call Engram from a backend without an MCP client can't. - **No API usage mete
Read the thread · 2026-07-21 · closed · outside contributor · 0 comments
bug: audit_log entries silently dropped — fire-and-forget calls raced against Workers request teardown
Summary
Production audit_log had 0 rows ever recorded for search, and only 4 for messages.append, despite those being the most-called MCP tools by a wide margin — versus 161 conversation.read and 118 conversation.list. Discovered 2026-07-20 while building the activation-tracking funnel (which depends on audit_log for first_search/first_successful_recall/session data — it would have reported near-zero forever if this had shipped unfixed).
Root cause
Every call to `audit
Read the thread · 2026-07-21 · closed · outside contributor · 1 comment
feat(cli): multi-host capture framework — adapter registry + per-host status
Problem
The daemon is Claude-Code-specific (single watcher). With Cursor hooks, Claude hooks, Codex, and experimental VS Code arriving, capture needs a pluggable shape.
Proposal
- Adapter interface:
detect() / install() / start() / stop() / health()per host. engram statuslists every detected host and its capture state:
claude-code ● capturing (hooks+watch)
cursor ● capturing (hooks)
codex ○ detected — run: engram install codex
chatgpt ◐ on-request via M
[Read the thread](https://github.com/get-engram/engram/issues/261) · 2026-07-14 · closed · outside contributor · 0 comments
### feat(cli): Claude Code hooks as primary capture path (hybrid with JSONL watch backstop)
## Problem
Today we file-watch `~/.claude/projects/**/*.jsonl`. It works, but the docs note the transcript is written asynchronously and may lag, and pure watching misses lifecycle precision.
## Proposal (from verified research)
Use Claude Code's deterministic hooks as primary: `Stop`/`SubagentStop` expose `last_assistant_message` (docs recommend it over reading the lagging transcript); `UserPromptSubmit`, `SessionEnd` for turn/session boundaries; every payload carries `transcript_path` for re
[Read the thread](https://github.com/get-engram/engram/issues/259) · 2026-07-14 · open · outside contributor · 0 comments
### feat(cli): Cursor capture adapter — deterministic verbatim sync via Cursor hooks
## Goal
Give Cursor the same "always recording" guarantee as Claude Code — the usage engine that drives conversion (#252).
Cursor 1.7+ ships a native hooks system (`~/.cursor/hooks.json`, project/team/enterprise scopes): `beforeSubmitPrompt` (user prompt, fires deterministically on every submission) and `afterAgentResponse` (assistant text), plus `stop`/`sessionStart`/`sessionEnd`/`postToolUse`. Hooks are spawned programs over stdio JSON — deterministic, not model-invoked. Verified against cur
[Read the thread](https://github.com/get-engram/engram/issues/258) · 2026-07-14 · open · outside contributor · 0 comments
### fix: GET /mcp hangs causing 85% scriptThrewException crash rate
## Problem
The Worker has an 85% error rate — ~43,000 `scriptThrewException` per day. All errors are:
> The Workers runtime canceled this request because it detected that your Worker's code had hung and would never generate a response.
Every crash is a `GET /mcp` with `Accept: text/event-stream` from MCP clients (Claude Code, etc.) attempting SSE streaming. The `app.all("/mcp", ...)` handler passes these to `WebStandardStreamableHTTPServerTransport.handleRequest()` which hangs forever because
[Read the thread](https://github.com/get-engram/engram/issues/240) · 2026-07-12 · closed · outside contributor · 0 comments
### feat: VS Code integration — Copilot MCP connect guide (+ evaluate capture adapter)
## Goal
Add VS Code as a supported Engram host. No issue or guide exists for it yet.
## Two parts
### 1. Connect guide (straightforward)
VS Code (GitHub Copilot) supports MCP servers. Write `docs/guides/vscode.md` (+ `engram-web/content/guides/vscode.mdx`, add to `_meta.ts` and the guides index) covering how to add Engram's MCP server (`https://mcp.getengram.app/mcp`) via Copilot's MCP config, plus the honest capture model (on-request via MCP tools).
### 2. Deterministic capture adapter (eva
[Read the thread](https://github.com/get-engram/engram/issues/234) · 2026-07-09 · open · outside contributor · 0 comments
### feat: owner admin dashboard — business metrics, analytics, and operational visibility
## Problem
As the owner/operator of Engram, there's no way to see how the business is doing without:
- Manually running `wrangler d1 execute` SQL queries against production
- Curling the Cloudflare GraphQL analytics API
- Checking GitHub traffic via `gh api`
There's no website analytics at all.
## Current numbers (manually pulled Jul 4, 2026)
- 13 orgs, 4 external signups, 1 active external user
- 0 GitHub stars, 0 forks
- 138K API requests/14d with 76% crash rate (fix in #227)
- 267 clone s
[Read the thread](https://github.com/get-engram/engram/issues/228) · 2026-07-04 · closed · outside contributor · 0 comments
### feat(mcp): friendly limit/upgrade message + usage meter for connected apps
When a ChatGPT/Claude (OAuth) user hits the free limit, give a warm, signup-oriented message that routes them to **their own** Engram dashboard to upgrade (their org is provisioned with the email they connected) — never sell inside the app (OpenAI prohibits in-app digital-subscription sales). Also surface a usage meter so they see it coming.
- limitMessage(): OAuth → "sign in at getengram.app/dashboard with the email you connected and upgrade"; API-key → pricing link.
- usageMeter() in append_m
[Read the thread](https://github.com/get-engram/engram/issues/207) · 2026-06-30 · closed · outside contributor · 0 comments
### feat(mcp): make conversation_id optional on append_messages (auto-default memory)
**Problem (observed twice with ChatGPT):** \`append_messages\` requires \`conversation_id\`, and models (ChatGPT especially) refuse to call \`create_conversation\` first to get one — they demand the user supply an id. For a memory product, the agent shouldn't have to manage ids at all.
**Fix:** make \`conversation_id\` optional on \`append_messages\`.
- If provided → append to it (current behavior; use create_conversation to group a topic).
- If omitted → find-or-create the org's **default memo
[Read the thread](https://github.com/get-engram/engram/issues/201) · 2026-06-30 · closed · outside contributor · 0 comments
### appstore: privacy policy updates for App Directory review
Part of #184. Guidelines require a published privacy policy detailing **data categories, purposes, recipients, retention, and user controls**.
Review getengram.app/privacy (engram-web) against that checklist and fill gaps: what's stored (verbatim transcripts), why, processors (Cloudflare/Supabase), retention (+ the 30-day soft-delete purge), and user controls (export, delete, revoke connected apps).
AC: privacy policy explicitly covers all five areas; linked in the submission.
[Read the thread](https://github.com/get-engram/engram/issues/192) · 2026-06-30 · closed · outside contributor · 0 comments
The remaining reports are on [the project's issue tracker](https://github.com/get-engram/engram/issues).