Is a conversation-level identifier available to MCP servers in ChatGPT Apps SDK?

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!

I’m working on a similar problem. Would appreciate any updates on this thread and will share any insight as I’m moving forward. Thx.