An open standard for portable, user-owned personal context that any AI can read.
Status: v1 (draft) · License: MIT · Reference implementation: Memorandai
Two problems, one root:
- The context cold-start problem. Every new AI session — every new model, every new app — starts from zero. It doesn't know who you are, what you're working on, or how you like to work. You re-explain yourself, endlessly.
- Vendor lock-in. The platforms that do remember you (ChatGPT Memories, Claude Projects, …) trap that memory inside one vendor. Your curated context isn't yours to carry.
PCP inverts this: you hold a portable bundle of your own context, in a neutral format, and authorize any AI to read it. Your device is the source of truth; AI clients are interchangeable interfaces — the way a hardware wallet holds your keys and any wallet app can connect to it.
PCP is not an app or a server. It's two things any implementation can conform to:
- A neutral data vocabulary — typed shapes (
profile,keystone,timeline_event) for the portable pieces of personal context. Plain JSON; vendor-free. - An MCP query profile — a small, read-only set of operations a personal-context store exposes so any MCP-capable AI can query that vocabulary on demand.
The relationship is the same as OpenID Connect to OAuth: MCP is the general protocol; PCP is the profile that standardizes personal context on top of it.
PCP context travels at three levels of fidelity, all sharing one vocabulary:
| Layer | What | Use |
|---|---|---|
| 1 — Portable Context Profile | A distilled bundle (JSON / Markdown / ~250-token micro-prompt) | Paste-in cold-start: give a fresh AI a cursory sense of who you are |
| 2 — Full export | The complete archive of your context | Migration between tools / installs |
| 3 — Live query | An AI queries your running store over MCP | On-demand, always-current context |
Three types. Each carries an extensions object so vendors and the community can add fields without forking the core.
profile— the distilled "who you are": identity, focus, working style, values, expertise.keystone— a single curated, high-signal claim about you, carrying provenance (source,confidence,last_confirmed_at) so a reading AI can weigh how much to trust it.timeline_event— a dated life event (jobs, moves, milestones); partial dates allowed.
Full definitions: spec/pcp-v1.md · JSON Schemas: spec/schema/ · Worked examples (a fully fictional persona — no real data): examples/.
A reading AI is a guest, not an editor:
- Read-only at the boundary. The query profile exposes no writes — an external AI can read your context but never silently mutate it.
- Provenance travels with the data. Every
keystonecarriessource/confidence/last_confirmed_at, so a reader can trust-weight: a user-stated fact is not an AI-inferred guess. - Auditable. Implementations log who queried what.
Once you have more than one PCP store, you need a way for an agent to know they exist and query across them. The device registry is a small extension: a user-curated manifest (~/.pcp/sources.json) listing the PCP sources you've opted into on your own machine — so any agent can discover and query across them as one context layer, with no central broker.
It's deliberately just a convention — usable by hand today, and seamless once apps register themselves and agents read it natively (the spec is honest about the gap between). Single-user, single-device, opt-in per source — not cross-person sharing.
→ spec/registry-v1.md · schema: registry.schema.json · example: sources.example.json
v1 is a draft, and the vocabulary deliberately starts small and stable — the point is for the community to extend it. Propose fields and types via issues and PRs: the core stays minimal, extensions live in the extensions namespace, and widely-adopted extensions graduate into later versions. See CONTRIBUTING.md.
The reference implementation, Memorandai (a local-first knowledge studio), implements all three layers.
MIT © 2026 Gary Smith.