Read a chat session's messages
Session metadata plus a bounded window of its raw messages.
index on each message is its ABSOLUTE position in the stored transcript, not its position in the returned page: trace spans reference messages positionally, so this read and /trace join on that number.
A transcript that could not be read reports transcriptUnavailable: true and a null messageCount — never 0, which would claim the conversation is empty.
Authorizations
MCPJam API key (sk_…). Create one at Settings → API keys. Guest sessions cannot use the API, and API keys cannot manage other API keys.
Path Parameters
The chat session's id — the same id POST /chat-sessions/messages returns and GET /chat-sessions lists.
Query Parameters
Optional project scope. When set, a session in another project answers 404 — the same answer as absence, so this is never an existence oracle.
Start the window at this absolute transcript index.
x >= 0Messages to return, 1–200. Defaults to 50.
1 <= x <= 200Response
The session and one window of its messages.
read_only, auto, null NULL — never 0 — when the transcript could not be read. Zero would claim the conversation is empty.

