Inspiration
Every agent we built kept forgetting everything the moment a session ended. Supermemory solved storage, but there was no way to discover what brains already exist, and no way to stop a leaked API key from poisoning a public memory at scale. Engram is the missing layer.
What it does
Engram is a marketplace and trust layer for agent memory.
- Marketplace — a Next.js + Supabase app where individuals publish personal brains and teams publish shared knowledgebases, all searchable and pluggable into any agent.
- engram-mcp — a standalone MCP server (
login,learn,search) for individuals using Cursor or Claude Desktop. - engram-mcp-sdk — a drop-in FastMCP sub-server organizations mount into their own MCP apps. Every memory write requires the org's API key and a one-time World ID human verification.
- engram-server — one FastAPI backend with stacked auth (API key + World ID + Supabase JWT) that talks to Supermemory.
- Agentverse endpoint — every org gets an ASI:One-powered uAgent on Agentverse, so any agent can recall its memory conversationally.
How we built it
Next.js + Tailwind + shadcn + Supabase on the frontend. FastAPI + Supermemory + Pydantic on the backend. World ID implemented end-to-end ourselves: HKDF-derived keypairs, NaCl SealedBox tokens, secp256k1 RP signatures, forward-compatible with World ID 4.0 session proofs. Two MCP packages built on FastMCP, each with its own localhost browser-auth flow. Fetch.ai surface registers per-org agents on Agentverse with deterministic seeds and pipes ASI:One as the LLM. The whole landing page was designed in Figma and rebuilt as a scroll-driven brain animation in React.
Challenges we ran into
- Designing a long-lived, encrypted World ID bearer token without a hosted backend, while staying forward-compatible with 4.0 session proofs.
- Stacking three different auth schemes (API key, World ID, Supabase JWT) on one Supermemory account without circular imports between modules.
- Making MCP localhost auth flows (random ports, opt-out handling, token refresh, headless boxes) actually robust across macOS, Linux, and CI.
- Programmatic Agentverse lifecycle — register, message, deregister — driven by a parent FastAPI process with per-org deterministic seeds.
Accomplishments that we're proud of
- A real trust stack for agent memory: org API key → World ID human proof → Supabase user JWT.
- Two MCP shapes that cover both individuals and organizations, plus an Agentverse-native chat surface — all sharing one backend.
- A reproducible memory benchmark: eight fictional MCP companies and a deliberately-buggy calculator, used to prove the agent actually remembers across cold sessions.
- A landing page that doesn't look like a hackathon project.
- Frontend, backend, two MCP packages, four demos, and full World ID auth — all shipped in one weekend.
What we learned
- MCP is great for tool calls, terrible for identity — auth has to live in the server, not the protocol.
- World ID is more than a captcha; it's a stable, anonymous human ID you can build bans, quotas, and rate limits against.
- Supermemory works best when it's invisible — agents just call
learn/search, never the underlying API. - Demos are infrastructure: dogfooding our own SDK through the eight-company sandbox caught three bugs before any judge saw the code.
What's next for Engram
- Per-memory ACLs and metered pricing so publishers can sell calls to their brain.
- Agent-to-agent discovery — a
discoverMCP tool so ASI:One agents can find the right brain for a task. - Embeddable
<EngramSearchBox />widget for any product to expose memory search in their own UI. - One-command self-hosted engram-server on Docker.
- World ID 4.0 session proofs the day they ship.
- A "memory diff" UI so humans can audit and revoke what an agent has learned.
Built With
- agentverse
- asi-one
- claude-desktop
- cursor
- deepgram
- devin
- fastapi
- fastmcp
- fetchai
- figma
- gpt-4o
- idkit
- javascript
- mcp
- nextjs
- openai
- openai-agents-sdk
- pydantic
- pynacl
- python
- radix-ui
- react
- shadcn-ui
- starlette
- supabase
- supabase-auth
- supabase-postgres
- supermemory
- tailwindcss
- typescript
- uagents
- uv
- uvicorn
- vercel
- world-id
- worldcoin
- zod

Log in or sign up for Devpost to join the conversation.