twin memory

ChatGPT

Add twin memory to ChatGPT as a custom MCP server in developer mode. Each person signs in and chooses whose memory ChatGPT reaches.

What you get

ChatGPT searches your twin memory in a chat, and saves what it learns when you allow it. It reaches one end user's memory, your own by default: the same memory your app's backend and your other assistants read and write.

The server lists the eight read tools, and memory_add when you allow saving. Every tool is on the tools reference.

Server URL
https://api.twinmemory.dev/v1/mcp

Plans that support it

Custom MCP servers live in ChatGPT's developer mode, which is in beta. What each plan gets:

PlanCustom MCP servers
Business, Enterprise, EduRead and save. An admin turns developer mode on for the workspace first.
ProRead only: search and read work, memory_add does not.
PlusUnclear. OpenAI's pages and third-party guides disagree; we have not verified it.

These rest partly on search excerpts of OpenAI's help center, which could not be fetched directly when we wrote this page; check ChatGPT's own settings for your plan.

Add the server

Business, Enterprise and Edu: an admin turns developer mode on under Workspace settings > Permissions & Roles > Connected Data. On Business only admins and owners can; on Enterprise and Edu an admin grants it through roles. Pro: turn developer mode on in your own settings.

Open Plugins (chatgpt.com/plugins), select +, then Add custom MCP server.

Set the Server URL to https://api.twinmemory.dev/v1/mcp and choose OAuth as the authentication. No client ID is needed: ChatGPT identifies itself by the client metadata it publishes, and twin memory reads it from there.

Accept the warning and select Create as a plugin. A twin memory window opens: sign in, or create an account, then choose on the connect card and select Allow.

What happens when you sign in

After you sign in, twin memory shows one card naming the app (ChatGPT, from chatgpt.com) and four choices, already filled in:

ChoiceWhat it means
OrganisationShown only if you belong to more than one.
ProjectWhich project's memory, as for an API key.
End userWhose memory ChatGPT reaches. Your own by default, made from your email: dana.cole@acme.com is dana.cole. Change it to reach someone else's, as X-Twin-Account would. See End users.
AccessRead and save lists memory_add; Read only does not. Viewers in the organisation can grant Read only and nothing more.

Allow records the connection; Cancel tells ChatGPT you declined. Connect the same app again later with the same choices and the card is skipped. It shows again if the app asks for more than you allowed, or after you disconnect.

Make it save everything

twin memory is meant to hold almost everything a person tells their assistant, so their other apps can use it too. ChatGPT reads the server's instructions, which say so, and the memory_add tool's description says it again: save on its own, every turn, small details included, never secrets. To make it stick, paste this into Settings › Personalization › Custom instructions:

Use twin memory as my memory. Before answering anything about me, search it with memory_search. Save everything new I tell you about me, my work, and the people, places and things around me, small details included, with memory_add, on your own and without asking. Never save secrets, passwords or keys.

ChatGPT asks before each memory_add by default. Remembering the approval for the conversation keeps saving quiet.

Tools and approvals

Every tool is sent with a title and hints. The read tools are marked read-only, so ChatGPT runs them without asking. memory_add is a write, so ChatGPT asks you to confirm each one by default; you can remember an approval for the conversation. A tool added or changed later shows as a change, off until you turn it on.

Disconnecting

  • In twin memory: Account > Connected apps > Disconnect. Owners and Admins can also disconnect anyone's connection on the console's MCP page, under Connections.
  • In ChatGPT: remove the plugin under Plugins.

After a disconnect in twin memory, the token ChatGPT holds works for up to 15 more minutes. ChatGPT then asks you to sign in again, and connecting again shows the card.

For admins

On Business, Enterprise and Edu, an admin enables developer mode and the server for the workspace, as in step 1 above. Each member then signs in to twin memory as themselves, so each reaches their own end user, with the access their role in your twin memory organisation allows. Invite members under Team in the console first.

Deep research and company knowledge

Soon ChatGPT's deep research and company knowledge use only servers with two read-only tools named exactly search and fetch, in a fixed shape. twin memory's tools are named memory_search and memory_read, so today the server works in chat but not as a deep research or company knowledge source. search and fetch are planned.

Troubleshooting

  • "Failed to resolve OAuth client" or a sign-in that never finishes. The URL must be exactly https://api.twinmemory.dev/v1/mcp. Delete the plugin and create it again: ChatGPT reads the sign-in settings when it is created.
  • ChatGPT reads the wrong end user. Disconnect under Account > Connected apps, connect again, and choose the end user on the card.
  • It asks you to sign in again. You or an admin disconnected it, or your role changed so it no longer allows the connection's access (a Read and save connection after you became a Viewer). Connect again.
  • memory_add does nothing, or is missing. The connection is Read only, or your plan reads only (Pro).
  • Running twin memory yourself, through a tunnel. ChatGPT needs a public HTTPS address. Set PUBLIC_URL and follow the README's "Connect claude.ai or ChatGPT from your machine". On ngrok's free plan, open the address in your browser once and pass its warning page before you sign in.
  • A strict firewall. ChatGPT's addresses are published at openai.com/chatgpt-connectors.json and change; allow them to reach both api.twinmemory.dev and twinmemory.dev, where you sign in.

Sources checked 2026-10-22: developers.openai.com: custom MCP server, developers.openai.com: connect from ChatGPT, developers.openai.com: plugin authentication, developers.openai.com: MCP and deep research, help.openai.com: developer mode (search excerpts only). What we verified ourselves: sign-in with a client shaped like ChatGPT's published metadata, in our automated tests; ChatGPT itself was not tested live.

On this page