# OpenWork Docs ## Docs - [Get a bounded admin organization page](https://openworklabs.com/docs/api-reference/admin/get-a-bounded-admin-organization-page.md): Returns one bounded page of organizations plus required pagination metadata. Search runs across the global organization set without changing the global overview totals. - [Get a bounded admin user page](https://openworklabs.com/docs/api-reference/admin/get-a-bounded-admin-user-page.md): Returns one bounded page of users plus required pagination metadata. Search runs across the global user set and optional billing enrichment stays page-scoped. - [Get admin overview](https://openworklabs.com/docs/api-reference/admin/get-admin-overview.md): Returns the initial admin overview with bounded user data, global totals, and required pagination metadata. Expensive analytics are loaded separately from /v1/admin/metrics. - [Load deferred admin analytics](https://openworklabs.com/docs/api-reference/admin/load-deferred-admin-analytics.md): Calculates analytics that are intentionally deferred from the initial admin page: verified users, worker totals, activity, recurrence, invites, and chart series. - [Create an organization API key](https://openworklabs.com/docs/api-reference/api-keys/create-an-organization-api-key.md): Creates a new API key for the selected organization. - [List organization API keys](https://openworklabs.com/docs/api-reference/api-keys/list-organization-api-keys.md): Returns the API keys that belong to the selected organization. - [Begin connecting the calling member to Google Workspace](https://openworklabs.com/docs/api-reference/authentication/begin-connecting-the-calling-member-to-google-workspace.md): Native-provider twin of the external MCP connect/start route: returns an authorize URL for the browser, using the OAuth client the org saved for this provider. - [Begin connecting the calling member to Microsoft 365](https://openworklabs.com/docs/api-reference/authentication/begin-connecting-the-calling-member-to-microsoft-365.md): Native-provider twin of the external MCP connect/start route: returns an authorize URL for the browser, using the OAuth client the org saved for this provider. - [Begin connecting the calling member's account for a provider](https://openworklabs.com/docs/api-reference/authentication/begin-connecting-the-calling-members-account-for-a-provider.md): Returns an authorize URL to redirect the member's browser to. Requires the org to have already saved an OAuth client for this provider. - [Begin the OAuth handshake for an External MCP Connection](https://openworklabs.com/docs/api-reference/authentication/begin-the-oauth-handshake-for-an-external-mcp-connection.md): Runs RFC 9728 discovery, dynamic client registration if needed, and returns an authorize URL to redirect the admin's browser to. - [Connect an organization Telegram bot](https://openworklabs.com/docs/api-reference/authentication/connect-an-organization-telegram-bot.md): Admin-only. Validates a BotFather token, binds it to one organization worker, encrypts it at rest, and registers a secret-protected webhook. - [Create a one-time Telegram pairing link](https://openworklabs.com/docs/api-reference/authentication/create-a-one-time-telegram-pairing-link.md): Admin-only. Rotates any prior private-chat binding and returns a ten-minute one-time Telegram deep link. - [Disconnect (clear credentials for) an External MCP Connection without removing it](https://openworklabs.com/docs/api-reference/authentication/disconnect-clear-credentials-for-an-external-mcp-connection-without-removing-it.md) - [Disconnect the organization Telegram bot](https://openworklabs.com/docs/api-reference/authentication/disconnect-the-organization-telegram-bot.md): Admin-only. Removes the Telegram webhook and permanently deletes the encrypted bot token, secret, pairing, and delivery state. - [Edit an External MCP Connection](https://openworklabs.com/docs/api-reference/authentication/edit-an-external-mcp-connection.md): Organization-admin-only. Name and direct access changes preserve credentials. URL, authentication type, or credential-mode changes invalidate the old identity atomically. Secret fields are write-only optional replacements and are never returned. expectedUpdatedAt prevents stale edits. - [Get an org's OAuth client configuration for a provider](https://openworklabs.com/docs/api-reference/authentication/get-an-orgs-oauth-client-configuration-for-a-provider.md): Admin-only. Returns setup status, the saved OAuth client id when configured, selected permission features, the callback redirect URI, and the full scope list members will be asked to approve. Never returns the client secret. - [Get the organization Telegram connection](https://openworklabs.com/docs/api-reference/authentication/get-the-organization-telegram-connection.md): Returns redacted bot, worker, webhook, and private-chat pairing status. Bot tokens and webhook secrets are never returned. - [Mint MCP access token](https://openworklabs.com/docs/api-reference/authentication/mint-mcp-access-token.md): Mints an org-scoped MCP access token for the caller's active organization so first-party clients can connect to the Den MCP server without a separate browser OAuth flow. - [OAuth callback for a provider](https://openworklabs.com/docs/api-reference/authentication/oauth-callback-for-a-provider.md): The provider redirects here with code+state after the member consents. Identity is carried entirely by the signed state token, not a session cookie, since the redirect may arrive in a fresh browser context. Serves a small static HTML page that deep-links back to OpenWork. - [OAuth callback for an External MCP Connection](https://openworklabs.com/docs/api-reference/authentication/oauth-callback-for-an-external-mcp-connection.md): The external MCP server redirects here with code+state after the admin consents. Serves a small static HTML page — the admin's Den tab in the background polls connection status and never needs this response body. - [Remove an External MCP Connection](https://openworklabs.com/docs/api-reference/authentication/remove-an-external-mcp-connection.md) - [Resolve deterministic login option](https://openworklabs.com/docs/api-reference/authentication/resolve-deterministic-login-option.md): Returns the deterministic next authentication step for an email address. SSO is preferred before Google, password, GitHub compatibility, and new account creation. - [Save an org's OAuth client for a provider](https://openworklabs.com/docs/api-reference/authentication/save-an-orgs-oauth-client-for-a-provider.md): Admin-only. Lets an org bring its own OAuth app (client id + secret) for a native provider such as google-workspace, instead of relying on an OpenWork-owned client. - [Claim a provisional workspace](https://openworklabs.com/docs/api-reference/bootstrap/claim-a-provisional-workspace.md): Lets a signed-in human claim ownership or membership of a provisional agent-created workspace. - [Create a provisional workspace for agent-first setup](https://openworklabs.com/docs/api-reference/bootstrap/create-a-provisional-workspace-for-agent-first-setup.md): Creates a provisional workspace, setup member, starter skill, and short-lived claim links without requiring an email account first. - [Add a Google Meet link to a Calendar event](https://openworklabs.com/docs/api-reference/capability-sources/add-a-google-meet-link-to-a-calendar-event.md): Updates one primary-calendar event by id to request Google Meet conferencing, using the calling member's connected Google Workspace account. Use this for an existing event that needs a Meet link without creating a duplicate. - [Check the organization Telegram connection](https://openworklabs.com/docs/api-reference/capability-sources/check-the-organization-telegram-connection.md): Returns redacted Telegram connection and pairing status without any credential material. - [Check whether the calling member has connected a provider](https://openworklabs.com/docs/api-reference/capability-sources/check-whether-the-calling-member-has-connected-a-provider.md): Read-only. Never returns a token — only whether a connection exists and which scopes/account it covers. Safe to expose to a harness so it can detect "not connected" and tell the human what to do. - [Create a Gmail draft or threaded reply draft; attach workspace files with body.attachments: [{ filename, mimeType, dataBase64 }], where dataBase64 is the file bytes encoded as standard base64](https://openworklabs.com/docs/api-reference/capability-sources/create-a-gmail-draft-or-threaded-reply-draft;-attach-workspace-files-with-bodyattachments:-[-]-where-database64-is-the-file-bytes-encoded-as-standard-base64.md): Creates a plain-text Gmail draft in the calling member own mailbox, with optional Cc/Bcc recipients and files read from the active workspace. Set threadId to attach the draft to an existing Gmail thread as a reply using the thread's matching subject. Returns needs_connection when the member has not… - [Create a Google Calendar event as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/create-a-google-calendar-event-as-the-calling-member.md): Creates an event on the calling member's primary Google Calendar, using their connected Google Workspace account. Set createMeetLink to true to request a Google Meet conferencing link and return meetLink. - [Create an Outlook calendar event as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/create-an-outlook-calendar-event-as-the-calling-member.md): Creates an event in the calling member's default calendar. Adding attendees can send Microsoft calendar invitations. - [Create an Outlook draft as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/create-an-outlook-draft-as-the-calling-member.md): Creates a draft in the calling member's mailbox. It never sends the message. Microsoft requires delegated Mail.ReadWrite for draft creation. - [Create or replace a OneDrive text file as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/create-or-replace-a-onedrive-text-file-as-the-calling-member.md): Creates or replaces a bounded UTF-8 text file at a path in the calling member's OneDrive. - [Disconnect the calling member's account for a provider](https://openworklabs.com/docs/api-reference/capability-sources/disconnect-the-calling-members-account-for-a-provider.md): Removes the stored credential. Mutation — intentionally kept out of the agent-callable MCP surface (see policy.ts BLOCKED_OPERATION_IDS). - [List External MCP Connections](https://openworklabs.com/docs/api-reference/capability-sources/list-external-mcp-connections.md): scope=usable (default): connections the calling member has been granted (org-wide, direct, or via a team), with per-member connection status. scope=manageable: every org connection with access summaries — workspace owners and admins only. - [List Google Calendar events in a time range as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/list-google-calendar-events-in-a-time-range-as-the-calling-member.md): Lists primary-calendar events for the calling member in a requested ISO time range, using their connected Google Workspace account. - [List messages in a Microsoft Teams chat as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/list-messages-in-a-microsoft-teams-chat-as-the-calling-member.md): Reads recent messages from one Teams chat using delegated Chat.Read permission. - [List Microsoft 365 calendar events as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/list-microsoft-365-calendar-events-as-the-calling-member.md): Lists the calling member's Outlook calendar events in a requested time range. This capability is delegated and read-only. - [List Microsoft Teams chats as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/list-microsoft-teams-chats-as-the-calling-member.md): Lists the calling member's Microsoft Teams chats using delegated Chat.Read permission. - [List or search Gmail messages as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/list-or-search-gmail-messages-as-the-calling-member.md): Reads and searches inbox mail in the calling member's Gmail mailbox, using the Google account they connected through the org Google Workspace connection. Returns needs_connection when the member has not connected their Google account yet or the connection lacks Gmail read permission. - [List or search Outlook mail as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/list-or-search-outlook-mail-as-the-calling-member.md): Reads recent Outlook messages from the calling member's connected Microsoft 365 account. This capability is delegated and read-only. - [List predefined External MCP Connection presets](https://openworklabs.com/docs/api-reference/capability-sources/list-predefined-external-mcp-connection-presets.md): Common third-party MCP servers (Notion, Linear, Stripe, Slack, ...) an admin can add with one click, prefilled with a real name and URL. - [List tools exposed by an External MCP Connection](https://openworklabs.com/docs/api-reference/capability-sources/list-tools-exposed-by-an-external-mcp-connection.md): Admin-only. Uses the connection credential owned by Den to read its live MCP tools/list catalog. Credentials and tool calls are never returned. - [Read a Gmail message with its plain-text body as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/read-a-gmail-message-with-its-plain-text-body-as-the-calling-member.md): Reads one Gmail message, including decoded plain-text body content and attachment metadata, using the calling member's connected Google Workspace account. - [Read a Google Drive file's text content as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/read-a-google-drive-files-text-content-as-the-calling-member.md): Reads text from one Google Drive file, exporting Google Docs editors files as plain text and downloading other files as UTF-8 text with truncation. - [Read a OneDrive text file as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/read-a-onedrive-text-file-as-the-calling-member.md): Returns OneDrive metadata, source link, and bounded UTF-8 text content. Folders, large files, and binary Office files return metadata with an explicit contentUnavailableReason instead of decoding unsafe binary data. - [Read an Outlook message as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/read-an-outlook-message-as-the-calling-member.md): Reads one Outlook message and requests its body as plain text, using the calling member's delegated Microsoft 365 connection. - [Register a new External MCP Connection for the org](https://openworklabs.com/docs/api-reference/capability-sources/register-a-new-external-mcp-connection-for-the-org.md): Admin-only. Registers a third-party MCP server by name + URL and grants access (org-wide, teams, or members). Use GET /v1/mcp-connections/presets for known server URLs (Notion, Linear, Stripe, Sentry, Slack, Context7). For credentialMode per_member, each member connects their own account afterwards… - [Replace who can use an External MCP Connection](https://openworklabs.com/docs/api-reference/capability-sources/replace-who-can-use-an-external-mcp-connection.md): Admin-only. Full-replace semantics: send the complete desired access set (orgWide, or memberIds + teamIds). Team and member ids come from GET /v1/org. - [Search Google Drive files as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/search-google-drive-files-as-the-calling-member.md): Searches the calling member's Google Drive files by name and full text, using their connected Google Workspace account. - [Search OneDrive files as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/search-onedrive-files-as-the-calling-member.md): Searches the calling member's OneDrive by name and content, returning source links. This capability is delegated and read-only. - [Send a message to an existing Microsoft Teams chat as the calling member](https://openworklabs.com/docs/api-reference/capability-sources/send-a-message-to-an-existing-microsoft-teams-chat-as-the-calling-member.md): Sends one message to an existing Teams chat. The operation cannot create a new chat. - [Send a message to the paired Telegram chat](https://openworklabs.com/docs/api-reference/capability-sources/send-a-message-to-the-paired-telegram-chat.md): Sends text only to the organization connection's paired private chat. The caller cannot supply an arbitrary Telegram chat id. - [archive config object](https://openworklabs.com/docs/api-reference/config-objects/archive-config-object.md): archive a config object without removing its history. - [Attach config object to plugin](https://openworklabs.com/docs/api-reference/config-objects/attach-config-object-to-plugin.md): Adds a config object to a plugin when the caller can edit the target plugin. - [Create config object](https://openworklabs.com/docs/api-reference/config-objects/create-config-object.md): Creates a new private config object and initial immutable version. - [Create config object version](https://openworklabs.com/docs/api-reference/config-objects/create-config-object-version.md): Creates a new immutable config object version. - [delete config object](https://openworklabs.com/docs/api-reference/config-objects/delete-config-object.md): delete a config object without removing its history. - [Get config object](https://openworklabs.com/docs/api-reference/config-objects/get-config-object.md): Returns one config object detail when the caller can view it. - [Get config object version](https://openworklabs.com/docs/api-reference/config-objects/get-config-object-version.md): Returns one immutable config object version. - [Get latest config object version](https://openworklabs.com/docs/api-reference/config-objects/get-latest-config-object-version.md): Returns the latest config object version by created_at and id ordering. - [Grant config object access](https://openworklabs.com/docs/api-reference/config-objects/grant-config-object-access.md): Creates or reactivates one access grant for a config object. - [List config object access grants](https://openworklabs.com/docs/api-reference/config-objects/list-config-object-access-grants.md): Lists direct, team, and org-wide grants for one config object. - [List config object plugins](https://openworklabs.com/docs/api-reference/config-objects/list-config-object-plugins.md): Lists plugins that currently include the config object. - [List config object versions](https://openworklabs.com/docs/api-reference/config-objects/list-config-object-versions.md): Returns immutable versions for one config object. - [List config objects](https://openworklabs.com/docs/api-reference/config-objects/list-config-objects.md): Lists current config object projections visible to the current organization member. - [Remove config object from plugin](https://openworklabs.com/docs/api-reference/config-objects/remove-config-object-from-plugin.md): Removes one active plugin membership from a config object. - [restore config object](https://openworklabs.com/docs/api-reference/config-objects/restore-config-object.md): restore a config object without removing its history. - [Revoke config object access](https://openworklabs.com/docs/api-reference/config-objects/revoke-config-object-access.md): Soft-revokes one config object access grant. - [archive connector instance](https://openworklabs.com/docs/api-reference/connectors/archive-connector-instance.md): archive a connector instance. - [Create connector account](https://openworklabs.com/docs/api-reference/connectors/create-connector-account.md): Creates a connector account such as a GitHub App installation binding. - [Create connector instance](https://openworklabs.com/docs/api-reference/connectors/create-connector-instance.md): Creates a new connector instance. - [Create connector mapping](https://openworklabs.com/docs/api-reference/connectors/create-connector-mapping.md): Creates a connector mapping. - [Create connector target](https://openworklabs.com/docs/api-reference/connectors/create-connector-target.md): Creates a connector target under a connector instance. - [Delete connector mapping](https://openworklabs.com/docs/api-reference/connectors/delete-connector-mapping.md): Deletes one connector mapping. - [disable connector instance](https://openworklabs.com/docs/api-reference/connectors/disable-connector-instance.md): disable a connector instance. - [Disconnect connector account](https://openworklabs.com/docs/api-reference/connectors/disconnect-connector-account.md): Disconnects a connector account and cleans up all associated connector-managed records. - [enable connector instance](https://openworklabs.com/docs/api-reference/connectors/enable-connector-instance.md): enable a connector instance. - [Get connector account](https://openworklabs.com/docs/api-reference/connectors/get-connector-account.md): Returns one connector account detail. - [Get connector instance](https://openworklabs.com/docs/api-reference/connectors/get-connector-instance.md): Returns one connector instance detail. - [Get connector instance configuration](https://openworklabs.com/docs/api-reference/connectors/get-connector-instance-configuration.md): Returns the currently configured plugins and import stats for a connector instance. - [Get connector sync event](https://openworklabs.com/docs/api-reference/connectors/get-connector-sync-event.md): Returns one connector sync event detail. - [Get connector target](https://openworklabs.com/docs/api-reference/connectors/get-connector-target.md): Returns one connector target detail. - [Grant connector instance access](https://openworklabs.com/docs/api-reference/connectors/grant-connector-instance-access.md): Creates or reactivates one access grant for a connector instance. - [List connector accounts](https://openworklabs.com/docs/api-reference/connectors/list-connector-accounts.md): Lists connector accounts for the organization. - [List connector instance access grants](https://openworklabs.com/docs/api-reference/connectors/list-connector-instance-access-grants.md): Lists direct, team, and org-wide grants for a connector instance. - [List connector instances](https://openworklabs.com/docs/api-reference/connectors/list-connector-instances.md): Lists connector instances visible to the current member. - [List connector mappings](https://openworklabs.com/docs/api-reference/connectors/list-connector-mappings.md): Lists mappings under a connector target. - [List connector sync events](https://openworklabs.com/docs/api-reference/connectors/list-connector-sync-events.md): Lists connector sync events visible to the current member. - [List connector targets](https://openworklabs.com/docs/api-reference/connectors/list-connector-targets.md): Lists connector targets for one connector instance. - [Remove connector instance](https://openworklabs.com/docs/api-reference/connectors/remove-connector-instance.md): Removes a connector instance and deletes the plugins, mappings, config objects, and bindings associated with it. - [Resync connector target](https://openworklabs.com/docs/api-reference/connectors/resync-connector-target.md): Queues a manual resync for a connector target. - [Retry connector sync event](https://openworklabs.com/docs/api-reference/connectors/retry-connector-sync-event.md): Re-queues one connector sync event. - [Revoke connector instance access](https://openworklabs.com/docs/api-reference/connectors/revoke-connector-instance-access.md): Soft-revokes one connector instance access grant. - [Set connector instance auto-import](https://openworklabs.com/docs/api-reference/connectors/set-connector-instance-auto-import.md): Enables or disables auto-import of new plugins on future push webhooks for a connector instance. - [Update connector instance](https://openworklabs.com/docs/api-reference/connectors/update-connector-instance.md): Updates one connector instance. - [Update connector mapping](https://openworklabs.com/docs/api-reference/connectors/update-connector-mapping.md): Updates one connector mapping. - [Update connector target](https://openworklabs.com/docs/api-reference/connectors/update-connector-target.md): Updates one connector target. - [Delete v1adminusers](https://openworklabs.com/docs/api-reference/delete-v1adminusers.md) - [Create desktop policy](https://openworklabs.com/docs/api-reference/desktop-policies/create-desktop-policy.md) - [Delete desktop policy](https://openworklabs.com/docs/api-reference/desktop-policies/delete-desktop-policy.md) - [List desktop policies](https://openworklabs.com/docs/api-reference/desktop-policies/list-desktop-policies.md) - [Update desktop policy](https://openworklabs.com/docs/api-reference/desktop-policies/update-desktop-policy.md) - [Describe the controlled Den egress diagnostic](https://openworklabs.com/docs/api-reference/diagnostics/describe-the-controlled-den-egress-diagnostic.md): Reports whether the operator-configured public Diagnostics target is available. The target cannot be supplied by the browser. - [Run the controlled Den egress diagnostic](https://openworklabs.com/docs/api-reference/diagnostics/run-the-controlled-den-egress-diagnostic.md): Runs fixed HTTP, redirect, OAuth-shaped, and MCP probes from the Den process to the operator-configured public Diagnostics origin. - [Set the organization egress diagnostic bearer token](https://openworklabs.com/docs/api-reference/diagnostics/set-the-organization-egress-diagnostic-bearer-token.md): Stores the synthetic Diagnostics bearer token encrypted for this organization. The token is never returned by the API. - [Get apiauthoauth2authorize](https://openworklabs.com/docs/api-reference/get-apiauthoauth2authorize.md) - [Get apiauthwell knownoauth authorization server](https://openworklabs.com/docs/api-reference/get-apiauthwell-knownoauth-authorization-server.md) - [Get apiauthwell knownopenid configuration](https://openworklabs.com/docs/api-reference/get-apiauthwell-knownopenid-configuration.md) - [Get mcpadminwell knownoauth protected resource](https://openworklabs.com/docs/api-reference/get-mcpadminwell-knownoauth-protected-resource.md) - [Get mcpagentwell knownoauth protected resource](https://openworklabs.com/docs/api-reference/get-mcpagentwell-knownoauth-protected-resource.md) - [Get mcpwell knownoauth protected resource](https://openworklabs.com/docs/api-reference/get-mcpwell-knownoauth-protected-resource.md) - [Get v1adminorganizations capabilities](https://openworklabs.com/docs/api-reference/get-v1adminorganizations-capabilities.md) - [Get v1devemails](https://openworklabs.com/docs/api-reference/get-v1devemails.md) - [Get v1devemailslast](https://openworklabs.com/docs/api-reference/get-v1devemailslast.md) - [Get well knownoauth authorization server](https://openworklabs.com/docs/api-reference/get-well-knownoauth-authorization-server.md) - [Get well knownoauth authorization serverapiauth](https://openworklabs.com/docs/api-reference/get-well-knownoauth-authorization-serverapiauth.md) - [Get well knownoauth protected resource](https://openworklabs.com/docs/api-reference/get-well-knownoauth-protected-resource.md) - [Get well knownoauth protected resourcemcp](https://openworklabs.com/docs/api-reference/get-well-knownoauth-protected-resourcemcp.md) - [Get well knownoauth protected resourcemcpadmin](https://openworklabs.com/docs/api-reference/get-well-knownoauth-protected-resourcemcpadmin.md) - [Get well knownoauth protected resourcemcpagent](https://openworklabs.com/docs/api-reference/get-well-knownoauth-protected-resourcemcpagent.md) - [Get well knownopenid configuration](https://openworklabs.com/docs/api-reference/get-well-knownopenid-configuration.md) - [Get well knownopenid configurationapiauth](https://openworklabs.com/docs/api-reference/get-well-knownopenid-configurationapiauth.md) - [Apply GitHub discovery selection](https://openworklabs.com/docs/api-reference/github/apply-github-discovery-selection.md): Creates OpenWork plugins and connector mappings from selected discovery candidates. - [Complete GitHub install](https://openworklabs.com/docs/api-reference/github/complete-github-install.md): Completes a GitHub App installation for the current organization and returns visible repositories. - [Create GitHub connector account](https://openworklabs.com/docs/api-reference/github/create-github-connector-account.md): Persists one GitHub App installation as a connector account. - [Get GitHub connector discovery](https://openworklabs.com/docs/api-reference/github/get-github-connector-discovery.md): Analyzes a GitHub connector target and returns discovered plugin candidates. - [Import GitHub plugin MCPs](https://openworklabs.com/docs/api-reference/github/import-github-plugin-mcps.md): Creates/reuses Den External MCP Connections for selected remote MCP servers from a public GitHub plugin URL and publishes one marketplace plugin that references them. - [List GitHub discovery tree entries](https://openworklabs.com/docs/api-reference/github/list-github-discovery-tree-entries.md): Pages through the normalized GitHub repository tree used during discovery. - [List GitHub repositories](https://openworklabs.com/docs/api-reference/github/list-github-repositories.md): Lists repositories visible to one GitHub connector account. - [Preview GitHub plugin MCP import](https://openworklabs.com/docs/api-reference/github/preview-github-plugin-mcp-import.md): Reads a public GitHub plugin URL and returns remote MCP servers that can be imported as Den External MCP Connections. - [Setup GitHub connector](https://openworklabs.com/docs/api-reference/github/setup-github-connector.md): Creates a GitHub connector account, instance, target, and initial mappings in one flow. - [Start GitHub install](https://openworklabs.com/docs/api-reference/github/start-github-install.md): Builds a GitHub App install redirect URL for the current organization. - [Validate GitHub target](https://openworklabs.com/docs/api-reference/github/validate-github-target.md): Validates one repository-branch target before persisting it. - [Get inference settings](https://openworklabs.com/docs/api-reference/inference/get-inference-settings.md): Returns OpenWork Models enablement and limit context for the active organization. - [Update inference settings](https://openworklabs.com/docs/api-reference/inference/update-inference-settings.md): Enables or disables OpenWork Models for the active organization. - [Accept organization invitation](https://openworklabs.com/docs/api-reference/invitations/accept-organization-invitation.md): Accepts an organization invitation for the current signed-in user and switches their active organization to the accepted workspace. - [Cancel organization invitation](https://openworklabs.com/docs/api-reference/invitations/cancel-organization-invitation.md): Cancels a pending organization invitation so the invite link can no longer be used. - [Create organization invitation](https://openworklabs.com/docs/api-reference/invitations/create-organization-invitation.md): Creates or refreshes a pending organization invitation for an email address and sends the invite email. Returns 502 when the invitation row is persisted but the configured email provider failed to send; the client should surface the error and give the user a retry affordance. - [Preview organization invitation](https://openworklabs.com/docs/api-reference/invitations/preview-organization-invitation.md): Returns invitation preview details so a user can inspect an organization invite before accepting it. - [Create organization LLM provider](https://openworklabs.com/docs/api-reference/llm-providers/create-organization-llm-provider.md): Creates a new organization-scoped LLM provider from either a models.dev provider template, pasted JSON/JSONC custom configuration, or MCP-supplied customConfig object. - [Delete organization LLM provider](https://openworklabs.com/docs/api-reference/llm-providers/delete-organization-llm-provider.md): Deletes an organization LLM provider and removes its models and access rules. - [Get LLM provider catalog entry](https://openworklabs.com/docs/api-reference/llm-providers/get-llm-provider-catalog-entry.md): Returns the full models.dev catalog record for one provider, including its config template and model list. - [Get LLM provider connect payload](https://openworklabs.com/docs/api-reference/llm-providers/get-llm-provider-connect-payload.md): Returns one accessible organization LLM provider with the concrete model configuration needed to connect to it. - [List LLM provider catalog](https://openworklabs.com/docs/api-reference/llm-providers/list-llm-provider-catalog.md): Lists the provider catalog from models.dev so an organization can choose which LLM providers to configure. - [List organization LLM providers](https://openworklabs.com/docs/api-reference/llm-providers/list-organization-llm-providers.md): Lists usable providers by default. Pass scope=manageable to list providers the current member can administer in Den. - [Remove LLM provider access grant](https://openworklabs.com/docs/api-reference/llm-providers/remove-llm-provider-access-grant.md): Removes one explicit member or team access grant from an organization LLM provider. - [Test a custom LLM provider endpoint](https://openworklabs.com/docs/api-reference/llm-providers/test-a-custom-llm-provider-endpoint.md): Probes an OpenAI-compatible endpoint (Azure AI Foundry, LiteLLM, vLLM, gateways) with the given credential: normalizes common base-URL mistakes, calls GET /models, and returns the model ids the endpoint actually serves — on Azure these are the deployment names. Nothing is stored. - [Update organization LLM provider](https://openworklabs.com/docs/api-reference/llm-providers/update-organization-llm-provider.md): Updates an existing organization LLM provider, including its provider config, selected models, secret, and access grants. Custom providers accept JSON/JSONC text or an MCP-supplied customConfig object. - [Add marketplace plugin](https://openworklabs.com/docs/api-reference/marketplaces/add-marketplace-plugin.md): Adds a plugin to a marketplace. - [archive marketplace](https://openworklabs.com/docs/api-reference/marketplaces/archive-marketplace.md): archive a marketplace without touching membership history. - [Create marketplace](https://openworklabs.com/docs/api-reference/marketplaces/create-marketplace.md): Creates a new private marketplace and grants the creator manager access. - [Get marketplace](https://openworklabs.com/docs/api-reference/marketplaces/get-marketplace.md): Returns one marketplace detail when the caller can view it. - [Get marketplace resolved](https://openworklabs.com/docs/api-reference/marketplaces/get-marketplace-resolved.md): Returns marketplace detail with plugins and derived source info. - [Grant marketplace access](https://openworklabs.com/docs/api-reference/marketplaces/grant-marketplace-access.md): Creates or reactivates one access grant for a marketplace. - [List marketplace access grants](https://openworklabs.com/docs/api-reference/marketplaces/list-marketplace-access-grants.md): Lists direct, team, and org-wide grants for a marketplace. - [List marketplace plugins](https://openworklabs.com/docs/api-reference/marketplaces/list-marketplace-plugins.md): Lists marketplace memberships and resolved plugin projections. - [List marketplaces](https://openworklabs.com/docs/api-reference/marketplaces/list-marketplaces.md): Lists marketplaces visible to the current organization member. - [Remove marketplace plugin](https://openworklabs.com/docs/api-reference/marketplaces/remove-marketplace-plugin.md): Removes one plugin from a marketplace. - [restore marketplace](https://openworklabs.com/docs/api-reference/marketplaces/restore-marketplace.md): restore a marketplace without touching membership history. - [Revoke marketplace access](https://openworklabs.com/docs/api-reference/marketplaces/revoke-marketplace-access.md): Soft-revokes one marketplace access grant. - [Update marketplace](https://openworklabs.com/docs/api-reference/marketplaces/update-marketplace.md): Updates marketplace metadata. - [Remove organization member](https://openworklabs.com/docs/api-reference/members/remove-organization-member.md): Removes a member from an organization while protecting the owner role from deletion. - [Transfer workspace ownership](https://openworklabs.com/docs/api-reference/members/transfer-workspace-ownership.md): Transfers the protected workspace owner role to another active organization member. Workspace admins may use this endpoint only to recover an organization that has no active owner. - [Update member role](https://openworklabs.com/docs/api-reference/members/update-member-role.md): Changes the role assigned to a specific organization member. - [Delete one of your saved memories.](https://openworklabs.com/docs/api-reference/memory/delete-one-of-your-saved-memories.md): Hard-deletes a memory and its captured context rows. Returns 404 for an id the caller does not own. - [List your saved memories with their provenance.](https://openworklabs.com/docs/api-reference/memory/list-your-saved-memories-with-their-provenance.md): Returns the caller's own memories, newest first, each with its captured context (citations + snippets). - [Save a memory to the memory bank. Body: { content: string (required); tags?: string[]; contexts?: Array<{ snippet: string (required); conversation_id?: string; message_id?: string; origin?: "active_conversation" | "searched_conversation" }> }.](https://openworklabs.com/docs/api-reference/memory/save-a-memory-to-the-memory-bank-body:->-.md): Persists a human-confirmed memory for the calling user. The server sets the source and always stores it as a personal ('user') memory regardless of any scope sent by the client. - [Search your memories with a natural-language query.](https://openworklabs.com/docs/api-reference/memory/search-your-memories-with-a-natural-language-query.md): Runs a relevance-ranked full-text search over the caller's own memories. Returns an empty result set (not an error) when nothing matches. - [Create organization install link](https://openworklabs.com/docs/api-reference/organizations/create-organization-install-link.md): Mints a shareable OpenWork desktop install link for a signed-in organization member. Older active links remain valid unless an owner or admin explicitly requests rotation. - [Download stamped installer](https://openworklabs.com/docs/api-reference/organizations/download-stamped-installer.md): Packages the standard signed OpenWork desktop installer with this organization's bootstrap configuration, or redirects to the verified standard download when Den cannot prepare the bundle. - [Get active organization](https://openworklabs.com/docs/api-reference/organizations/get-active-organization.md): Returns the active organization from the current session, including its owner, the current member record, and their team memberships. - [Read an immutable organization brand asset](https://openworklabs.com/docs/api-reference/organizations/read-an-immutable-organization-brand-asset.md): Serves a capability-signed, content-addressed organization logo or app icon from this Den deployment. - [Resolve install-link configuration](https://openworklabs.com/docs/api-reference/organizations/resolve-install-link-configuration.md): Returns the organization-specific desktop bootstrap configuration for a valid install link token. - [Update organization](https://openworklabs.com/docs/api-reference/organizations/update-organization.md): Updates organization fields that workspace owners are allowed to change, including the display name, allowed invitation email domains, and allowed desktop versions. The slug is immutable to avoid breaking dashboard URLs. - [Upload organization brand assets](https://openworklabs.com/docs/api-reference/organizations/upload-organization-brand-assets.md): Validates and stores owner-supplied wordmark and app icon files inside the Den deployment. - [Patch apiauthscimv2users](https://openworklabs.com/docs/api-reference/patch-apiauthscimv2users.md) - [Patch v1adminorganizations free seats](https://openworklabs.com/docs/api-reference/patch-v1adminorganizations-free-seats.md) - [Patch v1adminorganizations plan](https://openworklabs.com/docs/api-reference/patch-v1adminorganizations-plan.md) - [Add plugin config object](https://openworklabs.com/docs/api-reference/plugins/add-plugin-config-object.md): Adds a config object to a plugin. - [archive plugin](https://openworklabs.com/docs/api-reference/plugins/archive-plugin.md): archive a plugin without touching its historical memberships. - [Configure plugin MCP requirement](https://openworklabs.com/docs/api-reference/plugins/configure-plugin-mcp-requirement.md): Admin-only privileged setup for one declared remote MCP server. The server name and URL are derived from the active plugin config object; the request never supplies a URL and does not start OAuth. - [Create plugin](https://openworklabs.com/docs/api-reference/plugins/create-plugin.md): Creates a plugin and can also create components, share org-wide, and publish to a marketplace in one request. - [Get plugin](https://openworklabs.com/docs/api-reference/plugins/get-plugin.md): Returns one plugin detail when the caller can view it. - [Get resolved plugin](https://openworklabs.com/docs/api-reference/plugins/get-resolved-plugin.md): Lists active plugin memberships with the current config object projection for each item. - [Grant plugin access](https://openworklabs.com/docs/api-reference/plugins/grant-plugin-access.md): Creates or reactivates one access grant for a plugin. - [List plugin access grants](https://openworklabs.com/docs/api-reference/plugins/list-plugin-access-grants.md): Lists direct, team, and org-wide grants for a plugin. - [List plugin config objects](https://openworklabs.com/docs/api-reference/plugins/list-plugin-config-objects.md): Lists plugin memberships and resolved config object projections. - [List plugins](https://openworklabs.com/docs/api-reference/plugins/list-plugins.md): Lists plugins visible to the current organization member. - [Remove plugin config object](https://openworklabs.com/docs/api-reference/plugins/remove-plugin-config-object.md): Removes one config object from a plugin. - [restore plugin](https://openworklabs.com/docs/api-reference/plugins/restore-plugin.md): restore a plugin without touching its historical memberships. - [Revoke plugin access](https://openworklabs.com/docs/api-reference/plugins/revoke-plugin-access.md): Soft-revokes one plugin access grant. - [Update plugin](https://openworklabs.com/docs/api-reference/plugins/update-plugin.md): Updates plugin metadata. - [Post apiauthoauth2register](https://openworklabs.com/docs/api-reference/post-apiauthoauth2register.md) - [Post apiauthscimv2users](https://openworklabs.com/docs/api-reference/post-apiauthscimv2users.md) - [Post register](https://openworklabs.com/docs/api-reference/post-register.md) - [Put apiauthscimv2users](https://openworklabs.com/docs/api-reference/put-apiauthscimv2users.md) - [Put v1adminorganizations capabilities](https://openworklabs.com/docs/api-reference/put-v1adminorganizations-capabilities.md) - [Get accessible resource snapshot](https://openworklabs.com/docs/api-reference/resources/get-accessible-resource-snapshot.md): Returns IDs and update timestamps for cloud resources visible to the current organization member. - [Create organization role](https://openworklabs.com/docs/api-reference/roles/create-organization-role.md): Creates a custom organization role with a named permission map. - [Delete organization role](https://openworklabs.com/docs/api-reference/roles/delete-organization-role.md): Deletes a custom organization role after confirming that no members or pending invitations still depend on it. - [Update organization role](https://openworklabs.com/docs/api-reference/roles/update-organization-role.md): Updates a custom organization role and propagates role name changes to members and pending invitations. - [Create or rotate an organization SCIM token](https://openworklabs.com/docs/api-reference/scim/create-or-rotate-an-organization-scim-token.md): Creates the organization SCIM User provisioning connector if needed and returns a freshly rotated bearer token. SCIM Groups are not enabled yet. - [Delete an organization SCIM connection](https://openworklabs.com/docs/api-reference/scim/delete-an-organization-scim-connection.md): Deletes the organization SCIM connection and invalidates the current bearer token. - [Get organization SCIM connection](https://openworklabs.com/docs/api-reference/scim/get-organization-scim-connection.md): Returns the SCIM User provisioning base URL and current connector metadata for the selected organization. SCIM Groups are not enabled yet. - [Run organization SCIM drift reconciliation](https://openworklabs.com/docs/api-reference/scim/run-organization-scim-drift-reconciliation.md): Checks local SCIM-managed identities for inconsistent organization membership or provider-account state and records unresolved drift for retry or manual review. - [Add skill to skill hub](https://openworklabs.com/docs/api-reference/skill-hubs/add-skill-to-skill-hub.md): Adds an existing organization skill to a skill hub so hub members can discover and use it. - [Create skill hub](https://openworklabs.com/docs/api-reference/skill-hubs/create-skill-hub.md): Creates a skill hub that can group skills and assign access to specific members or teams. - [Delete skill hub](https://openworklabs.com/docs/api-reference/skill-hubs/delete-skill-hub.md): Deletes a skill hub and removes its access links and skill links. - [Grant skill hub access](https://openworklabs.com/docs/api-reference/skill-hubs/grant-skill-hub-access.md): Grants a specific member or team access to a skill hub. - [List skill hubs](https://openworklabs.com/docs/api-reference/skill-hubs/list-skill-hubs.md): Lists the skill hubs the current member can access, along with linked skills and access metadata. - [Remove skill from skill hub](https://openworklabs.com/docs/api-reference/skill-hubs/remove-skill-from-skill-hub.md): Removes a skill from a skill hub without deleting the underlying skill itself. - [Revoke skill hub access](https://openworklabs.com/docs/api-reference/skill-hubs/revoke-skill-hub-access.md): Revokes one member or team access entry from a skill hub. - [Update skill hub](https://openworklabs.com/docs/api-reference/skill-hubs/update-skill-hub.md): Updates a skill hub's display name or description. - [Create skill](https://openworklabs.com/docs/api-reference/skills/create-skill.md): Creates a new skill in the organization from markdown content and optional sharing visibility. - [Delete skill](https://openworklabs.com/docs/api-reference/skills/delete-skill.md): Deletes one organization skill when the caller is allowed to manage it. - [List skills](https://openworklabs.com/docs/api-reference/skills/list-skills.md): Lists the skills the current member can view, including owned skills, shared skills, and skills available through hub access. - [Update skill](https://openworklabs.com/docs/api-reference/skills/update-skill.md): Updates a skill's markdown content and-or sharing visibility while keeping derived metadata in sync. - [Delete organization SSO connection](https://openworklabs.com/docs/api-reference/sso/delete-organization-sso-connection.md): Deletes the active organization SSO connection. - [Get organization SAML SP metadata](https://openworklabs.com/docs/api-reference/sso/get-organization-saml-sp-metadata.md): Returns the generated Service Provider metadata for the current organization's SAML connection. - [Get organization SSO connection](https://openworklabs.com/docs/api-reference/sso/get-organization-sso-connection.md): Returns the current organization SSO connection and setup URLs. - [Register organization OIDC SSO](https://openworklabs.com/docs/api-reference/sso/register-organization-oidc-sso.md): Registers or replaces the active organization OIDC SSO provider. - [Register organization SAML SSO](https://openworklabs.com/docs/api-reference/sso/register-organization-saml-sso.md): Registers or replaces the active organization SAML SSO provider. - [Request an SSO domain verification token](https://openworklabs.com/docs/api-reference/sso/request-an-sso-domain-verification-token.md): Returns the DNS TXT verification token for the current organization's SSO provider. - [Verify the organization SSO domain](https://openworklabs.com/docs/api-reference/sso/verify-the-organization-sso-domain.md): Checks the provider's DNS TXT record and marks the domain as verified when present. - [Check den-api health](https://openworklabs.com/docs/api-reference/system/check-den-api-health.md): Returns a lightweight health payload for den-api. - [Check den-api readiness](https://openworklabs.com/docs/api-reference/system/check-den-api-readiness.md): Verifies den-api can reach its database dependency. - [Get desktop app version metadata](https://openworklabs.com/docs/api-reference/system/get-desktop-app-version-metadata.md): Returns the minimum supported desktop app version and the latest desktop app version published with this Den API build. - [Create team](https://openworklabs.com/docs/api-reference/teams/create-team.md): Creates a team inside an organization and can optionally attach existing organization members to it. - [Delete team](https://openworklabs.com/docs/api-reference/teams/delete-team.md): Deletes a team and removes its related hub-access and team-membership records. - [Update team](https://openworklabs.com/docs/api-reference/teams/update-team.md): Updates a team's name and-or membership list within an organization. - [Get adoption metrics](https://openworklabs.com/docs/api-reference/telemetry/get-adoption-metrics.md): Returns org adoption metrics: member count, pending invites, active members in 7d and 30d windows, and a 12-week weekly active member trend. - [Get usage analytics](https://openworklabs.com/docs/api-reference/telemetry/get-usage-analytics.md): Returns Layer 1 (who is using AI) and Layer 2 (how often) analytics for the active org: member counts, active members, session and task volume in 7d/30d windows, average task duration, and a 12-week trend of active members, sessions, and tasks. - [Ingest telemetry events](https://openworklabs.com/docs/api-reference/telemetry/ingest-telemetry-events.md): Receives a batch of telemetry events from the OpenWork app or workers. Auth provides org and member identity. Unknown event types and disallowed fields are dropped. Always returns 204. - [List telemetry dimension values](https://openworklabs.com/docs/api-reference/telemetry/list-telemetry-dimension-values.md): Returns unique analytics dimension values for the active organization, such as project labels for the project selector. - [Get current user](https://openworklabs.com/docs/api-reference/users/get-current-user.md): Returns the currently authenticated user and active session details for the caller. - [Get current user's desktop config](https://openworklabs.com/docs/api-reference/users/get-current-users-desktop-config.md): Returns the authenticated desktop app restrictions for the caller's active organization. - [List current user's organizations](https://openworklabs.com/docs/api-reference/users/list-current-users-organizations.md): Lists the organizations visible to the current user and marks which organization is currently active. - [Send current user the OpenWork desktop download link](https://openworklabs.com/docs/api-reference/users/send-current-user-the-openwork-desktop-download-link.md): Emails the authenticated user a link to download the OpenWork desktop app. - [Update current user profile](https://openworklabs.com/docs/api-reference/users/update-current-user-profile.md): Updates the signed-in user's display name. - [GitHub webhook ingress](https://openworklabs.com/docs/api-reference/webhooks/github-webhook-ingress.md): Verifies a GitHub App webhook signature against the raw request body, then records any relevant sync work. - [Telegram bot webhook ingress](https://openworklabs.com/docs/api-reference/webhooks/telegram-bot-webhook-ingress.md): Verifies Telegram's per-connection secret header, durably claims update_id, and acknowledges before queued worker processing begins. - [Create worker](https://openworklabs.com/docs/api-reference/workers/create-worker.md): Creates a local worker or cloud worker for the active organization and returns the initial tokens needed to connect to it. - [Delete worker](https://openworklabs.com/docs/api-reference/workers/delete-worker.md): Deletes a worker and cascades cleanup for its tokens, runtime records, and provider-specific resources. - [Get worker](https://openworklabs.com/docs/api-reference/workers/get-worker.md): Returns one worker from the active organization together with its latest provisioned instance details. - [Get worker connection tokens](https://openworklabs.com/docs/api-reference/workers/get-worker-connection-tokens.md): Returns connection tokens and the resolved OpenWork connect URL for an existing worker. - [Get worker runtime status](https://openworklabs.com/docs/api-reference/workers/get-worker-runtime-status.md): Fetches runtime version and status information from a specific worker's runtime endpoint. - [List workers](https://openworklabs.com/docs/api-reference/workers/list-workers.md): Lists the workers that belong to the caller's active organization, including each worker's latest known instance state. - [Record worker heartbeat](https://openworklabs.com/docs/api-reference/workers/record-worker-heartbeat.md): Accepts signed heartbeat and recent-activity updates from a worker so Den can track worker health and recent usage. - [Update worker](https://openworklabs.com/docs/api-reference/workers/update-worker.md): Renames a worker, but only when the caller is the user who originally created that worker. - [Upgrade worker runtime](https://openworklabs.com/docs/api-reference/workers/upgrade-worker-runtime.md): Forwards a runtime upgrade request to a specific worker and returns the worker runtime's response. - [Changelog](https://openworklabs.com/docs/changelog.md) - [Enterprise](https://openworklabs.com/docs/cloud/enterprise.md): Deploy OpenWork on your own infrastructure - [Get started with OpenWork Cloud](https://openworklabs.com/docs/cloud/get-started.md): Connect the desktop app to your OpenWork Cloud org and unlock shared workspaces, marketplaces, and shared providers - [Managing members and RBAC](https://openworklabs.com/docs/cloud/members-and-rbac.md): Invite teammates, create teams, and control Cloud access with owners, admins, members, and custom roles - [Model Context Protocol (MCP)](https://openworklabs.com/docs/cloud/run-in-the-cloud/cloud-mcp.md): The OpenWork MCP server is a hosted endpoint that lets your AI agent use OpenWork from Claude Code, Codex, Claude Desktop, Cursor, VS Code, or any MCP client. - [Connect OpenWork MCP from a remote machine](https://openworklabs.com/docs/cloud/run-in-the-cloud/connect-openwork-mcp-remote-machine.md): Authenticate OpenWork Connect for OpenCode on a remote host while using a browser on your local machine - [Deploying a shared workspace](https://openworklabs.com/docs/cloud/run-in-the-cloud/shared-workspace.md): Launch a cloud worker in OpenWork Cloud and open it from the desktop app - [Microsoft Entra SCIM provisioning](https://openworklabs.com/docs/cloud/scim-microsoft-entra.md): Provision OpenWork members and teams from Microsoft Entra ID - [Security and operations](https://openworklabs.com/docs/cloud/security-and-operations.md): Review OpenWork Cloud security posture, access governance, and availability expectations - [Adding a custom LLM provider](https://openworklabs.com/docs/cloud/share-with-your-team/custom-llm-provider.md): Create a custom provider definition in OpenWork Cloud and import it into the desktop app - [Desktop policies](https://openworklabs.com/docs/cloud/share-with-your-team/desktop-policies.md): Use OpenWork Cloud to control desktop app capabilities for members and teams. - [Adding a managed LLM provider](https://openworklabs.com/docs/cloud/share-with-your-team/managed-llm-provider.md): Create an org-managed provider in OpenWork Cloud and import it into the desktop app - [Sharing MCP connections with your team](https://openworklabs.com/docs/cloud/share-with-your-team/shared-mcp-connections.md): Share Notion, Linear, Stripe, Exa, or any MCP server in OpenWork Cloud with Individual accounts by default, or One org account when everyone should act as the same account - [Team templates](https://openworklabs.com/docs/cloud/share-with-your-team/team-templates.md): Create reusable workspace templates for teams in OpenWork Cloud - [Microsoft Entra SAML SSO](https://openworklabs.com/docs/cloud/sso-microsoft-entra.md): Connect Microsoft Entra ID to OpenWork Cloud with SAML - [Team quickstart: from new org to a team skill](https://openworklabs.com/docs/cloud/team-quickstart.md): Create an org on OpenWork Cloud, invite teammates into teams, publish a plugin with a skill to a marketplace, and trigger it from the desktop app - [OpenWork MCP for ChatGPT](https://openworklabs.com/docs/model-context-protocol/chatgpt.md): ChatGPT MCP setup for OpenWork Connect, so ChatGPT Desktop can use your org's shared OpenWork capabilities through OAuth. - [OpenWork MCP for Claude Code](https://openworklabs.com/docs/model-context-protocol/claude-code.md): Claude Code MCP setup for OpenWork Connect, with OAuth access to your org's Gmail, Calendar, Drive, shared MCP connections, skills, and Cloud resources. - [OpenWork MCP for Claude Desktop](https://openworklabs.com/docs/model-context-protocol/claude-desktop.md): Claude Desktop MCP setup for OpenWork Connect, using custom connectors or mcp-remote to reach your org's shared capabilities. - [OpenWork MCP for Codex](https://openworklabs.com/docs/model-context-protocol/codex.md): Codex MCP setup for OpenWork Connect, with OAuth access to your org's Gmail, Calendar, Drive, shared connections, skills, and Cloud resources. - [OpenWork MCP for Cursor](https://openworklabs.com/docs/model-context-protocol/cursor.md): Cursor MCP setup for OpenWork Connect on Cursor Web and Agents, plus why Cursor Desktop OAuth is not currently supported. - [OpenWork MCP for Gemini CLI](https://openworklabs.com/docs/model-context-protocol/gemini-cli.md): Gemini CLI MCP setup for OpenWork Connect, with OAuth access to your org's Gmail, Calendar, Drive, shared connections, skills, and Cloud resources. - [OpenWork MCP for OpenCode](https://openworklabs.com/docs/model-context-protocol/opencode.md): OpenCode MCP setup for OpenWork Connect, OpenWork's hosted MCP server for Gmail, Calendar, Drive, shared connections, skills, and Cloud resources. - [OpenWork MCP for VS Code](https://openworklabs.com/docs/model-context-protocol/vs-code.md): VS Code MCP setup for OpenWork Connect, with OAuth access to your org's Gmail, Calendar, Drive, shared connections, skills, and Cloud resources. - [OpenWork MCP for Windsurf](https://openworklabs.com/docs/model-context-protocol/windsurf.md): Windsurf MCP setup for OpenWork Connect through mcp-remote and OAuth access to your org's shared capabilities. - [OpenWork MCP for Zed](https://openworklabs.com/docs/model-context-protocol/zed.md): Zed MCP setup for OpenWork Connect through mcp-remote and OAuth access to your org's shared capabilities. - [Roadmap](https://openworklabs.com/docs/roadmap.md): The roadmap for the OpenWork desktop app, portable capabilities, hosted workspaces, and every surface where work happens. - [Add a custom LLM](https://openworklabs.com/docs/start-here/connect-your-stack/add-a-custom-llm.md): How to connect a custom provider with OpenWork - [Add a custom MCP server](https://openworklabs.com/docs/start-here/connect-your-stack/add-an-mcp-server.md): Connect a custom or local MCP server that is not available through OpenWork Connect - [Add Anthropic API key](https://openworklabs.com/docs/start-here/connect-your-stack/add-anthropic-api-key.md): Create an Anthropic API key and use it in OpenWork - [Connect your services](https://openworklabs.com/docs/start-here/connect-your-stack/connect-services.md): Sign in to OpenWork and connect the accounts your agent can use - [Connect Slack as a custom MCP](https://openworklabs.com/docs/start-here/connect-your-stack/connect-slack-mcp.md): Advanced local setup for Slack's MCP server with a pre-registered OAuth app - [Enable Exa search](https://openworklabs.com/docs/start-here/connect-your-stack/enable-exa-search.md) - [Sign in with ChatGPT](https://openworklabs.com/docs/start-here/connect-your-stack/sign-in-with-chatgpt.md): How to use ChatGPT OAuth with Openwork - [Control the browser](https://openworklabs.com/docs/start-here/do-work-with-it/control-the-browser.md): How to use OpenWork to automate the built-in browser - [Cross-chat memory](https://openworklabs.com/docs/start-here/do-work-with-it/cross-chat-memory.md): How OpenWork can answer questions about past sessions. - [Import a skill](https://openworklabs.com/docs/start-here/do-work-with-it/import-a-skill.md): How to import an external skill into your workspace in OpenWork - [Share skills with your team](https://openworklabs.com/docs/start-here/do-work-with-it/share-your-setup.md): Learn how to save skills to OpenWork Cloud for your teammates - [Workflows](https://openworklabs.com/docs/start-here/do-work-with-it/workflows.md): Use chat and session groups to keep OpenWork organized. - [Get started](https://openworklabs.com/docs/start-here/get-started.md): Privacy-first, open-source alternative to Claude Cowork. - [GitHub connector for Helm](https://openworklabs.com/docs/start-here/github-connector-helm.md): Create a GitHub App and configure the OpenWork EE Helm chart for repository connectors. - [Missing docs?](https://openworklabs.com/docs/start-here/missing-docs.md): Request a page or contribute one yourself. - [Missing languages](https://openworklabs.com/docs/start-here/missing-languages.md): See which OpenWork languages ship today and help us improve them. - [Brand an on-prem deployment](https://openworklabs.com/docs/start-here/on-prem-branding.md): Configure an organization name, wordmark, accent color, and desktop icon without depending on a public CDN. - [Self-host](https://openworklabs.com/docs/start-here/self-host.md): Run OpenWork on your own server or infrastructure. - [Diagnostic prompts](https://openworklabs.com/docs/start-here/troubleshooting/diagnostic-prompts.md): Paste-able prompts that let your agent debug OpenWork issues on its own. ## OpenAPI Specs - [openapi](https://openworklabs.com/docs/openapi.json)