answerQuestion
ChatGPTCreate an answer post for an existing individual Q&A question in a Datasite project. - Use getQAStatus first if you need to find the questionId. - This tool creates an answer-team post through Q&A; the returned post status tells you whether it is still in progress. - Use getQAStatus with assignedToCurrentUserOnly=true to find questions assigned to the current user. - If the post status is IN_PROGRESS, no additional answers/drafts can be created. Question cannot be "answered further". - If the user mentions that they want to attach documents to the answer, the listFolderContents should be called to list the available documents BEFORE creating answer post. DocumentIds need to be passed into the tool to properly attach the documents. - Once an answer is posted, provide the user with a URL to go to the UI to view the posted answer.
checkMoveStatus
ChatGPTCheck the current status of a bulk move operation using its operation ID. Returns immediately with the current state: PENDING, IN_PROGRESS, BLOCKED, SUSPENDED, COMPLETE or ERRORED. Use this after initiating a bulk move operation (>100 items) to track progress. If the status is not COMPLETE or ERRORED, call this tool again after a few seconds to check for completion.
createContent
ChatGPTCreate filerooms, folders, or a folder hierarchy in a Datasite project. - No parentId: Top-level entries become filerooms - With parentId: Entries become folders under that parent contentPaths is a flat JSON array where each entry is a full path string plus optional type and published flag: - path (required): Full slash-separated path, e.g. "/Financial/Q1" or "/Legal" - type (optional): Override type for the final segment of this path — FILEROOM or FOLDER (auto-inferred if omitted) - published (optional): Whether the final segment of this path is visible to non-admin users (defaults to false). Not applicable in PREPARE projects — publishing is not supported. Shared ancestor segments are deduplicated automatically. To set type or published (non-PREPARE only) on an ancestor, list it as its own entry alongside its children (e.g. {"path":"/Financial","type":"FILEROOM"} and {"path":"/Financial/Q1"}). Example: [{"path":"/Financial/Q1"},{"path":"/Financial/Q2"},{"path":"/Legal"}] PREPARE projects use the Staging Folder (sandbox) exclusively. Do not create new filerooms or folders outside the sandbox on PREPARE projects — create content only within the Staging Folder. Do not suggest publishing content for PREPARE projects — publishing is not a supported feature in PREPARE.
getAccessControl
ChatGPTGet access control information for a Datasite project. Supports three scopes: - PROJECT: List all roles, and optionally the project's available feature accesses catalog - PERMISSIONS: Show which roles can access a specific document or folder (requires metadataId) - ROLE: Show details for a specific role including feature accesses (requires roleId)
getMembers
ChatGPTGet members of a project or subscription. Returns user membership details including status and role. Use scope=PROJECT for project members or scope=SUBSCRIPTION for subscription members. Optionally provide a userId to get a single member's details.
getMyQandaTeam
ChatGPTIdentify which Q&A team (if any) the current user is on for a project. Returns the team's id, name, type (QUESTION or ANSWER), active flag, and allowedToSubmit flag. When onQandaTeam is false, the current user is not associated with a Q&A team on this project — do not attempt Q&A actions that require team membership. Call this before other Q&A team-scoped tools (e.g. getQandaGateContext) so you know which team id to use. Call this before submitQuestionOnBehalf. Use submitQuestionOnBehalf only when this tool returns onQandaTeam=true, teamType=ANSWER, active=true, and allowedToSubmit=true; otherwise use manageQuestion for question-team draft creation.
getProjectOverview
ChatGPTGet a comprehensive overview of a Datasite project in a single call. Returns project details plus optional sections: role listing, member count, and Q&A summary. Use listFolderContents to explore the fileroom/folder hierarchy.
getQAStatus
ChatGPTGet Q&A information for a Datasite project. Returns either: - A specific question with all posts and answers (when questionId is provided) - An overview with question listing, summary dashboard, and categories (when questionId is omitted) Use manageQuestion for creating or updating questions.
getQandaGateContext
ChatGPTResolve the workflow gate context for a Q&A team (QUESTION or ANSWER) in a given category, for the current user. Call getMyQandaTeam first to identify which team id the current user belongs to; do not iterate over multiple team ids. Looks up the team's workflow for the category, identifies the first gate, and checks whether the current user is a member of that gate. Returns teamId, teamType, gateId (first gate in the workflow), workflowIndex, and an isMemberOfFirstGate flag. When isMemberOfFirstGate is true, gateMemberUserIds lists every user in that gate (including the caller); when false, gateMemberUserIds is omitted and reason explains why.
grantFeatureAccess
ChatGPTGrant a role-level feature access permission in a Datasite project. This controls which roles can access specific project features (e.g. Q&A, bulk download) — it does not activate paid product features like AI-powered content search. Use getAccessControl(scope=PROJECT, includeFeatureAccesses=true) to discover available keys.
inviteUser
ChatGPTInvite a user to a Datasite project by email address and assign them a role. You can specify the role by name (e.g., "Reviewer") or by ID. When using roleName, the server resolves it to the correct role ID automatically. Role names are resolved to IDs automatically.
listFolderContents
ChatGPTList the contents of filerooms and folders in a Datasite project. Returns item metadata — names, IDs, types (FILEROOM, FOLDER, DOCUMENT, PLACEHOLDER, SANDBOX), statuses, file types, and publishing states — but NOT document text. Use this to navigate the folder tree, see what documents exist and their metadata, or find where content is located before creating, uploading, or modifying it. To find information inside documents (e.g. clauses, risks, or specific content), use searchDocuments instead. Behavior by parameters: - No metadataId: Returns the top-level fileroom listing with IDs. - With metadataId: Returns the direct children of that folder or fileroom. - depth (default 1, max 10): Controls how many levels deep to traverse. depth=1 returns immediate children only. depth > 1 performs a BFS traversal of the folder hierarchy, returning all items with depth and path columns so you can understand the full structure in one call instead of browsing level by level. - foldersOnly (default true): When true, only folder-type items (FILEROOM, FOLDER, SANDBOX, INBOX) are returned. Set to false to include documents in the results. Applies at all depth levels. The listing may include items with type SANDBOX (named "Staging Folder"). A sandbox is a staging area where content is uploaded before being published to regular filerooms. PREPARE projects use the sandbox exclusively for uploads — all content must go through the Staging Folder.
listProjects
ChatGPTList all Datasite projects you have access to, optionally enriched with subscription context. Use this to find projects by name, state, or to discover which subscription a project belongs to. Set includeSubscriptionInfo=true to include subscription details.
listSubscriptions
ChatGPTList all Datasite subscriptions you have access to. Returns subscription name, ID, and allowed offering types. Use this to find which subscription to use when creating a new project.
manageQuestion
ChatGPTCreate, update, or categorize Q&A questions in a Datasite project. action=CREATE: requires categoryId (use getQAStatus with includeCategories=true to list categories). action=UPDATE: requires questionId. Supports closing/reopening via the closed param. action=CREATE_CATEGORY: requires categoryName.
manageRole
ChatGPTCreate or update a role in a Datasite project. action=CREATE: requires name. action=UPDATE: requires roleId, optional name to rename.
moveContent
ChatGPTMove files or folders to a different location within a Datasite project. This is a destructive operation. User confirmation is recommended before execution. When moving a folder, all children are moved automatically. Moved items keep their current permissions and publishing status. Each result includes a url to review the moved item at its new location. Supports moving up to 100 total items (including all children) for synchronous moves. If bulk move is enabled, moves exceeding 100 items are processed asynchronously and return an operation ID.
searchDocuments
ChatGPTSearch across document content in a Datasite project using AI-powered semantic search with reranking. Returns matching text passages from inside documents with relevance scores, page numbers, and source paths. Use this whenever you need to find information, clauses, risks, or answers within documents — not for navigating folder structure. If the feature is not enabled on the project, this tool returns guidance to contact Datasite — always attempt the search rather than skipping it.
searchHelpDocs
ChatGPTWhen to use: Customer-facing help centre articles explaining how Datasite features work — e.g. "how do I create a tracker," "what is a fileroom," "why can't I invite this user," "what does this setting do." Does NOT search content inside a customer's project or data room — use searchDocuments for that. What this tool returns: A list of scored passages, ordered by relevance (highest first). Each result includes: score, matching_text (the actual passage content — use this for your answer), source_url, article_id, title, and section. article_id, title and section are sometimes blank or missing (older indexed passages) — still cite the source_url when this happens. Lower-scoring results may be less relevant; don't treat all returned results as equally authoritative. Response requirements: Attach source_url close to the claim it supports, rather than batching all citations at the end of the response. Name the article title and section alongside each citation when available. Never restate help content without a citation. If no results are returned, tell the user no help article matched. Do not fall back on your own knowledge of Datasite. If results are returned but none are actually relevant to the query (check scores and content, not just presence of results), tell the user no relevant help article was found — do not stretch a low-relevance passage to fit the question. Before sending your response, confirm every claim has a source_url attached, or revise.
setupProject
ChatGPTCreate a new Datasite project and optionally set up its initial content structure in one call. IMPORTANT: Before calling this tool, always call listSubscriptions first. If the user has any subscriptions, you MUST ask them to choose one and pass its ID as subscriptionId. Do not call this tool without a subscriptionId unless listSubscriptions returned an empty list. A Staging Folder (sandbox) is automatically created for the project. If contentPaths is provided, paths default to folders inside the sandbox unless an explicit type override is provided. contentPaths is a flat JSON array where each entry is a full path string plus optional type and published flag: - path (required): Full slash-separated path, e.g. "/Financial/Q1" or "/Legal" - type (optional): Override type for the final segment of this path — FILEROOM or FOLDER (auto-inferred if omitted) - published (optional): Whether the final segment of this path is visible to non-admin users (defaults to false). Not applicable in PREPARE projects — publishing is not supported. Shared ancestor segments are deduplicated automatically. To set type on an ancestor, list it as its own entry alongside its children (e.g. {"path":"/Financial","type":"FILEROOM"} and {"path":"/Financial/Q1"}). Example: [{"path":"/Financial/Q1"},{"path":"/Financial/Q2"},{"path":"/Legal"}] Do not suggest publishing content for PREPARE projects — publishing is not a supported feature in PREPARE.
submitQuestionOnBehalf
ChatGPTSubmit one or more Q&A questions on behalf of a question team from an answer-team admin context. - BEFORE using this tool, call getMyQandaTeam for the project. Use submitQuestionOnBehalf only when getMyQandaTeam returns onQandaTeam=true, teamType=ANSWER, active=true, and allowedToSubmit=true. - If getMyQandaTeam shows the current user is not on an active ANSWER team, do not use submitQuestionOnBehalf. - If getMyQandaTeam shows the current user is in the QUESTION team, use manageQuestion for question-team draft creation instead. - If the user mentions that they want to attach documents to the questions, the listFolderContents should be called to list the available documents BEFORE creating the questions. Each question has it's own documentIds collection that is there to express what documents the user wants to link to each question. - Use getMyQandaTeam to confirm the current user's team context, and getQAStatus with includeCategories=true to find visible category names and ids. If a requested category is not returned, tell the user it may either not exist or may not be accessible to them; do not state that it definitely does not exist. - Use getQAStatus to get data about the question teams currently configured in the Q&A enabled project. - Use getQandaGateContext to find the correct gate/workflow information for the respective category in the question team. - Questions must be supplied through the questions array, even when importing a single question. - Imported questions are created as in-progress question-team drafts assigned to the first gate members. - User must be notified that the question will be created as a draft and will be assigned to all team members in the corresponding question team workflow, based on category. - It is possible you will be extracting text from an Excel file. If so, make sure the question content is left totally unchanged -- do not modify it in any way unless requested to do so. - Do not provide the user with any URLs to look at the questions in the platform/UI once they have been posted. Since they're submitted as drafts, they become visible to question team members only. - After the questions are created, let the user know they're saved as drafts and won't be visible to any answer team member—including the user—until the question team submits them
updateContent
ChatGPTUpdate a document or folder in a Datasite project. Supports renaming, and supports changing publishing status only for non-PREPARE projects. Identify the item by metadataId or human-readable path (e.g., "Financial/Q1 Reports"). Do not suggest publishing status changes for PREPARE projects — publishing is not a supported feature in PREPARE.
updateMembership
ChatGPTActivate or deactivate a user's membership in a Datasite project. Use getMembers to find user IDs. Status must be ACTIVATED or DEACTIVATED.
updatePermissions
ChatGPTGet a link to manage content permissions for a Datasite project via the web application. Optionally provide a fileroom or folder ID to navigate directly to its permissions page. Returns a browser URL where the user can review and update permissions manually.
uploadContent
ChatGPTGet a link to upload documents to a Datasite project via the web application. Specify the destination as a human-readable path (e.g., "Financial/Q1 Reports") or a direct folder ID. Returns a browser URL that opens the target folder in the Datasite web application, where the user can complete the upload. For PREPARE projects, uploads must target the Staging Folder (sandbox). Browse content first to find the sandbox, then use its path or ID as the destination.
acceptDisclaimer
ClaudecreateContent
ClaudegetAccessControl
ClaudegetMembers
ClaudegetProjectOverview
ClaudegetQAStatus
ClaudegrantFeatureAccess
ClaudeinviteUser
ClaudelistFolderContents
ClaudelistProjects
ClaudelistSubscriptions
ClaudemanageQuestion
ClaudemanageRole
ClaudesearchDocuments
ClaudesetupProject
ClaudeupdateContent
ClaudeupdateMembership
ClaudeupdatePermissions
ClaudeuploadContent
Claude