Serenities AI™
Back to MCP Overview

Sharing Tools

Tools for creating and managing share links.

8 tools

Available Tools

sharing_getResourceShares

Get all shares for a resource. Params: resourceType, resourceId. Returns array of shares with tokens and settings; hasPassword says whether a password is set (the password itself is never returned).

Input Schema

resourceTypestringrequired

Resource type

resourceIdstringrequired

Resource ID

Example Call

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "sharing_getResourceShares",
    "arguments": {
          "resourceType": "example",
          "resourceId": "example"
    }
  }
}
sharing_getShareByResourceId

Public endpoint to check if resource is shared. Params: resourceType, resourceId.

Input Schema

resourceTypestringrequired

Resource type

resourceIdstringrequired

Resource ID

Example Call

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "sharing_getShareByResourceId",
    "arguments": {
          "resourceType": "example",
          "resourceId": "example"
    }
  }
}
sharing_getShareByToken

Access share by token. Params: shareToken (from share URL), password (if protected — send it in the request body, never a URL). Wrong passwords slow down only the caller: after a few misses it answers TOO_MANY_REQUESTS with how long to wait.

Input Schema

shareTokenstringrequired

Share token from the URL

passwordstring

Password if share is protected

Example Call

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "sharing_getShareByToken",
    "arguments": {
          "shareToken": "example",
          "password": "example"
    }
  }
}
sharing_updateShare

Modify share settings. Params: shareId (from getResourceShares), permission (the same or lower), accessType (only RESTRICTED), password (set or change it; never removed), expiresAt (only sooner than the current expiry), allowDownload / allowCopy (only turned off), requireAuth (only turned on). A link can only be narrowed: it is never made public, made to last longer, stripped of its password or sign-in, opened to downloading or copying, or given a higher permission. A revoked or expired link can't be changed. No new link of this kind can be made: share a file or folder with files_setAccessRules / files_setFolderAccessRules instead (this tool only manages links that already exist).

Input Schema

shareIdstringrequired

Share ID to update

accessTypestring

New access type: only RESTRICTED (a link is never made public here)

permissionstring

New permission level: only the same or lower

allowDownloadboolean

Allow downloading: only turned off (never on)

allowCopyboolean

Allow copying: only turned off (never on)

requireAuthboolean

Require login to access: only turned on (never off)

expiresAtstring

New expiration: only sooner than the current one (never removed or moved later)

passwordstring

New password (a link's password is never removed here, only set or changed)

Example Call

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "sharing_updateShare",
    "arguments": {
          "shareId": "example",
          "accessType": "example",
          "permission": "example"
    }
  }
}
sharing_revokeShare

Disable a share (keeps record). Param "shareId". Act only on what the person named or picked.

Input Schema

shareIdstringrequired

Share ID to revoke

Example Call

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "sharing_revokeShare",
    "arguments": {
          "shareId": "example"
    }
  }
}
sharing_deleteShare

Permanently delete share. Param "shareId". Act only on what the person named or picked.

Input Schema

shareIdstringrequired

Share ID to delete

Example Call

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "sharing_deleteShare",
    "arguments": {
          "shareId": "example"
    }
  }
}
sharing_recordActivity

Record that a shared link was viewed or downloaded. Params: shareToken, action ("VIEWED" or "DOWNLOADED"). Nothing else is accepted. A link with a password, or one that needs sign-in, cannot be recorded here: its activity is recorded when a visitor opens it with the right password.

Input Schema

shareTokenstringrequired

Share token from the URL

actionstringrequired

What the visitor did: "VIEWED" or "DOWNLOADED"

Example Call

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "sharing_recordActivity",
    "arguments": {
          "shareToken": "example",
          "action": "example"
    }
  }
}
sharing_getShareActivity

Get access log. Params: shareId, limit (default 50), offset.

Input Schema

shareIdstringrequired

Share ID

limitnumber

Max activities to return (1-100, default: 50)

offsetnumber

Skip activities for pagination

Example Call

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "sharing_getShareActivity",
    "arguments": {
          "shareId": "example",
          "limit": 0,
          "offset": 0
    }
  }
}