account_status
ChatGPTReport the account connected to ContinueVault and its plan and credit status. Use this when you need to confirm the connected account or check available credits. Use browse_sessions to retrieve a conversation list. Takes no inputs. Returns a stable account ID that matches the one shown in the browser extension and dashboard, email, plan, and credit usage and reset date when available; unavailable details are marked rather than guessed. Does not change the account or return authentication secrets.
branch_thread
ChatGPTCreate a separate thread that inherits history through a chosen conversation. Use this when you want to explore a different direction while preserving the parent; use join_threads to combine two independent histories. Supply thread_id or session_id, or both to choose among multiple memberships; name optionally names the child. With no session or custom name, an existing thread may be returned instead of creating a duplicate branch. A custom name requests a new branch. Repeating can create another child.
browse_sessions
ChatGPTList saved conversations by message activity date and optional title or platform. Use this when you want a chronological list; use search_transcripts to search message content. after includes its boundary, before excludes its boundary, and timezone interprets date-only bounds. query filters titles, not message text. sort selects newest or oldest; limit is 1–100 and cursor continues a page. No saved conversations are changed.
configure_thread
ChatGPTReplace selected continuation settings for a saved thread. Use this when you want future briefings to use different files saved in the account, role labels, briefing settings, or continuation rules; use edit_thread_metadata to change the display name or status. thread_id selects the thread. Accepted saved file references, briefing configuration (JSON object), and rules (JSON array) replace supplied settings. Omitted values stay unchanged; an empty reference list clears those references. Membership is not changed.
continue_thread
ChatGPTRetrieve a briefing to resume a saved conversation and update its thread state. Use this when you want to continue earlier work; use get_messages for an exact message range without continuation changes. choice accepts a chat URL, session ID, or thread name or ID; n_messages limits recent messages. It may update the thread: link this conversation, record a continuation marker, reorder sessions, and overwrite the saved summary and title. peek=true skips linking and continuation markers but can still create or repair thread structure. Calling it again may make further changes. Briefing preparation may send saved messages to an external language-model provider. Configured files saved in the account may also be returned, including with peek=true.
create_thread
ChatGPTCreate or name a thread from a saved conversation. Use this when you want to give a conversation a named continuation thread; use branch_thread for a separate path from existing history. session_id selects the conversation and name supplies the display name. May reuse and rename an existing thread. If the conversation is still being saved, it is not treated as empty. An active name collision is refused. Calling it again may make further changes.
detach_session
ChatGPTRemove every thread membership of one saved conversation. Use this when you want the conversation detached from all threads; use unlink_session to remove one membership. session_id identifies the conversation. Saved messages are not deleted, but the conversation can be left without any thread membership.
edit_thread_metadata
ChatGPTChange a thread's display name, topics, status, or role label. Use this when you want to rename, archive, reactivate, or label an existing thread; use configure_thread for briefing settings. thread_id selects the thread; topics is a JSON array of strings and status is active or archived. Supplied fields replace saved values; omitted or empty fields stay unchanged. At least one change is required. The thread ID and memberships are preserved.
find_files
ChatGPTFind saved files by name, type, date, platform, or origin in the connected account. Use this when you do not know which conversation contains a file; use list_files to browse a known conversation or thread. name matches file names, kind selects a file category or MIME type, has_bytes selects content availability, and thread optionally narrows the search. sort, cursor and limit control pages. Matching copies are grouped with their source conversations; content is read with get_file.
find_session_threads
ChatGPTFind the threads that contain a saved conversation. Use this when you know the session_id and need its existing memberships; use list_threads to browse threads without a session. Returns matching thread metadata without creating, linking, or repairing memberships.
get_file
ChatGPTRead saved file content or a batch ZIP from the connected account. Use this when you have file identifiers from list_files or find_files and want the content in the conversation; use get_file_url for a download link. file_id selects one file; file_ids is a comma-separated batch, or session_id/thread_id selects a batch. mode=file returns a file resource, image adds image content for raster images only, inline returns paginated text, and inline_base64 returns paginated encoded bytes. File/image modes allow up to 1,000,000 decoded bytes. cursor/max_chars control inline pages. Client display support varies. No download grant is created.
get_file_url
ChatGPTCreate an expiring, single-use download link for saved file content. Use this when you want a downloadable link; use get_file to read content in the conversation. file_id selects one file; file_ids is a comma-separated batch, or session_id/thread_id selects a batch. A batch also creates a temporary encrypted ZIP. This writes temporary server state; repeating creates another grant. Account access, content retention, expiry, and file-size limits apply.
get_messages
ChatGPTRead the original messages in a selected range of one saved conversation. Use this when you know the session and message numbers, such as a range returned by search; use search_transcripts when you need to locate a passage. session_id identifies the conversation; start_msg and end_msg include both endpoints. max_chars bounds the response; pass next_cursor as cursor to continue a truncated result. Only conversations in the connected account are accessible; no messages or thread memberships are changed.
join_threads
ChatGPTCreate a new thread combining two existing thread histories. Use this when you want an independent combined thread; use merge_threads to merge a branch back into its parent. source history comes before target history; name optionally labels the result. Both originals remain active and independent. Repeating can create another combined thread.
link_session
ChatGPTAdd a saved conversation to a thread while retaining its other memberships. Use this when the conversation should belong to another thread as well; use move_session to replace a membership. Supply session_id and thread_id; position is 1-based and -1 appends a new link. An existing link can be repositioned, changing the order in that thread. Saved messages are not changed.
list_files
ChatGPTList saved file entries from one conversation or thread. Use this when you know where the files were shared; use find_files when their location is unknown. Provide exactly one of session_id or thread_id, with cursor and limit for pages of up to 50 entries. Results include identifiers for get_file and indicate whether file content is available; this call does not return the content.
list_threads
ChatGPTList saved threads with their metadata and conversation counts. Use this when you want to browse threads; use find_session_threads to find memberships of a known conversation. status and topic filter the results; limit is 1–20. Results are ordered by recent conversation activity. No thread state is changed.
merge_threads
ChatGPTMerge a branch back into its recorded parent thread. Use this when you want to bring branch history into the parent; use join_threads to create an independent combined thread instead. thread_id selects the branch and target must be its recorded parent. Adds the branch history to the parent's history and marks the branch merged. Unrelated targets and already-merged branches are refused.
move_session
ChatGPTMove a saved conversation to an existing thread. Use this when you want to replace its selected previous membership; use link_session to add a membership without moving it. session_id selects the conversation and move_to the target. The automatically created thread that keeps this conversation addressable cannot be removed by moving it. If already in the target, position can reorder it (1-based; -1 keeps its position). A new target membership is appended. Other memberships and saved messages are preserved.
research_sweep
ChatGPTSearch saved conversations for several questions in one request. Use this when you need evidence for related questions; use search_transcripts for a single query or browse_sessions for a chronological list. queries accepts up to 20 questions; limit_per_query is 1–10 and budget_chars bounds the response. response_mode=evidence returns excerpts and references, synthesis returns a generated answer, and both returns the answer with evidence. Hybrid/vector matching sends questions to an external embedding provider; synthesis/both also sends questions and retrieved passages to an external language-model provider. source is transcripts; project, platform, after and before filter saved content. This searches the connected account, not the public web, and does not edit saved conversations.
resolve_reference
ChatGPTResolve a saved chat URL, conversation ID, or thread name to identifiers for follow-up tools. Use this when you have a reference but do not know its session or thread ID; use browse_sessions when you have no reference. ref supplies the reference and kind is auto, session, or thread. Ambiguous matches are reported rather than selected. An identifier alone does not confirm that saved content exists. This does not generate a briefing or change thread membership.
search_thread
ChatGPTSearch saved conversation text within a specified thread. Use this when you know the thread containing the discussion; use search_transcripts for account-wide search. thread is required and query supplies the search text. mode selects keyword, vector, or hybrid matching; operator is AND or OR for keyword terms, and limit is 1–20. A branch includes inherited parent history through its branch point; strict_membership=true searches direct members only. Returns excerpts with message references without editing saved conversations. Hybrid/vector matching may send query text to an external embedding provider.
search_transcripts
ChatGPTSearch saved conversation text across the connected account. Use this when you want to locate a passage without knowing its thread; use search_thread for a known thread or browse_sessions for a date-based conversation list. query matches message text; project, platform, after and before narrow results. mode selects keyword, vector, or hybrid matching; limit is 1–20. An optional thread includes inherited history unless strict_membership=true. Returns ranked excerpts and message references, not a complete inventory. Hybrid/vector matching may send query text to an external embedding provider.
unlink_session
ChatGPTRemove one specified conversation's membership from one specified thread. Use this when you want to remove that link while retaining other memberships; use detach_session to remove them all. Requires exact session_id and thread_id. The last remaining membership cannot be removed by this tool. Other memberships and saved messages are preserved.