We’re building a ChatGPT app using the Apps SDK, where our backend is connected to the GPT model through MCP (Model Context Protocol) as a middleware layer.
Our use case requires conversation persistence. The app helps users iteratively modify a diagram across multiple turns (for example: “add students table”, “add teacher’s table”, “add a relationship between the,”, etc.). Each change builds on the previous state of the diagram and entire chat history.
To support this, we need a way for our MCP server / tool implementation to reliably recognize that multiple tool invocations belong to the same ChatGPT conversation.
Is there any stable conversation or thread identifier exposed to MCP?
-
Something available in request metadata or headers
-
Consistent across multiple tool calls within the same conversation
Right now, without a consistent conversation ID, it’s hard to safely associate successive MCP tool calls with the same diagram state.
Is there:
-
An officially supported conversation ID in the Apps SDK or MCP spec?
-
Or a recommended pattern for maintaining per-conversation state across multiple MCP tool invocations?
Would genuniely appreciate your help. Thanks!