Collections
Tools for static and dynamic collections — creating them, adding records, reading their contents and permissions, and the comment thread on a collection.
This page covers 16 tools, 16 of them in the default tool list, and 2 destructive.
- Status — In the default tool list means the tool is one of the ~200 Aprimo advertises to every agent out of the box, so the agent discovers and calls it on its own. Available on request means the tool is registered and fully callable, but sits outside that default list — call it by name, or ask Aprimo to extend the list your tenant is served.
- Both statuses work identically when called. Status affects discovery, not capability or authorization.
- Visibility is not authorization. Every tool call executes as the authenticated user, and any tool can return an authorization error if that user lacks rights to the record, task, or file. See the MCP Tool Permission Map.
- Destructive tools are labelled as such. They delete or irreversibly overwrite data, and will not act unless the call sets both
confirmedandconfirmedDestructivetotrue. - Activity and Project labels vary by tenant. Where this page says Activity or Project, your tenant's own configured terminology is substituted at runtime.
Aprimo's MCP Server exposes far more tools than most MCP clients handle well — many degrade or truncate their tool list well below the full catalogue. Rather than let a client truncate arbitrarily, Aprimo advertises a curated set of roughly 200 tools covering the tasks customers most commonly automate. Everything outside that set remains fully supported and callable by name; it simply isn't offered up front. If your integration leans on a tool that is available on request, talk to your Aprimo Customer Success Manager about extending the advertised list for your tenant.
Tools at a Glance
| Tool | Status | What it does |
|---|---|---|
add_records_to_collection | Default | Adds assets (records) to an existing static Aprimo collection. |
create_collection | Default | Creates a new static Aprimo collection. |
create_collection_comment | Default | Creates a new comment on an Aprimo collection. |
delete_collection | Default | Destructive. Permanently deletes an Aprimo collection by id or name. |
delete_collection_comment | Default | Destructive. Permanently deletes a comment from an Aprimo collection. |
get_collection | Default | Gets one Aprimo collection's full detail (name, description, type, status, owner) by id or by name. |
get_collection_comment | Default | Gets one comment on an Aprimo collection by collection id and comment id. |
get_collection_comments_status | Default | Gets the count of unread comments (for the calling user) on an Aprimo collection. |
get_collection_records | Default | Lists the assets (records) inside one Aprimo collection: title, deep link, dates, content type, metadata fields. |
list_collection_comments | Default | Lists the comments on an Aprimo collection. |
list_collection_permissions | Default | Lists the full current permissions of an Aprimo collection (per-user and per-user-group grants, public permission, the calling user's own read/modify rights, content-sharing settings) by id or name. |
list_collections | Default | Lists the Aprimo collections visible to the user: name, description, type, id. |
mark_collection_comments_read | Default | Marks every comment on an Aprimo collection created on or before a given date as read (for the calling user). |
search_collections | Default | Searches Aprimo collections with a filter expression sent in the request body (equivalent to list_collections, but usable when the filter is too large for a query string). |
update_collection | Default | Edits an existing Aprimo collection by id or name. |
update_collection_comment | Default | Edits the text of an existing comment on an Aprimo collection. |
add_records_to_collection
In the default tool list
Adds assets (records) to an existing static Aprimo collection. This modifies data. Always confirm with the user which records go into which collection before calling this tool.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | Yes | The collection id (32-char hex / GUID). |
recordIds | string | Yes | The record ids to add (32-char hex each, e.g. from search results). |
Returns:
| Field | Type | Description |
|---|---|---|
collectionId | string | |
addedRecordIds | array of string |
create_collection
In the default tool list
Creates a new static Aprimo collection. This modifies data. Always confirm the collection name (and description, if any) with the user before calling this tool.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
name | string | Yes | The name for the new collection, exactly as the user stated it. |
description | string | No | Optional description for the collection. |
Returns:
| Field | Type | Description |
|---|---|---|
id | string | |
name | string |
create_collection_comment
In the default tool list
Creates a new comment on an Aprimo collection. This modifies data. Always confirm the comment text with the user before calling this tool.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | Yes | The collection id (32-char hex / GUID) to comment on. |
message | string | Yes | Text of the comment, exactly as the user stated it. |
Returns:
| Field | Type | Description |
|---|---|---|
id | string | |
collectionId | string | |
message | string |
delete_collection
In the default tool list · Destructive
Permanently deletes an Aprimo collection by id or name. This cannot be undone. Requires both confirmed=true and confirmedDestructive=true, after explicitly confirming the exact collection with the user.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | No | The collection id (32-char hex / GUID) to delete. Provide exactly one of collectionId or name. |
name | string | No | The collection's exact name (case-insensitive). Provide exactly one of collectionId or name. |
confirmed | boolean | No | Must be true to proceed. Set to false (or omit) to get a confirmation gate error, then call again with confirmed=true after the user has explicitly confirmed the exact collection. |
confirmedDestructive | boolean | No | Must also be true (in addition to confirmed) — deleting a collection is permanent and cannot be undone. Set only after stating the exact collection to the user and getting explicit go-ahead. |
Returns:
| Field | Type | Description |
|---|---|---|
id | string | |
name | string (optional) | |
deleted | boolean |
This tool deletes or irreversibly overwrites data in the live tenant; the change cannot be rolled back through the API. It will not act unless the call sets both confirmed and confirmedDestructive to true.
delete_collection_comment
In the default tool list · Destructive
Permanently deletes a comment from an Aprimo collection. This cannot be undone. Requires both confirmed=true and confirmedDestructive=true, after explicitly confirming the exact comment with the user.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | Yes | The collection id (32-char hex / GUID). |
commentId | string | Yes | The comment id (32-char hex / GUID) to delete. |
confirmed | boolean | No | Must be true to proceed. Set to false (or omit) to get a confirmation gate error, then call again with confirmed=true after the user has explicitly confirmed the exact comment. |
confirmedDestructive | boolean | No | Must also be true (in addition to confirmed) — deleting a comment is permanent and cannot be undone. Set only after stating the exact comment to the user and getting explicit go-ahead. |
Returns:
| Field | Type | Description |
|---|---|---|
id | string | |
collectionId | string | |
deleted | boolean |
This tool deletes or irreversibly overwrites data in the live tenant; the change cannot be rolled back through the API. It will not act unless the call sets both confirmed and confirmedDestructive to true.
get_collection
In the default tool list
Gets one Aprimo collection's full detail (name, description, type, status, owner) by id or by name. Use after list_collections, or pass name directly when the user names the collection. Not a comment (get_collection_comment), comments status (get_collection_comments_status), or its records (get_collection_records).
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | No | The collection id (32-char hex / GUID). Provide exactly one of collectionId or name. |
name | string | No | The collection's exact name (case-insensitive) — not guaranteed unique; ambiguous matches hard-fail. Provide exactly one of collectionId or name. |
Returns:
| Field | Type | Description |
|---|---|---|
id | string | |
name | string | |
description | string | |
type | string | |
status | string (optional) | |
ownerId | string (optional) | |
createdOn | string | |
modifiedOn | string |
get_collection_comment
In the default tool list
Gets one comment on an Aprimo collection by collection id and comment id.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | Yes | The collection id (32-char hex / GUID). |
commentId | string | Yes | The comment id (32-char hex / GUID), from list_collection_comments. |
Returns:
| Field | Type | Description |
|---|---|---|
id | string | |
collectionId | string | |
contextId | integer (optional) | |
message | string | |
read | boolean (optional) | Whether the calling user has read this comment. Null if not requested/available. |
version | integer (optional) | |
createdOn | string (optional) | |
modifiedOn | string (optional) |
get_collection_comments_status
In the default tool list
Gets the count of unread comments (for the calling user) on an Aprimo collection.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | Yes | The collection id (32-char hex / GUID). |
Returns:
| Field | Type | Description |
|---|---|---|
collectionId | string | |
unreadComments | integer |
get_collection_records
In the default tool list
Lists the assets (records) inside one Aprimo collection: title, deep link, dates, content type, metadata fields. Use after list_collections when the user wants to see a collection's contents. Display format: one block per record — title in bold, then deep link, status, content type, and dates as bullets.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | Yes | The collection id (32-char hex / GUID, from list_collections). |
Returns:
| Field | Type | Description |
|---|---|---|
collectionId | string | |
count | integer | |
items | array of RecordPayload | |
items[].id | string | |
items[].title | string | |
items[].status | string | |
items[].contentType | string | |
items[].createdOn | string | |
items[].modifiedOn | string | |
items[].deepLink | string | |
items[].fields | map of string |
list_collection_comments
In the default tool list
Lists the comments on an Aprimo collection. Use to look up a comment's id before calling get/update/delete_collection_comment.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | Yes | The collection id (32-char hex / GUID). |
sort | string | No | Optional sort expression, e.g. "createdOn". Omit for the endpoint's default order. |
skip | integer | No | Number of items to skip, for paging. Defaults to 0. |
take | integer | No | Maximum number of items to return. Omit for the endpoint's default page size. |
Returns:
| Field | Type | Description |
|---|---|---|
collectionId | string | |
count | integer | |
items | array of CommentPayload | |
items[].id | string | |
items[].collectionId | string | |
items[].contextId | integer (optional) | |
items[].message | string | |
items[].read | boolean (optional) | Whether the calling user has read this comment. Null if not requested/available. |
items[].version | integer (optional) | |
items[].createdOn | string (optional) | |
items[].modifiedOn | string (optional) |
list_collection_permissions
In the default tool list
Lists the full current permissions of an Aprimo collection (per-user and per-user-group grants, public permission, the calling user's own read/modify rights, content-sharing settings) by id or name. This is a read; to change these permissions use preview_collection_permissions/apply_collection_permissions instead.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | No | The collection id (32-char hex / GUID). Provide exactly one of collectionId or name. |
name | string | No | The collection's exact name (case-insensitive). Provide exactly one of collectionId or name. |
Returns:
| Field | Type | Description |
|---|---|---|
collectionId | string | |
permissions | array of CollectionUserPermissionEntryPayload | |
permissions[].userId | string | |
permissions[].permission | string | |
groupsPermissions | array of CollectionGroupPermissionEntryPayload | |
groupsPermissions[].groupId | string | |
groupsPermissions[].permission | string | |
publicPermission | string (optional) | |
canRead | boolean (optional) | |
canModify | boolean (optional) | |
contentSharingEnabled | boolean (optional) | |
contentSharingExpiryDate | string (optional) | |
contentPermission | string (optional) |
list_collections
In the default tool list
Lists the Aprimo collections visible to the user: name, description, type, id. Use when the user asks what collections exist or wants to pick one. Display format: one line per collection — name in bold, then type and description.
Parameters: none.
Returns:
| Field | Type | Description |
|---|---|---|
count | integer | |
items | array of CollectionPayload | |
items[].id | string | |
items[].name | string | |
items[].description | string | |
items[].type | string | |
items[].createdOn | string | |
items[].modifiedOn | string |
mark_collection_comments_read
In the default tool list
Marks every comment on an Aprimo collection created on or before a given date as read (for the calling user). This modifies data (read state).
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | Yes | The collection id (32-char hex / GUID). |
lastReadCommentDate | string | Yes | ISO-8601 timestamp; comments created on or before this date are marked as read. |
Returns:
| Field | Type | Description |
|---|---|---|
collectionId | string | |
unreadComments | integer |
search_collections
In the default tool list
Searches Aprimo collections with a filter expression sent in the request body (equivalent to list_collections, but usable when the filter is too large for a query string). Use when the user wants collections matching a specific filter, optionally including archived ones.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
filter | string | No | Optional filter expression (DAM query syntax), e.g. "ModifiedOn in today". Omit to match every collection. |
sort | string | No | Optional sort expression, e.g. "Name". Omit for the endpoint's default order. |
skip | integer | No | Number of items to skip, for paging. Defaults to 0. |
take | integer | No | Maximum number of items to return. Omit for the endpoint's default page size. |
includeArchived | boolean | No | When true, includes archived collections in the results. Defaults to false. |
Returns:
| Field | Type | Description |
|---|---|---|
count | integer | |
items | array of CollectionPayload | |
items[].id | string | |
items[].name | string | |
items[].description | string | |
items[].type | string | |
items[].createdOn | string | |
items[].modifiedOn | string |
update_collection
In the default tool list
Edits an existing Aprimo collection by id or name. Only the fields provided are changed — omitted fields keep their current value. This modifies data. Always confirm the exact collection and the new values with the user before calling this tool.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | No | The collection id (32-char hex / GUID) to edit. Provide exactly one of collectionId or name. |
name | string | No | The collection's current exact name (case-insensitive), used to look it up. Provide exactly one of collectionId or name. |
newName | string | No | New name for the collection. Omit to leave the name unchanged. |
description | string | No | New description for the collection. Omit to leave it unchanged. |
status | string | No | New lifecycle status: "Active" or "Archived". Omit to leave it unchanged. Use delete_collection (not "Deleted") to remove a collection. |
tag | string | No | New custom XML tag. Omit to leave it unchanged. |
searchAllLanguages | boolean | No | When set, matches this (dynamic) collection's search expression against records in all languages. Omit to leave it unchanged. |
Returns:
| Field | Type | Description |
|---|---|---|
id | string | |
name | string (optional) |
update_collection_comment
In the default tool list
Edits the text of an existing comment on an Aprimo collection. This modifies data. Always confirm the new text with the user before calling this tool.
Parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
collectionId | string | Yes | The collection id (32-char hex / GUID). |
commentId | string | Yes | The comment id (32-char hex / GUID) to edit. |
content | string | Yes | New text for the comment. |
Returns:
| Field | Type | Description |
|---|---|---|
id | string | |
collectionId | string | |
content | string |
Related
- Aprimo MCP Server — configuration, connection details, and authentication
- MCP Tool Permission Map — the Aprimo permissions that make each tool visible to your agent
- REST API vs. MCP — choosing the right integration approach for your agent