Skip to main content
Glama
ibm-ecm

Core Content Services MCP Server

Official
by ibm-ecm

IBM Content Services MCP Server

Overview

The IBM Content Services MCP Server provides a standardized interface that enables IBM FileNet Content Manager (FNCM) capabilities to be used by AI models. The server is available in four specialized configurations to support different workflows:

  • Core Server: Comprehensive document and content management operations

  • Property Extraction and Classification Server: Document analysis for property extraction and classification

  • Legal Hold Server: Legal hold management

  • AI Document Insight Server: Uses virtual table capabilities for Content Assistant vector search combined with property/metadata search, along with document summarization, comparison, and Q&A

Each server can be deployed independently or in combination to support your specific use cases.


Related MCP server: laserfiche-mcp

Server Types and Capabilities

Core Server (core-cs-mcp-server)

Purpose: Comprehensive document and content management operations

Use Cases:

  • General document lifecycle management (create, update, check-in, check-out, delete)

  • Folder operations and document filing

  • Search and retrieval across the repository

  • Metadata and class management

  • Resources support for exposing documents as LLM context

Property Extraction and Classification Server (property-extraction-and-classification-cs-mcp-server)

Purpose: Document analysis for property extraction and classification

Dependencies: Requires Core Server for document update operations (e.g., update_document_properties)

Use Cases:

  • Automated property extraction from document content

  • Document classification and reclassification workflows

  • Content-based metadata enrichment

Purpose: Legal hold management

Use Cases:

  • Creating and managing legal holds

  • Placing documents and objects under hold

  • Tracking held objects

AI Document Insight Server (ai-document-insight-cs-mcp-server)

Purpose: Uses virtual table capabilities for Content Assistant vector search combined with property/metadata search, along with document summarization, comparison, and Q&A

Dependencies:

  • Requires Core Server for document operations

  • Requires Persistent Text Extract add-on

  • Requires Content Assistant add-on

  • Requires FileNet 5.7.0 IF003 or later

Use Cases:

  • Content-based document search with metadata filtering using Content Assistant API vector search

  • Content Assistant API document summaries

  • Content Assistant API document comparison and analysis


Tools List

Core Server Tools

The Core Server provides 26 tools organized into the following categories:

Document Management (11 tools)

  • get_document_versions: Retrieves a document's version history, including major and minor version numbers and document IDs for each version.

  • get_document_text_extract: Extracts text content from a document by retrieving its text extract annotations. If multiple text extracts are found, they are concatenated. IMPORTANT: This functionality requires the Persistent Text Extract add-on to be installed in your object store. See the Prerequisites section for more details.

  • create_document: Creates a new document in the content repository with specified properties. Can upload files as the document's content if file paths are provided. Requires first calling determine_class and get_class_property_descriptions.

  • update_document_properties: Updates an existing document's properties without changing its class. Requires first calling get_class_property_descriptions to get valid properties for the document's current class.

  • update_document_class: Changes a document's class in the content repository. WARNING: Changing a document's class can result in loss of properties if the new class does not have the same properties as the old class. Requires first calling determine_class to get the new class_identifier.

  • checkin_document: Checks in a document that was previously checked out. Can upload new content files during check-in if file paths are provided.

  • checkout_document: Checks out a document for editing. Can download the document content to a specified folder path if provided.

  • cancel_document_checkout: Cancels a document checkout in the content repository, releasing the reservation.

  • get_document_properties: Retrieves a document from the content repository by ID or path, returning the document object with its properties.

  • delete_document_version: Deletes a specific document version in the content repository using its document ID.

  • delete_version_series: Deletes an entire version series (all versions of a document) in the content repository using the version series ID.

Folder Management (7 tools)

  • create_folder: Creates a new folder in the content repository with specified name, parent folder, and optional class identifier.

  • delete_folder: Deletes a folder from the repository using its ID or path.

  • unfile_document: Removes a document from a folder without deleting the document itself.

  • file_document: Files a document into a folder.

  • update_folder: Updates an existing folder's properties. Requires first calling determine_class and get_class_property_descriptions.

  • get_folder_documents: Get documents contained in a folder.

  • get_folder_detail: Retrieves detailed information about a folder.

Class/Metadata Management (3 tools)

  • list_root_classes: Lists root classes.

  • determine_class: Determines the appropriate class based on the available classes and the content of the user's message or context document.

  • get_class_property_descriptions: Retrieves detailed descriptions of all properties for a specified class.

Search (5 tools)

  • get_searchable_property_descriptions: Retrieves descriptions of properties that can be used in search operations.

  • repository_object_search: Searches for repository objects based on specified criteria.

  • document_search: Searches for documents based on content and/or metadata criteria using full-text CBR search. Can combine content-based search with property filters for precise document discovery. Returns only released versions of documents. Special characters in content search terms are automatically escaped.

  • lookup_documents_by_name: Searches for documents by matching keywords against document names. Returns a ranked list of matching documents with confidence scores. Useful when you know part of a document's name but not its exact ID or path.

  • lookup_documents_by_path: Searches for documents based on their location in the folder hierarchy. Matches keywords against folder names and document containment names at each path level. Particularly useful when the user describes a document using path separators (e.g., "/Folder1/Subfolder/document").

Property Extraction and Classification Server Tools

The Property Extraction and Classification Server provides 2 specialized tools for AI-powered document workflows:

  • property_extraction: Extracts document class, properties metadata, and text content for AI-based property value extraction. This tool determines the document's class, fetches class metadata to identify all available properties (filtering out system and hidden properties), and retrieves the document's text extract content.

  • list_all_classes: Lists all available classes for a specific root class type. Essential for document reclassification workflows where you need to match document content to the most appropriate class.

The Legal Hold Server provides 6 tools for legal compliance management:

  • create_hold: Creates a new legal hold with a specified display name.

  • delete_hold: Removes a legal hold and releases all held objects.

  • add_object_to_hold: Places an object (document, folder, etc.) under a legal hold.

  • delete_object_from_hold: Removes an object from a legal hold without deleting the hold itself.

  • get_held_objects_for_hold: Lists all objects currently under a specific legal hold.

  • get_holds_by_name: Searches for legal holds by their display name.

AI Document Insight Server Tools

The AI Document Insight Server provides 6 specialized tools that leverage virtual table capabilities for Content Assistant operations:

  • document_smart_search: Performs a hybrid search combining vector (semantic) search and metadata filtering to find documents. Use this to find relevant documents based on meaning rather than just keywords. Returns only released versions of documents ranked by a GenaiScore.

  • document_quick_summary: Generates a concise AI-powered summary for one or more provided document IDs. Use this to give the user a quick overview of content without reading the full text.

  • document_compare_insights: Compares exactly two documents to identify similarities, differences, and version changes. Returns an AI-generated analysis.

  • document_qa_global: Answers natural language questions by scanning the entire document repository. Use this for broad questions where the specific documents are not known or when looking for patterns across the entire document repository.

  • document_qa_specific: Answers natural language questions based strictly on the context of specific, selected document. Use this when the user asks about a specific file.

  • documents_qa_multiple: Answers natural language questions based strictly on the context of selected documents. Use this when the user asks about a set of files.


Resources

What are Resources?

Resources provide read-only access to document content for LLM context. Documents in configured folders are automatically exposed as MCP resources, allowing AI models to reference them during conversations without explicit tool calls.

Important: Resources functionality requires the Persistent Text Extract Add-on to be installed in your object store to retrieve document content. See the Prerequisites section for installation details.

Server-Specific Resource Support

Each server type supports resources with specific folder defaults and optional prefix validation:

Server Type

Default Folder

Prefix Requirement

Description

Core

/resources

None

Accepts all documents without prefix validation

AI Document Insight

/resources/AIDocumentInsight

DI_

Only loads documents starting with DI_

Legal Hold

/resources/LegalHold

LH_

Only loads documents starting with LH_

Property Extraction & Classification

/resources/Classification

CL_, PE_

Only loads documents starting with CL_ or PE_

Configuration

RESOURCES_FOLDER

Override the default resource folder path for any server:

RESOURCES_FOLDER=/custom/path  # Override default folder path

The RESOURCES_FOLDER value is the path of the folder in your FileNet object store where you should upload your resource documents. The server will automatically discover and register all documents in this folder.

Documents in the configured folder will be:

  • Automatically registered as resources when the server starts

  • Available to the LLM with URIs following the pattern: ibm-cs://{object_store}/documents/{folder_path}/{document_name}

  • Displayed with names in the format: [IBM CS] {document_name}

RESOURCES_PREFIX_VALIDATION

Control how the server validates document name prefixes:

RESOURCES_PREFIX_VALIDATION=warn  # Default: warn

Validation Modes:

  • strict: Documents without matching prefixes are skipped and logged as errors. Recommended for production to ensure clean separation between server types.

  • warn (Default): Documents without matching prefixes are skipped with warnings logged. Good for development and testing.

  • off: No prefix validation performed. All documents in the folder are loaded regardless of naming.

Example for Legal Hold Server:

# Uses default folder: /resources/LegalHold
# Only accepts documents starting with LH_
# Strict validation - logs errors for invalid documents
RESOURCES_PREFIX_VALIDATION=strict

Security Guidelines

Access Control: The resources folder should only be modifiable by administrative users to prevent tampering with content that will be used by AI models. Configure appropriate folder permissions in your FileNet object store to:

  • Restrict write/modify access to administrators only

  • Allow read access for the MCP server business user

  • Prevent unauthorized users from adding, modifying, or deleting resource documents

Use Cases

Resources are ideal for providing AI models with reference documentation:

  • Policy documents for compliance guidance

  • Classification guidelines for document categorization

  • Standard operating procedures

  • Regulatory requirements

  • Best practices documentation

Example

For Core Server (default folder: /resources, no prefix required):

Documents in that folder:

  • /resources/data_classification_policy.txt

  • /resources/retention_policy.txt

For Property Extraction & Classification Server (default folder: /resources/Classification, requires CL_ or PE_ prefix):

Documents with proper prefixes:

  • /resources/Classification/CL_data_classification_policy.txt

  • /resources/Classification/CL_retention_policy.txt

Or to load files without prefix validation:

RESOURCES_PREFIX_VALIDATION=off

Documents without prefixes:

  • /resources/Classification/data_classification_policy.txt

  • /resources/Classification/retention_policy.txt

These documents will be available as resources that the AI can reference when answering questions or making decisions.


Tested Environments

The Content Services MCP Servers have been tested with the following MCP client and LLM combinations:

  • Claude Desktop: Sonnet 4.5, 4, 3.5 and Haiku 4.5

  • Watsonx Orchestrate: Llama-3-2-90b-vision-instruct

While other MCP client and LLM combinations have not been tested, they may work with this server. We encourage you to experiment and validate for yourself.

For setup instructions with additional MCP clients, see:

MCP Client Limitations

Some MCP clients have limitations that affect which tools can be used. The following table shows known compatibility issues:

MCP Client

Limitation

Affected Tools

Watson Orchestrate

Does not support complex Pydantic classes as input

create_documentupdate_document_propertiescheckout_documentcheckin_documentupdate_folderrepository_object_search

Watson Orchestrate

Sporadic 'Invalid tool call object' error when agent tries to invoke MCP tools

create_documentcheckin_documentcheckout_documentget_document_versionsrepository_object_search

Note: These limitations are due to the MCP client's input handling capabilities, not the MCP server itself.


Setup and Configuration

Prerequisites

  • Python 3.13+

  • uv

    • on macOS: brew install uv

    • on Windows: see link above

  • Access to a FileNet CPE server with Content Services GraphQL API (CS-GQL) installed

Required Add-ons

Important: The following add-ons must be installed in your FileNet object store for specific server functionality:

Persistent Text Extract Add-on (Required for Core, Property Extraction, and AI Document Insight Servers)

  • Enables extraction and storage of text content from documents

  • Required for:

    • Core Server: get_document_text_extract tool and Resources functionality

    • Property Extraction and Classification Server: property_extraction tool

    • AI Document Insight Server: All tools (document_smart_search, document_quick_summary, document_compare_insights, document_qa_global)

  • Without this add-on, document content retrieval features will not work

  • For installation instructions, refer to the IBM Documentation on Installing the Persistent Text Add-on

Content Assistant Add-on (Required for AI Document Insight Server only)

  • Provides AI-powered search, summarization, comparison, and Q&A capabilities

  • Required for: AI Document Insight Server (all tools)

  • Includes vector search and GenAI model integration

  • For installation instructions, refer to the IBM Content Assistant documentation

FNCM Deployment Version Requirements

  • Version 5.5.8 or later (Required for Core, Legal Hold, and Property Extraction and Classification Servers)

    • Provides the base GraphQL API support required for core content management operations

    • Required for: Core Server, Legal Hold Server, and Property Extraction and Classification Server (all tools)

  • Version 5.7.0 IF003 or later (Required for AI Document Insight Server only)

    • Provides GraphQL virtual table support required for AI document insight operations

    • Required for: AI Document Insight Server (all tools)

Configuration

The Content Services MCP Servers require several environment variables to connect to your FileNet CPE server:

Required Environment Variables

Environment Variable

Description

Default

SERVER_URL

Content Services GraphQL API endpoint URL (required)

-

USERNAME

Authentication username (required)

-

PASSWORD

Authentication password (required)

-

OBJECT_STORE

Object store identifier (required)

-

Optional Environment Variables

Environment Variable

Description

Default

SSL_ENABLED

Whether SSL is enabled. Can be set to true, a path to a certificate file, or false (not recommended for production)

true

TOKEN_SSL_ENABLED

Whether SSL is enabled for token endpoint. Can be set to true, a path to a certificate file, or false (not recommended for production)

true

TOKEN_REFRESH

Token refresh interval in seconds

1800

TOKEN_URL

OAuth token URL

-

GRANT_TYPE

OAuth grant type

-

SCOPE

OAuth scope

-

CLIENT_ID

OAuth client ID

-

CLIENT_SECRET

OAuth client secret

-

REQUEST_TIMEOUT

Request timeout in seconds

30.0

POOL_CONNECTIONS

Number of connection pool connections

100

POOL_MAXSIZE

Maximum pool size

100

LOG_LEVEL

Logging level for the server. Valid values: DEBUG, INFO, WARNING, ERROR, CRITICAL

INFO

RESOURCES_FOLDER

Folder path in the repository containing documents to expose as MCP resources. Each server type has a default folder (see Resources section). Documents will be automatically registered as resources with URIs following the pattern ibm-cs://{object_store}/documents/{folder_path}/{document_name}. Resource names will be displayed as [IBM CS] {document_name} in MCP clients. Requires Persistent Text Extract Add-on.

Server-specific (see Resources)

RESOURCES_PREFIX_VALIDATION

Controls prefix validation for resource documents. Valid values: strict (skip invalid documents, log errors), warn (skip invalid documents, log warnings), off (no validation). See Resources section for server-specific prefix requirements.

warn

Cloud Pak for Business Automation Environment Variables

Environment Variable

Description

Default

ZENIAM_ZEN_URL

Zen url to send IAM token for exchange to Zen token, for example: /v1/preauth/validateAuth

-

ZENIAM_ZEN_SSL_ENABLED

Whether SSL is enabled for Zen exchange route. Can be set to true, a path to a certificate file, or false (not recommended for production)

true

ZENIAM_IAM_URL

IAM url to send user/pwd or client_id/client_secret to IAM to get back IAM token, for example: /idprovider/v1/auth/identitytoken

-

ZENIAM_IAM_SSL_ENABLED

Whether SSL is enabled for IAM route. Can be set to true, a path to a certificate file, or false (not recommended for production)

true

ZENIAM_IAM_GRANT_TYPE

IAM grant type

-

ZENIAM_IAM_SCOPE

IAM scope

-

ZENIAM_IAM_USER

if grant type is password, specify the IAM user

-

ZENIAM_IAM_PASSWORD

if grant type is password, specify the IAM password

-

ZENIAM_CLIENT_ID

if grant type is client_credentials, specify the IAM client id

-

ZENIAM_CLIENT_SECRET

if grant type is client_credentials, specify the IAM client secret

-

SSL Configuration Best Practices

For SSL configuration (SSL_ENABLED, TOKEN_SSL_ENABLED, ZENIAM_ZEN_SSL_ENABLED, and ZENIAM_IAM_SSL_ENABLED), you have three options:

  1. Use System Certificates (Recommended for Production): Set to true to use your system's certificate store.

  2. Provide Custom Certificate Path: Set to the file path of your certificate (e.g., /path/to/certificate.pem).

  3. Disable SSL Verification (Not Recommended for Production): Set to false to disable SSL verification.

Security Warning: Disabling SSL verification (false) should only be used in testing environments. For production deployments, always use proper certificate validation to ensure secure communications.

Authentication Methods

The server supports three authentication methods:

Basic Authentication

Set the following environment variables:

SERVER_URL=https://your-graphql-endpoint
USERNAME=your_username
PASSWORD=your_password
OBJECT_STORE=your_object_store
SSL_ENABLED=your_path_to_graphql_certificate | true | false

OAuth Authentication

Set the following environment variables:

SERVER_URL=https://your-graphql-endpoint
USERNAME=your_username
PASSWORD=your_password
TOKEN_URL=https://your-oauth-server/token
GRANT_TYPE=password
SCOPE=openid
CLIENT_ID=your_client_id
CLIENT_SECRET=your_client_secret
OBJECT_STORE=your_object_store

Zen/IAM Authentication

An example of ZEN/IAM environment variables when using USER/PASSWORD and SSL to all external servers

SERVER_URL=https://your-graphql-endpoint
SSL_ENABLED=your_path_to_graphql_certificate| true | false
OBJECT_STORE=your_object_store
ZENIAM_ZEN_URL=https://your-zen-exchange-route
ZENIAM_ZEN_SSL_ENABLED=your_path_to_zen_exchange_route_certicate | true | false
ZENIAM_IAM_URL=https://your-IAM-route
ZENIAM_IAM_SSL_ENABLED=your_path_to_IAM_route_certicate | true | false
ZENIAM_IAM_GRANT_TYPE=password
ZENIAM_IAM_SCOPE=openid
ZENIAM_IAM_USER=your_user_name
ZENIAM_IAM_PASSWORD=your_user_password

Integration with MCP Clients/Agent Frameworks

Claude Desktop Configuration

  1. Open Claude Desktop Settings:

    • On macOS, click the Claude menu in the top menu bar and select Settings.

    • On Windows, access Settings from the Claude application. Screenshot showing Settings

  2. Navigate to the Developer tab and click Edit Config:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

    • Windows: %APPDATA%\Claude\claude_desktop_config.json Screenshot showing "Edit Config"

  3. Add one of the following configuration examples to the claude_desktop_config.json file:

    Option 1: Using local installation (if you've cloned the repository)

    {
      "mcpServers": {
        "core-cs-mcp-server": {
          "command": "/path/to/your/uvx",
          "args": [
            "--from",
            "/path/to/your/cs-mcp-server",
            "core-cs-mcp-server"
          ],
          "env": {
            "USERNAME": "your_username",
            "PASSWORD": "your_password",
            "SERVER_URL": "https://your-graphql-server/content-services-graphql/graphql",
            "OBJECT_STORE": "your_object_store"
          }
        }
      }
    }

    Option 2: Installing directly from GitHub (recommended)

    {
      "mcpServers": {
        "core-cs-mcp-server": {
          "command": "uvx",
          "args": [
            "--from",
            "git+https://github.com/ibm-ecm/ibm-content-services-mcp-server",
            "core-cs-mcp-server"
          ],
          "env": {
            "USERNAME": "your_username",
            "PASSWORD": "your_password",
            "SERVER_URL": "https://your-graphql-server/content-services-graphql/graphql",
            "OBJECT_STORE": "your_object_store"
          }
        }
      }
    }

    Option 3: Multi-Server Setup (Core + Property Extraction + Legal Hold + AI Document Insight)

    {
      "mcpServers": {
        "core-cs-mcp-server": {
          "command": "uvx",
          "args": [
            "--from",
            "git+https://github.com/ibm-ecm/ibm-content-services-mcp-server",
            "core-cs-mcp-server"
          ],
          "env": {
            "USERNAME": "your_username",
            "PASSWORD": "your_password",
            "SERVER_URL": "https://your-graphql-server/content-services-graphql/graphql",
            "OBJECT_STORE": "your_object_store"
          }
        },
        "property-extraction-cs-mcp-server": {
          "command": "uvx",
          "args": [
            "--from",
            "git+https://github.com/ibm-ecm/ibm-content-services-mcp-server",
            "property-extraction-and-classification-cs-mcp-server"
          ],
          "env": {
            "USERNAME": "your_username",
            "PASSWORD": "your_password",
            "SERVER_URL": "https://your-graphql-server/content-services-graphql/graphql",
            "OBJECT_STORE": "your_object_store"
          }
        },
        "legal-hold-cs-mcp-server": {
          "command": "uvx",
          "args": [
            "--from",
            "git+https://github.com/ibm-ecm/ibm-content-services-mcp-server",
            "legal-hold-cs-mcp-server"
          ],
          "env": {
            "USERNAME": "your_username",
            "PASSWORD": "your_password",
            "SERVER_URL": "https://your-graphql-server/content-services-graphql/graphql",
            "OBJECT_STORE": "your_object_store"
          }
        },
        "ai-document-insight-cs-mcp-server": {
          "command": "uvx",
          "args": [
            "--from",
            "git+https://github.com/ibm-ecm/ibm-content-services-mcp-server",
            "ai-document-insight-cs-mcp-server"
          ],
          "env": {
            "USERNAME": "your_username",
            "PASSWORD": "your_password",
            "SERVER_URL": "https://your-graphql-server/content-services-graphql/graphql",
            "OBJECT_STORE": "your_object_store"
          }
        }
      }
    }
  4. Restart Claude Desktop:

    • Simply closing the window is not enough, Claude Desktop must be stopped and restarted:

      • on macOS: Claude > Quit

      • on Windows: File > Exit

  5. Check Available Tools:

    • To see all the available tools in Claude Desktop, proceed as follows:

      • first click the settings icon, and you should see: Screenshot showing MCP Servers

      • then click core-cs-mcp-server, and you should see all your tools: Screenshot showing Claude tools

Note: The JSON configuration examples above show only the minimum required environment variables. For a complete list of all possible configuration options, refer to the Environment Variables tables above.

Watson Orchestrate (WxO) Configuration

This section explains how to augment IBM watsonx Orchestrate with the Content Services MCP Servers, enabling watsonx Orchestrate to interact with IBM FileNet Content Management during user interactions in a chat.

You can configure one or multiple servers depending on your needs:

  • Core Server: For general document management operations

  • Property Extraction and Classification Server: For AI-powered document analysis (requires Core Server for document updates)

  • Legal Hold Server: For legal compliance workflows

The configuration steps below use the Core Server as an example, but the same process applies to other servers by changing the server name and install command.

Configuration
1. Configure Connection Variables

For SaaS or on-premises offering (UI):

  • Click the main menu icon

  • Navigate to Manage > Connections

  • Click Add New Connection

  • Enter connection ID and display name

  • Click Next

  • You will now configure draft connection details (test environment)

    • Select authentication type dropdown to be Key value pair

    • Enter each required variable:

      • SERVER_URL: Your Content Services GraphQL API endpoint URL

      • USERNAME: Authentication username

      • PASSWORD: Authentication password

      • OBJECT_STORE: Object store identifier

    • Enter any optional variables as needed (e.g., SSL_ENABLED, TOKEN_REFRESH, etc.)

    • Click Next when done

  • Now you will enter your live connection environment variables

    • Select authentication type dropdown to be Key value pair

    • Enter the same required variables as above

    • Enter any optional variables as needed

    • Select the preferred credential type

    • Click Add Connection

For ADK (Application Development Kit):

For creating connections using the ADK CLI, please refer to the official documentation.

2. Create an agent
  • Click the main menu icon

  • Navigate to Build > Agent Builder

    Build > Agent Builder

  • Navigate to All agents

  • Click Create agent + to add a new agent

    Create an agent

  • Choose Create from scratch

  • Enter a Name (e.g., Core Content Services Agent)

  • Enter a Description (e.g., This agent enables interaction with FileNet Content Management.)

  • Click Create

    Create an agent (continued)

3. Augment the agent with the Core Content Services MCP Server
  • Navigate to the Toolset section, click Add tool +

    Add tools +

  • Click Import

    Import MCP Server

  • Click Import from MCP server

    Import MCP Server (continued)

  • Click Add MCP server

    Add MCP Server

  • Enter a Server name without any space characters (e.g., core-cs-mcp-server)

  • Optionally enter a Description (e.g., This MCP Server connects to FileNet Content Platform Engine, enabling content management operations.)

  • Enter an Install command:

    uvx --from git+https://github.com/ibm-ecm/ibm-content-services-mcp-server core-cs-mcp-server

    For other servers, use these install commands:

    • Property Extraction and Classification Server:

      uvx --from git+https://github.com/ibm-ecm/ibm-content-services-mcp-server property-extraction-and-classification-cs-mcp-server
    • Legal Hold Server:

      uvx --from git+https://github.com/ibm-ecm/ibm-content-services-mcp-server legal-hold-cs-mcp-server
    • AI Document Insight Server:

      uvx --from git+https://github.com/ibm-ecm/ibm-content-services-mcp-server ai-document-insight-cs-mcp-server

    Note: If you encounter issues with git-based installation (e.g., "Git executable not found"), you can use this alternative command that downloads directly from GitHub without requiring git:

    uvx --from https://github.com/ibm-ecm/ibm-content-services-mcp-server/archive/refs/heads/main.zip core-cs-mcp-server

    Replace core-cs-mcp-server with the name of the server you want to install (property-extraction-and-classification-cs-mcp-server, legal-hold-cs-mcp-server, or ai-document-insight-cs-mcp-server).

  • Click Connect

  • If you see "Connection successful", click Done

    Add MCP Server (continued)

  • Set the Activation toggle to On for the tools you want to enable

    Enable Tools

  • Associate your previously created connection with this agent

4. Deploy the agent
  • Click Deploy

    Configuration completed

  • In the popup, Click Deploy again

5. Let the agent be used in chats
  • Click the main menu icon

  • Navigate to Chat

  • Click the newly created agent

    select the agent

Example Workflow

Once configured, you can interact with your FileNet repository through natural language in watsonx Orchestrate chats, depending on which tool you've enabled. For example:

  • "Find all documents containing the pdf in its document title"

  • "Create a new folder called Project Z"

    chat

Click Show Reasoning in any response to see the details of the operations performed.

chat reasoning


Usage

Running Servers Directly

If you have a local copy of the repository, you can run any server directly with environment variables:

Core Server:

USERNAME=your_username PASSWORD=your_password SERVER_URL=https://your-graphql-server/content-services-graphql/graphql OBJECT_STORE=your_object_store uvx --from /path/to/your/cs-mcp-server core-cs-mcp-server

Property Extraction and Classification Server:

USERNAME=your_username PASSWORD=your_password SERVER_URL=https://your-graphql-server/content-services-graphql/graphql OBJECT_STORE=your_object_store uvx --from /path/to/your/cs-mcp-server property-extraction-and-classification-cs-mcp-server

Legal Hold Server:

USERNAME=your_username PASSWORD=your_password SERVER_URL=https://your-graphql-server/content-services-graphql/graphql OBJECT_STORE=your_object_store uvx --from /path/to/your/cs-mcp-server legal-hold-cs-mcp-server

AI Document Insight Server:

USERNAME=your_username PASSWORD=your_password SERVER_URL=https://your-graphql-server/content-services-graphql/graphql OBJECT_STORE=your_object_store uvx --from /path/to/your/cs-mcp-server ai-document-insight-cs-mcp-server

Integration with AI Agents

The Content Services MCP Servers can be integrated with AI Agents that support the MCP protocol. Depending on which server(s) you deploy, the AI Agent can:

Core Server capabilities:

  1. Access and retrieve document properties

  2. Extract text from documents

  3. Create, update, check-in, and check-out documents

  4. Manage folders and document classifications

  5. Execute searches

  6. Access resources for LLM context

Property Extraction and Classification Server capabilities:

  1. Extract property values from document content using AI

  2. List and match document classes for reclassification

Legal Hold Server capabilities:

  1. Create and manage legal holds

  2. Place objects under hold

  3. Track and query held objects

AI Document Insight Server capabilities:

  1. Perform AI-powered hybrid searches combining vector search with metadata filtering

  2. Generate document summaries using GenAI

  3. Compare documents and analyze differences

  4. Answer natural language questions across the entire document repository

  5. Answer natural language questions based on one document or a set of documents

Example Workflows

Core Server Workflow: Search and Document Management

  1. Search and Discovery:

    • Users typically start with descriptive information (name, content, keywords) rather than IDs

    • The AI Agent first uses search tools to locate relevant objects:

      • get_searchable_property_descriptions to discover valid search properties

      • repository_object_search for property-based searches

    • Search results include object IDs needed for subsequent operations

  2. Document Retrieval:

    • Once an object ID is obtained through search, the AI Agent can retrieve:

      • Document properties using the ID

      • Version history

      • Text content (requires Persistent Text Extract Add-on to be installed)

      • Annotations

  3. Document Creation: Users can ask the AI Agent to create new documents with specific properties and content.

  4. Document Update:

    • After identifying a document through search, the AI Agent can:

      • Check out the document using its ID

      • Update properties or content

      • Check the document back in

  5. Folder Operations:

    • Folders can be identified by path or by ID from search results

    • Documents can be filed/unfiled using both document and folder IDs

Property Extraction and Classification Workflow

Requires: Core Server (for document updates)

  1. Property Extraction:

    • Use property_extraction tool with a document ID

    • The tool returns:

      • Document class information

      • All available properties for that class (excluding system/hidden properties)

      • Document text content

    • AI analyzes the text and extracts appropriate property values

    • Use Core Server's update_document_properties to save the extracted values

  2. Document Classification:

    • Use list_all_classes to get all available document classes

    • AI analyzes document content and matches it to the most appropriate class

    • Use Core Server's update_document_class to reclassify the document

  1. Creating a Hold:

    • Use create_hold with a descriptive name (e.g., "Litigation ABC vs XYZ")

    • Returns the hold object with its ID

  2. Placing Objects Under Hold:

    • Identify documents using Core Server search tools (if needed)

    • Use add_object_to_hold with the hold ID and object ID

    • Repeat for all relevant documents/objects

  3. Managing Holds:

    • Use get_holds_by_name to find holds by name

    • Use get_held_objects_for_hold to see all objects under a specific hold

    • Use delete_object_from_hold to release specific objects

    • Use delete_hold to remove the hold entirely (releases all objects)

Note: Most operations that modify or access specific objects require an object ID, which is typically obtained through a search operation first. This workflow pattern ensures users can work with objects by their meaningful attributes rather than requiring them to know technical identifiers upfront.


License

See the LICENSE file for details.

# Copyright contributors to the IBM Content Services MCP Server project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

Available Tools

26 tools
cancel_document_checkoutA

Cancels a document checkout in the content repository.

:param identifier: The identifier (required). This can be either a reservation_id or document_id. Reservation ID (GUID) is prioritized. Otherwise, we use document_id (GUID).

:returns: If successful, returns a Document object with its updated properties. If unsuccessful, returns a ToolError with details about the failure.

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses that the tool returns a Document object on success and a ToolError on failure, and explains the identifier parameter's dual nature and prioritization. However, it could be more explicit about side effects like unlocking the document or permission requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is very concise: two paragraphs with no fluff. The first sentence states the core functionality, followed by a clear parameter description and return value documentation. Every sentence serves a purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with one required parameter and an output schema (not shown), the description covers the parameter semantics and return value. It could improve by providing examples or clarifying how the identifier string distinguishes between reservation_id and document_id, but it is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must explain the parameter. It does so thoroughly: identifier can be reservation_id or document_id, with reservation_id prioritized. This adds significant meaning beyond the schema's 'string' type.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'cancels' and the resource 'document checkout', making the tool's purpose unambiguous. It is distinct from sibling tools like 'checkout_document' and 'checkin_document'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies that the tool is used to undo a checkout, but it does not explicitly state when to use it or when not to, nor does it mention alternatives. The context from sibling tools helps, but the description itself lacks explicit guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

checkin_documentB

Checks in a document in the content repository with specified properties.

:param identifier: The identifier (required). This can be either a reservation_id or document_id. Reservation ID (GUID) is prioritized. Otherwise, we use document_id (GUID). :param checkin_action: Check-in action parameters for the document. :param document_properties: Properties to update for the document during check-in. :param file_paths: Optional list of file paths to upload as the document's content.

:returns: If successful, returns a Document object with its updated properties. If unsuccessful, returns a ToolError with details about the failure.

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYes
checkin_actionNo
document_propertiesNo
file_pathsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must convey behavioral traits. It discloses return type (Document or ToolError) and the fact that properties are updated, but does not mention required permissions, side effects, or prerequisites like checkout state.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is structured as a docstring with parameter explanations, which is clear but somewhat verbose. It is appropriately sized for four parameters but redundant in places (e.g., 'Check-in action parameters for the document').

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has four parameters and returns an object. The description covers basic functionality but omits important context like prerequisites (e.g., document must be checked out) and detailed error conditions. Given the complexity, it is adequate but not complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% at the top level, but nested objects have descriptions. The description adds meaning for identifier (prioritization logic) and file_paths (file uploads), but other parameters are merely restated without additional guidance beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Checks in' and the resource 'document in the content repository', which differentiates from sibling tools like checkout_document. However, it does not explicitly contrast with siblings, missing a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the identifier parameter prioritization but lacks explicit guidance on when to use this tool versus alternatives (e.g., checkout_document). Usage context is implied but not stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

checkout_documentA

Checks out a document in the content repository.

:param identifier: The document id or path (required). This can be either the document's ID (GUID) or its path in the repository (e.g., "/Folder1/document.pdf"). :param document_properties: Properties to update for the document during check-out. :param checkout_action: Check-out action parameters for the document. :param download_folder_path: Optional path to a folder where the document content will be downloaded. If not provided but content download is needed, the user will be prompted to provide it.

:returns: If successful, returns a Document object with its updated properties. If unsuccessful, returns a ToolError with details about the failure.

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYes
document_propertiesNo
checkout_actionNo
download_folder_pathNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description partially discloses behavior: it mentions document property updates, optional download, and failure returns a ToolError. However, it does not clarify locking, permission requirements, or side effects, which are important for a checkout action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured with a docstring format. It front-loads the main purpose and then lists parameters. Minor redundancy with return info, but overall efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and the presence of an output schema, the description covers the essential aspects: input parameters, return type (Document or ToolError), and a key behavioral note about download folder prompting. It is adequate for a checkout operation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds significant meaning beyond the input schema. It explains that 'identifier' can be an ID or path (e.g., '/Folder1/document.pdf'), and that 'download_folder_path' is optional and may prompt the user. Schema coverage is 0%, so the description fully compensates with clear parameter semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Checks out a document in the content repository' which is a clear verb-resource pair. It distinguishes from sibling tools like cancel_document_checkout and checkin_document by explicitly focusing on the check-out action.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not provide explicit guidelines on when to use this tool versus alternatives. It lacks context on prerequisites or when not to use it, leaving the agent to infer from the tool name and sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_documentA

PREREQUISITES IN ORDER: To use this tool, you MUST call two other tools first in a specific sequence.

  1. determine_class tool to get the class_identifier.

  2. get_class_property_descriptions to get a list of valid properties for the given class_identifier

Description: Creates a document in the content repository with specified properties.

:param class_identifier: The class identifier for the document. If not provided, defaults to "Document". :param id: The unique GUID for the document. If not provided, a new GUID with curly braces will be generated. :param document_properties: Properties for the document including name, content, mimeType, etc. :param file_in_folder_identifier: The identifier or path of the folder to file the document in. This always starts with "/". :param checkin_action: Check-in action parameters. CheckinMinorVersion should always be included. :param file_paths: Optional list of file paths to upload as the document's content.

:returns: If successful, returns a Document object with its properties. If unsuccessful, returns a ToolError with details about the failure.

ParametersJSON Schema
NameRequiredDescriptionDefault
class_identifierNo
idNo
document_propertiesNo
file_in_folder_identifierNo
checkin_actionNo
file_pathsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the full burden. It explains return types (Document object or ToolError), default behaviors (GUID generation, class_identifier default), and a constraint (file_in_folder_identifier starts with '/'). It lacks details on authentication or side effects, but for a creation tool, this is sufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is somewhat verbose with repeated headers ('Description:') and a bold prerequisites section. While the information is front-loaded, it could be more streamlined. Two clear improvements: remove the redundant 'Description:' line and integrate prerequisites more concisely.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (6 parameters, nested objects) and the presence of an output schema, the description covers creation prerequisites, parameter roles, and return types. It could mention idempotency or naming constraints, but overall it provides enough context for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate. It provides meaningful explanations for all six parameters, including defaults, format requirements, and behavioral notes (e.g., 'CheckinMinorVersion should always be included'), adding value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Creates a document in the content repository with specified properties,' clearly indicating the verb ('creates') and resource ('document'). This distinguishes it from sibling tools like checkout, checkin, or update, which have different primary actions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit prerequisites in a numbered sequence, stating that determine_class and get_class_property_descriptions must be called first. While it doesn't explicitly state when not to use the tool, the creation use case is clear and different from siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

create_folderA

PREREQUISITES IN ORDER: To use this tool, you MUST call two other tools first in a specific sequence.

  1. determine_class tool to get the class_identifier.

  2. get_class_property_descriptions to get a list of valid properties for the given class_identifier

Creates a folder in the content repository with specified properties. This tool interfaces with the GraphQL API to create a new folder object with the provided parameters.

:param name string Yes The name of the folder to be created. :param parent_folder string Yes The identifier of the parent folder where this folder will be created. :param class_identifier string No The class identifier for the folder. If not provided, defaults to "Folder". :param id string No The unique identifier for the folder. If not provided, a new UUID with curly braces will be generated (format: {uuid}). :param folder_properties FolderPropertiesInput No properties of to set.

:returns: If successful, return a folder object with the following properties: id: The identifier of the created folder name: The name of the folder parent_folder: The identifier of the parent folder creator: The user who created the folder class_identifier: The class identifier of the folder Else, return a ToolError instance that describes the error.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
parent_folderYes
class_identifierNo
idNo
folder_propertiesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but the description details parameter behaviors (e.g., id generation format), prerequisites, and return value (folder object or ToolError). Lacks details on permissions or conflict handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Structured with prerequisites first, then main description, parameter list, and returns. Front-loaded with important usage info, though the param list uses non-standard format and could be more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers prerequisites, all parameters, and return values. Could be improved by explaining error conditions and folder_properties structure more clearly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, but the description lists each parameter with type and description. However, folder_properties is poorly described as 'properties of to set' which adds little value beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Creates a folder in the content repository' and lists specific parameters. It distinguishes from sibling tools like create_document and delete_folder by focusing on folder creation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states prerequisites in order: must call determine_class and get_class_property_descriptions first. This provides clear sequential guidance for the agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_document_versionA
Destructive

Deletes a specific document version in the content repository.

:param identifier: The document id or path (required). This can be either the document's ID (GUID) or its path in the repository (e.g., "/Folder1/document.pdf").

:returns: If successful, returns the deleted Document id. If unsuccessful, returns a ToolError with details about the failure.

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations include destructiveHint=true, and the description adds that failure results in a ToolError. However, it does not disclose necessary preconditions (e.g., permissions, checkout status) or side effects beyond deletion. Some value added but incomplete.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two clear paragraphs: purpose, then parameter and return details. No wasted words, though could be slightly more structured (e.g., bullet points for clarity).

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with one parameter and an output schema, the description covers purpose, parameter, and return value. However, it misses behavioral context like when deletion is allowed or restrictions (e.g., cannot delete last version). Could be more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but the description fully explains the single parameter 'identifier': it is required, can be a GUID ID or repository path, with an example. This compensates for the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Deletes a specific document version in the content repository,' specifying the verb, resource, and scope. It effectively distinguishes from sibling tools like 'delete_version_series' or 'delete_folder'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides parameter requirements and return information but lacks explicit guidance on when to use this tool over alternatives like 'delete_version_series' or preconditions (e.g., version not checked out). Usage context is minimal.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_folderA

Deletes a folder in the content repository. This tool interfaces with the GraphQL API to delete a folder object with the provided id.

:param id_or_path string Yes The unique identifier or path for the folder. If not provided, an error will be returned.

:returns: If successful, return the folder id. Else, return a ToolError instance that describes the error.

ParametersJSON Schema
NameRequiredDescriptionDefault
id_or_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses that it returns the folder id on success or a ToolError on failure. However, with no annotations provided, it omits critical behavioral details like whether deletion is recursive, permission requirements, or irreversibility.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is reasonably concise, using a docstring-like format with param and returns. It is front-loaded with the main action but could be more streamlined by removing redundant statements about error returns.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (single required parameter) and the presence of an output schema, the description covers the basics. However, it lacks important context about effects on children, permissions, and when to use this over other folder operations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds a semantic description for the id_or_path parameter, clarifying it accepts either an ID or a path. Despite the schema having 0% description coverage, this is only a minimal addition beyond the parameter name itself.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The tool name and description clearly state that it deletes a folder, using a specific verb and resource. It distinguishes itself from sibling tools like create_folder and update_folder by focusing on deletion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage when a folder deletion is needed, but provides no explicit guidance on when to use this tool versus alternatives (e.g., update_folder) or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

delete_version_seriesA
Destructive

Deletes an entire version series (all versions of a document) in the content repository.

:param version_series_id: The version series ID (GUID) to delete. If you don't have the version series ID, first call get_document_property on the document to get the version series ID.

:returns: If successful, returns the deleted version series ID as a string. If unsuccessful, returns a ToolError with details about the failure.

ParametersJSON Schema
NameRequiredDescriptionDefault
version_series_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the destructiveHint annotation, the description clarifies that it deletes all versions of a document and mentions potential failure with ToolError. This adds useful behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (a few sentences), front-loaded with the core action, and every sentence provides necessary information without fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter destructive tool with annotations, the description is largely complete. It covers the parameter, return value, and error handling, though it omits permissions or side effects.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description explains how to obtain the version_series_id (via get_document_property), which adds meaning beyond the schema's simple string type. With 0% schema coverage, this compensation is valuable.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it deletes an entire version series (all versions of a document), distinguishing it from sibling tools like delete_document_version which deletes a single version.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidance on obtaining the version series ID via get_document_property if not known. However, it does not explicitly state when to prefer this tool over alternatives like delete_document_version.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

determine_classA

Find classes that match the given keywords by looking for substring matches in class names and descriptions.

IMPORTANT: To get a list of all valid class names that can be used with this tool, you MUST first call the list_root_classes_tool tool.

:param root_class: The root class to search within (eg. "Document", "Folder") :param keywords: Up to 3 words from the user's message that might contain the class's name

:returns: A list of up to 3 matching classes with their scores, or a ToolError if no matches are found Each match is a ClassMatch object with class_name and score fields

ParametersJSON Schema
NameRequiredDescriptionDefault
root_classYes
keywordsYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description must disclose behavior. It explains substring matching, return of up to 3 classes with scores, and error on no matches. However, it omits details like case sensitivity or score meaning, leaving some gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is concise with a clear first sentence, structured :param/:returns format, and no redundant text. Each sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema existence and tool complexity, the description covers search method, parameters, return format, and prerequisite, making it fully adequate for agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but the description fully compensates by explaining root_class and keywords with examples and constraints (e.g., 'up to 3 words'), adding meaning beyond type definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states the tool finds classes by substring matching in names and descriptions, clearly distinguishing it from siblings like list_root_classes or get_class_property_descriptions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit prerequisite: 'MUST first call list_root_classes_tool' for valid class names, and gives parameter constraints (up to 3 keywords) and examples (root_class like 'Document').

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

file_documentA

File a document to a folder in the content repository. This tool interfaces with the GraphQL API to create a referential containment relationship between a document and a folder.

:param document_id_or_path string Yes The unique identifier or path for the document. :param folder_id_or_path string Yes The unique identifier or path for the folder.

:returns: If successful, returns the reference containment relationship ID

Else, return a ToolError instance that describes the error.

ParametersJSON Schema
NameRequiredDescriptionDefault
document_id_or_pathYes
folder_id_or_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears the full burden. It explains that the tool creates a referential containment relationship, returns a relationship ID on success, and returns a ToolError on failure. However, it does not mention permissions, idempotency, or what happens if the document is already filed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately concise but includes structured param and return docs in reStructuredText format. It could be more succinct without losing clarity, but it is not overly verbose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has a simple signature with two required parameters and no output schema provided in the definition. The description explains the return type and error handling, and given the low complexity and sibling context, it is largely complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema coverage is 0%, so the description must compensate. It provides parameter descriptions stating that 'document_id_or_path' is 'The unique identifier or path for the document' and similarly for the folder, adding meaning beyond the schema's mere type definition.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'File a document to a folder in the content repository' using a specific verb and resource, and distinguishes itself from sibling tools like 'unfile_document' and 'create_document'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage by describing the action and parameters, but does not explicitly state when to use this tool versus alternatives like 'unfile_document' or 'create_document'. No when-not or exclusions are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_class_property_descriptionsA

Retrieves ALL properties of a class including system properties.

IMPORTANT: Use this tool ONLY for general document updates where you need to see ALL properties of a class, including system-owned and hidden properties.

DO NOT use this tool for property extraction workflows.

:param class_symbolic_name: The symbolic name of the class to retrieve properties for

:returns: A list of CachePropertyDescription objects for each property (including system properties)

ParametersJSON Schema
NameRequiredDescriptionDefault
class_symbolic_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses it is a retrieval operation ('Retrieves'), but does not explicitly state safety or lack of side effects. However, the return type and parameter are explained. Minor gap for a read-only tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two distinct sections: a short purpose sentence, then an IMPORTANT usage guideline, then parameter/returns. Every sentence adds value; front-loaded with purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists, description need not detail return fields. It covers purpose, usage, parameter, and return type. Complete for a retrieval tool with one parameter.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has no description for the parameter (0% coverage). The description adds ':param class_symbolic_name: The symbolic name of the class to retrieve properties for', providing full semantic meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Retrieves ALL properties of a class including system properties' – clear verb+resource with scope. It distinguishes from siblings like get_searchable_property_descriptions by emphasizing 'ALL' and 'system properties'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'Use this tool ONLY for general document updates...' and 'DO NOT use for property extraction workflows' – clear when and when-not to use, with implied alternative tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_document_propertiesA

Retrieves a document's properties from the content repository by ID or path.

Note: Use this tool ONLY when you need to retrieve a document using its ID or file path. For searching documents by other properties, use the repository_search tool instead.

:param identifier: The document id or path (required). This can be either the document's ID (GUID) or its path in the repository (e.g., "/Folder1/document.pdf").

:returns: If successful, returns the Document object with its properties. If unsuccessful, returns a ToolError with details about the failure.

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Describes successful return (Document object) and failure (ToolError), but lacks details about read-only nature, permissions, or other behavioral traits. With no annotations, more could be added.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is concise and well-structured with a note, parameter doc, and return info. Slightly verbose but not excessive.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given there is an output schema and one parameter, description covers key aspects: purpose, usage, parameter format, and return types. No obvious gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 0% coverage, but description fully explains the parameter: it can be a GUID or path, with an example. This adds significant meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it retrieves document properties by ID or path. While it distinguishes from repository_search, it does not explicitly differentiate from other sibling tools like lookup_documents_by_path.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly states when to use (by ID or path) and when not (use repository_search for other properties). However, it does not mention other sibling alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_document_text_extractA

Retrieves a document's text extract content.

:param identifier: The document id or path (required). This can be either the document's ID (GUID) or its path in the repository (e.g., "/Folder1/document.pdf").

:returns: The text content of the document's text extract annotation. If multiple text extracts are found, they will be concatenated. Returns an empty string if no text extract is found.

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description discloses key behaviors: concatenation of multiple extracts and returning empty string if none. This adequately covers the read-only nature and edge cases.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a clear first-line summary. The docstring format is well-structured, with no redundant sentences.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists, the description's return value explanation is sufficient. It covers the main cases but could mention error handling or authentication expectations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The sole parameter 'identifier' is explained as accepting either a GUID or path, adding meaning beyond the schema's plain string type. Since schema coverage is 0%, this compensation is valuable.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Retrieves a document's text extract content,' using a specific verb and resource. It distinguishes from siblings like get_document_pdf_text and get_document_properties.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear usage info for the identifier parameter and return behavior but lacks explicit guidance on when to use this tool versus alternatives (e.g., get_document_pdf_text).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_document_versionsA

Retrieves all versions in the version series that includes the specified document. This returns all versions (past, current, and future) that belong to the same version series.

:param identifier: The document id or path (required). This can be either the document's ID (GUID) or its path in the repository (e.g., "/Folder1/document.pdf").

:returns: A dictionary containing the version series details, including: - versionSeries (dict): A dictionary containing version series details, including: - versions (list): A list of all versions in the series, with each version containing: - versionables (list): A list of versionable objects, each containing: - majorVersionNumber (int): The major version number. The format to print out version number is majorVersionNumber.minorVersionNumber. - minorVersionNumber (int): The minor version number. The format to print out version number is majorVersionNumber.minorVersionNumber. - id (str): The unique identifier of the version's document id.

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYes

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description bears full load. It details return structure (past, current, future versions) but does not explicitly confirm read-only behavior or mention side effects, permissions, or error handling.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the main action and well-structured with param and returns sections. However, it is slightly verbose due to docstring formatting which could be more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simple tool (1 param, returns version series details) and the presence of an output schema, the description covers purpose, parameter, and return structure adequately. Missing error conditions or prerequisites but still fairly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage for the 'identifier' parameter, but the description compensates by specifying that it can be a document ID (GUID) or path, adding significant meaning beyond just 'string'.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the purpose: 'Retrieves all versions in the version series that includes the specified document.' It specifies the resource (versions in a series) and distinguishes from siblings like delete_document_version.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for fetching version history but does not explicitly state when to use this tool versus alternatives like delete_document_version. No guidance on prerequisites or when not to use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_folder_detailC

Description: Get an existing folder in the content repository information given a folder id

:param identifier: The folder identifier (required). This can be either the folder's ID (GUID). :param folder_properties: Properties to update for the folder including name, etc

:returns: If successful, returns a Folder object with its properties. If unsuccessful, returns a ToolError with details about the failure.

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description bears full responsibility. It states it returns a Folder object or ToolError but lacks details on permissions, idempotency, or side effects. The description does not adequately disclose behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is moderately concise but includes unnecessary details (wrong parameter documentation) and could be more front-loaded. The structure is adequate but not optimal.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema, the return value description is acceptable. However, the erroneous parameter information and lack of error context beyond ToolError make the description incomplete and potentially confusing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has only 'identifier', but the description incorrectly includes a non-existent 'folder_properties' parameter. This misleading information degrades semantics. Schema description coverage is 0%, so the description should compensate, but it adds erroneous content.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves an existing folder's information given a folder ID. However, the mention of 'folder_properties' as a parameter (not in schema) introduces minor confusion, slightly reducing clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus siblings like 'get_folder_documents' or 'get_document_properties'. The description only states what it does, not when it's appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_folder_documentsB

Retrieves a folder's contained documents.

:param folder_id_or_path: The folder id or path.

:returns: A list contains documents in the folder

ParametersJSON Schema
NameRequiredDescriptionDefault
folder_id_or_pathYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description must carry full burden. It only states 'retrieves' (read operation) but lacks details on permissions, error handling, pagination, or any behavioral traits beyond the basic action.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Extremely concise: two sentences and a parameter description. No redundant information, front-loaded with purpose. Every word earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given an output schema exists, description need not detail return, but it omits important context like pagination, filtering, sorting, or behavior on missing folder. Incomplete for a list-retrieval tool with many siblings.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but description explains the sole parameter can be 'folder id or path', adding meaning beyond the schema's mere type 'string'. This helps the agent understand usage, though format details are missing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the verb 'Retrieves' and resource 'folder's contained documents'. Purpose is specific and easy to understand, but does not explicitly differentiate from sibling tools like get_folder_detail or document_search.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. No mention of prerequisites, exclusions, or context for invocation. Agent receives no help in deciding between this and siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_searchable_property_descriptionsA

Retrieves only the searchable properties of a class.

:param class_symbolic_name: The symbolic name of the class to retrieve searchable properties for

:returns: A list of CachePropertyDescription objects for properties that are searchable

ParametersJSON Schema
NameRequiredDescriptionDefault
class_symbolic_nameYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description bears full burden. It mentions the return type (CachePropertyDescription objects) but does not disclose read-only behavior, authentication needs, error conditions, or side effects. The verb 'retrieves' weakly implies non-destructiveness but is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with a single sentence plus a structured parameter and return description. It is front-loaded and avoids unnecessary words, though the docstring format adds slight verbosity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the existence of an output schema, the description adequately covers the return type. It compensates for 0% schema coverage by explaining the parameter. However, it lacks information about errors, permissions, or behavior for invalid classes.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description provides a clear parameter explanation: 'The symbolic name of the class to retrieve searchable properties for'. This adds meaning beyond the bare schema definition.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves only the searchable properties of a class. The verb 'retrieves' and target 'searchable properties' are specific. It distinguishes from the sibling tool 'get_class_property_descriptions' by limiting to searchable ones.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for retrieving searchable properties but does not explicitly state when to use this tool versus alternatives like 'get_class_property_descriptions'. No exclusions or prerequisites are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_root_classesA

List all available root class types in the repository.

This tool should be called first to get a list of valid root class names before using the list_all_classes tool.

:returns: A list of all available root class types (e.g., ["Document", "Folder", "Annotation", "CustomObject"])

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavior. It states the tool returns a list and gives an example, but does not mention side effects, authentication needs, rate limits, or other traits. For a zero-parameter read-only tool, this is adequate but not enriched.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences: purpose, usage guideline, and return description. No extraneous words. Efficient and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given zero parameters, existence of output schema, and simple purpose, the description fully covers what is needed. It explains the return value with an example, leaving no gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 0 parameters with 100% coverage, so description need not add parameter info. Baseline of 4 is appropriate; the description does not detract.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists all available root class types, with a specific verb ('list') and resource ('root class types'). It distinguishes from siblings by mentioning it should be called before 'list_all_classes', and provides an example return value.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'should be called first to get a list of valid root class names before using the list_all_classes tool', indicating when to use. Lacks explicit when-not or alternatives among the listed sibling tools, but is sufficient for this simple case.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_documents_by_nameA

:param keywords: Up to 3 words from the user's message that might contain the document's name. Avoid using very common words such as "and", "or", "the", etc. :param class_symbolic_name: If specified, a specific document class to look in for matching documents. The root Document class is used by default. Specify a class only if the user indicates that the documents should belong to a specific class. Use the determine_class tool to lookup the class symbolic name based on the user's message.

:returns: A list of matching documents, or a ToolError if no matches are found or there is some other problem. Each match is a DocumentMatch object with information about the document including its name and a confidence score.

Description: This tool will execute a search to lookup documents by name. A list of the most likely documents matching the keywords is returned. Use this list to select the appropriate document based on the user's message.

ParametersJSON Schema
NameRequiredDescriptionDefault
keywordsYes
class_symbolic_nameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description states it returns a list of matching documents or a ToolError if no matches are found. It mentions confidence scores but does not disclose if the tool is read-only or any side effects. With no annotations, the description is adequate but could be more explicit about its behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with parameter documentation first, followed by a concise general description. It is reasonably concise, though the param descriptions are slightly verbose and could be tightened. Nonetheless, it front-loads important details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the presence of an output schema (not shown but indicated), the description covers the return type (DocumentMatch with name and confidence) and error condition. For a search tool with two parameters, the description is complete enough, though it could mention pagination or result limits.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description thoroughly explains both parameters: keywords (up to 3 words, avoid common words) and class_symbolic_name (optional, use determine_class for lookup). Since the input schema has 0% description coverage, the description fully compensates, providing clear and actionable guidance beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches for documents by name and returns matching documents. It specifies that it uses keywords from the user's message, distinguishing it from siblings like document_search or lookup_documents_by_path, though not explicitly naming alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides guidance on when to use the class_symbolic_name parameter and suggests using determine_class to find the symbolic name. However, it does not explicitly advise when to use this tool versus siblings like document_search or lookup_documents_by_path, leaving some ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_documents_by_pathA

PREREQUISITE: To use this tool, you MUST call the determine_class tool first to get the class_symbolic_name. If the user does not specify a specific clas then call determine_class with the root Document class.

:param keywords_at_path_levels: A list of lists of keywords to search for at each path level. The first dimension list is the number of path levels entered by the user. For each path level a sub list contains up to 3 words from the user's message for that level that might contain either the intermediate folder name or the actual document's containment name. Avoid using very common words such as "and", "or", "the", etc. for these keywords. Note that the matching of documents by path is based on the containment names of the documents filed in the folder, not the name of the documents themselves. The containment names of documents are usually the same or similar to the documents but they can be different in some scenarios. :param class_symbolic_name: If specified, a specific document class to look in for matching documents. The root Document class is used by default. Specify a class only if the user indicates that the documents should belong to a specific class.

:returns: A list of matching document filings, or a ToolError if no matches are found or if there is some other problem. Each match is a DocumentMatch object with information about the document filing including its name.

Description: This tool will execute a search to lookup documents based on where they are filed in a folder hierarchy. One indication that a lookup by path is appropriate rather than a more basic lookup by name is if the user has used a path separator character ('/') to describe the document. A list of the most likely documents matching the keywords is returned. Use this list to select the appropriate document based on the user's message.

ParametersJSON Schema
NameRequiredDescriptionDefault
keywords_at_path_levelsYes
class_symbolic_nameNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description bears full burden. It explains matching is based on containment names, returns a list of DocumentMatch objects or ToolError, and details parameter semantics. Covers all relevant behavioral aspects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is verbose and contains redundant sections (docstring-style followed by separate 'Description:' line). Could be more streamlined. Front-loading is decent with prerequisite in bold, but overall structure is cluttered.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (two parameters, no annotations, output schema exists), the description sufficiently covers usage and behavior. Lacks details on error types beyond ToolError, but overall complete for agent use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% description coverage, but description compensates fully. Explains keywords_at_path_levels as list of lists with constraints (up to 3 words per level, avoid common words) and class_symbolic_name as optional with default root class. Adds meaning beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches for documents based on their folder path. It distinguishes from sibling lookup_documents_by_name by mentioning path separator usage and 'rather than a more basic lookup by name'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly requires calling determine_class first as a prerequisite. Provides guidance on when to use this tool (path separator) and how to construct the keywords parameter. No exclusions, but clear context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

unfile_documentA

Unfile a document from a folder in the content repository. This tool interfaces with the GraphQL API to unfile document from folder with the provided ids.

:param folder_id_or_path string Yes The unique identifier or path for the folder. If not provided, an error will be returned. :param document_id string Yes The unique identifier for the document. If not provided, an error will be returned.

:returns: If successful, return the folder id. Else, return a ToolError instance that describes the error.

ParametersJSON Schema
NameRequiredDescriptionDefault
folder_id_or_pathYes
document_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description carries the transparency burden. It mentions using the GraphQL API and indicates success returns a folder ID, while failure returns a ToolError. However, it does not disclose whether the operation is destructive or requires authentication.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is fairly concise, starting with the primary purpose and including parameter details. The docstring format is slightly lengthy but well-organized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with two required string parameters, the description covers purpose, parameter semantics, and return value. It is adequate for an agent to understand and invoke the tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description includes docstring-like parameter documentation explaining that folder_id_or_path and document_id are unique identifiers and that they are required, adding meaning beyond the schema's type-only definitions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Unfile a document from a folder in the content repository.' This directly matches the name and distinguishes it from sibling tools like file_document.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or common usage scenarios. It only describes the basic operation.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_document_classA

PREREQUISITES: Before using this tool, you MUST call ONE of these tools first:

  1. list_all_classes - Call this tool only IF IT EXISTS and the user is using a (re)classification workflow where we need highest accuracy.

  2. determine_class - For general class update.

Description: Changes a document's class in the content repository. WARNING: Changing a document's class can result in loss of properties if the new class does not have the same properties as the old class. Properties that don't exist in the new class will be removed from the document.

This tool ONLY changes the document's class and does NOT update any properties. To update properties after changing the class, use the update_document_properties tool.

:param identifier: The document id or path (required). This can be either the document's ID (GUID) or its path in the repository (e.g., "/Folder1/document.pdf"). :param class_identifier: The new class identifier for the document (required).

:returns: If successful, returns a Document object with the new class. If unsuccessful, returns a ToolError with details about the failure.

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYes
class_identifierYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses the destructive potential (property loss if new class lacks properties) and that the tool does not update properties. Does not mention permissions or rate limits, but with no annotations, the description carries a fair burden and provides important context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured with prerequisites, description, warning, and parameter details. Front-loaded with critical information. Slightly lengthy but each part serves a purpose. Could be more concise without losing clarity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers prerequisites, operation, side effects, and return values. With no annotations, it provides sufficient context for a mutation tool. Could specify class_identifier format and if the new class must exist.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has no descriptions (0% coverage), but the description explains identifier accepts document id or path and class_identifier is the new class identifier. Provides an example for identifier. This adds meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool changes a document's class in the content repository. It distinguishes from siblings by explicitly noting it only changes class and not properties, and points to update_document_properties for property updates.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides prerequisites: must call list_all_classes or determine_class first. Advises when to use the tool (class change) and when not to (property updates), offering explicit alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_document_propertiesA

PREREQUISITES: Before using this tool, you MUST call ONE of these tools first:

  1. property_extraction - For content based property extraction workflows (provides class specific property names and document text content for AI-based extraction)

  2. get_class_property_descriptions - For general property updates (provides full property metadata including data types, cardinality, etc.)

Description: Updates an existing document's properties in the content repository. This tool ONLY updates properties and does NOT change the document's class. To change a document's class, use the update_document_class tool instead.

:param identifier: The document id or path (required). This can be either the document's ID (GUID) or its path in the repository (e.g., "/Folder1/document.pdf"). :param document_properties: Properties to update for the document including name, mimeType, etc.

:returns: If successful, returns a Document object with its updated properties. If unsuccessful, returns a ToolError with details about the failure.

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYes
document_propertiesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, description carries full burden. It discloses mutability (updates properties), return values (Document object or ToolError), and identifier formats. However, it does not specify merge vs overwrite behavior for properties, concurrency, or permission requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Structured with prerequisites, description, parameters, and returns. Front-loaded important usage guidance. Slightly verbose but well-organized.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers purpose, prerequisites, parameters, return types, and sibling differentiation. Lacks details on behavioral specifics like idempotency and property overwrite semantics. Output schema existence reduces need to describe Document object.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema has 0% top-level description coverage, but nested properties have descriptions. Description adds value by clarifying identifier as GUID or path and listing key updatable properties (name, mimeType, etc.), though it does not enumerate all subfields explicitly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it updates document properties, specifying verb and resource. It explicitly differentiates from the sibling tool update_document_class, eliminating ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Prerequisites section mandates calling property_extraction or get_class_property_descriptions first, providing explicit when-to-use guidance. It also clarifies this tool does not change class and directs to the appropriate sibling for that.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

update_folderA

PREREQUISITES IN ORDER: To use this tool, you MUST call two other tools first in a specific sequence.

  1. determine_class tool to get the class_identifier.

  2. get_class_property_descriptions to get a list of valid properties for the given class_identifier

Description: Updates an existing folder in the content repository with specified properties.

:param identifier: String The folder identifier or path (required). This can be either the folder's ID (GUID) or its path in the repository (e.g., "/Folder1/folder123"). :param class_identifier: String Optional. The class identifier for the folder. If provided, allows changing the folder's class. :param folder_properties: FolderPropertiesInput Properties to update for the folder including name, etc

:returns: If successful, returns a Folder object with its updated properties. If unsuccessful, returns a ToolError with details about the failure.

ParametersJSON Schema
NameRequiredDescriptionDefault
identifierYes
class_identifierNo
folder_propertiesNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description only mentions returning a Folder object or ToolError. It does not disclose potential side effects (e.g., overwriting properties), required permissions, or other behavioral traits beyond the basic update operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description includes a separate prerequisites section and docstring format, which provides structure but is somewhat verbose. It could be more concise by integrating prerequisites into the main flow.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers key aspects: prerequisites, parameters, and return type. However, it does not explain error scenarios fully or how to obtain identifiers. Given the output schema exists but is not shown, completeness is adequate but not outstanding.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description adds meaningful parameter details beyond the schema, such as identifier being a GUID or path, and class_identifier allowing class change. Schema coverage is 0%, so the description compensates well.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool updates an existing folder with properties. It distinguishes from sibling tools like create_folder and delete_folder. However, the inclusion of prerequisites makes the purpose slightly less immediate.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly provides a prerequisite sequence (determine_class then get_class_property_descriptions) and notes when to call them, offering excellent guidance on when and how to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 29 tool updatesv1.0.4
    • Changedcancel_document_checkout8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / identifier / title
        Removed value: -"Identifier"
      • removedInput schema / title
        Removed value: -"cancel_document_checkoutArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "Document": {
        -    "description": "Document class for the MCP server.",
        -    "properties": {
        -      "className": {
        -        "default": "Document",
        -        "description": "Class identifier for the document",
        -        "title": "Classname",
        -        "type": "string"
        -      },
        -      "contentSize": {
        -        "anyOf": [
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Size of the document content",
        -        "title": "Contentsize"
        -      },
        -      "creator": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The creator of the document",
        -        "title": "Creator"
        -      },
        -      "dateCreated": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was created",
        -        "title": "Datecreated"
        -      },
        -      "dateLastModified": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was last modified",
        -        "title": "Datelastmodified"
        -      },
        -      "id": {
        -        "description": "The id of the document",
        -        "title": "Id",
        -        "type": "string"
        -      },
        -      "isVersioningEnabled": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Whether versioning is enabled",
        -        "title": "Isversioningenabled"
        -      },
        -      "lastModifier": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The last modifier of the document",
        -        "title": "Lastmodifier"
        -      },
        -      "majorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Major version number",
        -        "title": "Majorversionnumber"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "MIME type of the document",
        -        "title": "Mimetype"
        -      },
        -      "minorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Minor version number",
        -        "title": "Minorversionnumber"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The name of the document",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The owner of the document",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "additionalProperties": true,
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Document properties",
        -        "title": "Properties"
        -      }
        -    },
        -    "required": [
        -      "id"
        -    ],
        -    "title": "Document",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/Document"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "description": "Document class for the MCP server.",
        +    "properties": {
        +      "className": {
        +        "default": "Document",
        +        "description": "Class identifier for the document",
        +        "type": "string"
        +      },
        +      "contentSize": {
        +        "anyOf": [
        +          {
        +            "type": "number"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Size of the document content"
        +      },
        +      "creator": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The creator of the document"
        +      },
        +      "dateCreated": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was created"
        +      },
        +      "dateLastModified": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was last modified"
        +      },
        +      "id": {
        +        "description": "The id of the document",
        +        "type": "string"
        +      },
        +      "isVersioningEnabled": {
        +        "anyOf": [
        +          {
        +            "type": "boolean"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Whether versioning is enabled"
        +      },
        +      "lastModifier": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The last modifier of the document"
        +      },
        +      "majorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Major version number"
        +      },
        +      "mimeType": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "MIME type of the document"
        +      },
        +      "minorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Minor version number"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The name of the document"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The owner of the document"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "additionalProperties": true,
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Document properties"
        +      }
        +    },
        +    "required": [
        +      "id"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"cancel_document_checkoutOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedcheckin_document12 fields changed
      • removedInput schema / $defs
        Removed value: -{
        -  "DocumentPropertiesInput": {
        -    "description": "Input for document properties.",
        -    "properties": {
        -      "cmRetentionDate": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Retention date",
        -        "title": "Cmretentiondate"
        -      },
        -      "compoundDocumentState": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Compound document state",
        -        "title": "Compounddocumentstate"
        -      },
        -      "content": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Content can be specified if this represents a Reservation document or document creation",
        -        "title": "Content"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Mime type",
        -        "title": "Mimetype"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Name sets DocumentTitle or whatever property is configured as the Name property",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Owner",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "$ref": "#/$defs/PropertyIdentifierAndScalarValue"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Properties for Document",
        -        "title": "Properties"
        -      }
        -    },
        -    "title": "DocumentPropertiesInput",
        -    "type": "object"
        -  },
        -  "PropertyIdentifierAndScalarValue": {
        -    "description": "Represents a property with an identifier and scalar value.",
        -    "properties": {
        -      "identifier": {
        -        "description": "Property identifier",
        -        "title": "Identifier",
        -        "type": "string"
        -      },
        -      "value": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "boolean"
        -          },
        -          {},
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Property value",
        -        "title": "Value"
        -      }
        -    },
        -    "required": [
        -      "identifier"
        -    ],
        -    "title": "PropertyIdentifierAndScalarValue",
        -    "type": "object"
        -  },
        -  "SubCheckinActionInput": {
        -    "description": "Input for document check-in action.",
        -    "properties": {
        -      "autoClassify": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Whether to automatically classify the document. User must explicitly set this value, else it will be None by default",
        -        "title": "Autoclassify"
        -      },
        -      "checkinMinorVersion": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": false,
        -        "description": "Whether to check in as a minor version. By default, this is False since we always check in as major version unless specified by the user.",
        -        "title": "Checkinminorversion"
        -      }
        -    },
        -    "title": "SubCheckinActionInput",
        -    "type": "object"
        -  }
        -}
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / checkin_action / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/SubCheckinActionInput"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "description": "Input for document check-in action.",
        +    "properties": {
        +      "autoClassify": {
        +        "anyOf": [
        +          {
        +            "type": "boolean"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Whether to automatically classify the document. User must explicitly set this value, else it will be None by default"
        +      },
        +      "checkinMinorVersion": {
        +        "anyOf": [
        +          {
        +            "type": "boolean"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": false,
        +        "description": "Whether to check in as a minor version. By default, this is False since we always check in as major version unless specified by the user."
        +      }
        +    },
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / document_properties / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/DocumentPropertiesInput"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "description": "Input for document properties.",
        +    "properties": {
        +      "cmRetentionDate": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Retention date"
        +      },
        +      "compoundDocumentState": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Compound document state"
        +      },
        +      "content": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Content can be specified if this represents a Reservation document or document creation"
        +      },
        +      "mimeType": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Mime type"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Name sets DocumentTitle or whatever property is configured as the Name property"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Owner"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "description": "Represents a property with an identifier and scalar value.",
        +              "properties": {
        +                "identifier": {
        +                  "description": "Property identifier",
        +                  "type": "string"
        +                },
        +                "value": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "integer"
        +                    },
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "boolean"
        +                    },
        +                    {},
        +                    {
        +                      "type": "null"
        +                    }
        +                  ],
        +                  "default": null,
        +                  "description": "Property value"
        +                }
        +              },
        +              "required": [
        +                "identifier"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Properties for Document"
        +      }
        +    },
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • removedInput schema / properties / file_paths / title
        Removed value: -"File Paths"
      • removedInput schema / properties / identifier / title
        Removed value: -"Identifier"
      • removedInput schema / title
        Removed value: -"checkin_documentArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "Document": {
        -    "description": "Document class for the MCP server.",
        -    "properties": {
        -      "className": {
        -        "default": "Document",
        -        "description": "Class identifier for the document",
        -        "title": "Classname",
        -        "type": "string"
        -      },
        -      "contentSize": {
        -        "anyOf": [
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Size of the document content",
        -        "title": "Contentsize"
        -      },
        -      "creator": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The creator of the document",
        -        "title": "Creator"
        -      },
        -      "dateCreated": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was created",
        -        "title": "Datecreated"
        -      },
        -      "dateLastModified": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was last modified",
        -        "title": "Datelastmodified"
        -      },
        -      "id": {
        -        "description": "The id of the document",
        -        "title": "Id",
        -        "type": "string"
        -      },
        -      "isVersioningEnabled": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Whether versioning is enabled",
        -        "title": "Isversioningenabled"
        -      },
        -      "lastModifier": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The last modifier of the document",
        -        "title": "Lastmodifier"
        -      },
        -      "majorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Major version number",
        -        "title": "Majorversionnumber"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "MIME type of the document",
        -        "title": "Mimetype"
        -      },
        -      "minorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Minor version number",
        -        "title": "Minorversionnumber"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The name of the document",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The owner of the document",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "additionalProperties": true,
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Document properties",
        -        "title": "Properties"
        -      }
        -    },
        -    "required": [
        -      "id"
        -    ],
        -    "title": "Document",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/Document"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "description": "Document class for the MCP server.",
        +    "properties": {
        +      "className": {
        +        "default": "Document",
        +        "description": "Class identifier for the document",
        +        "type": "string"
        +      },
        +      "contentSize": {
        +        "anyOf": [
        +          {
        +            "type": "number"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Size of the document content"
        +      },
        +      "creator": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The creator of the document"
        +      },
        +      "dateCreated": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was created"
        +      },
        +      "dateLastModified": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was last modified"
        +      },
        +      "id": {
        +        "description": "The id of the document",
        +        "type": "string"
        +      },
        +      "isVersioningEnabled": {
        +        "anyOf": [
        +          {
        +            "type": "boolean"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Whether versioning is enabled"
        +      },
        +      "lastModifier": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The last modifier of the document"
        +      },
        +      "majorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Major version number"
        +      },
        +      "mimeType": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "MIME type of the document"
        +      },
        +      "minorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Minor version number"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The name of the document"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The owner of the document"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "additionalProperties": true,
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Document properties"
        +      }
        +    },
        +    "required": [
        +      "id"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"checkin_documentOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedcheckout_document12 fields changed
      • removedInput schema / $defs
        Removed value: -{
        -  "DocumentPropertiesInput": {
        -    "description": "Input for document properties.",
        -    "properties": {
        -      "cmRetentionDate": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Retention date",
        -        "title": "Cmretentiondate"
        -      },
        -      "compoundDocumentState": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Compound document state",
        -        "title": "Compounddocumentstate"
        -      },
        -      "content": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Content can be specified if this represents a Reservation document or document creation",
        -        "title": "Content"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Mime type",
        -        "title": "Mimetype"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Name sets DocumentTitle or whatever property is configured as the Name property",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Owner",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "$ref": "#/$defs/PropertyIdentifierAndScalarValue"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Properties for Document",
        -        "title": "Properties"
        -      }
        -    },
        -    "title": "DocumentPropertiesInput",
        -    "type": "object"
        -  },
        -  "ObjectPropertyInput": {
        -    "description": "Object property input.",
        -    "properties": {},
        -    "title": "ObjectPropertyInput",
        -    "type": "object"
        -  },
        -  "PropertyIdentifierAndScalarValue": {
        -    "description": "Represents a property with an identifier and scalar value.",
        -    "properties": {
        -      "identifier": {
        -        "description": "Property identifier",
        -        "title": "Identifier",
        -        "type": "string"
        -      },
        -      "value": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "boolean"
        -          },
        -          {},
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Property value",
        -        "title": "Value"
        -      }
        -    },
        -    "required": [
        -      "identifier"
        -    ],
        -    "title": "PropertyIdentifierAndScalarValue",
        -    "type": "object"
        -  },
        -  "ReservationType": {
        -    "description": "Specifies the type of reservation created for a checked-out document.",
        -    "enum": [
        -      "COLLABORATIVE",
        -      "EXCLUSIVE",
        -      "OBJECT_STORE_DEFAULT"
        -    ],
        -    "title": "ReservationType",
        -    "type": "string"
        -  },
        -  "SubCheckoutActionInput": {
        -    "description": "Input for document check-out action.",
        -    "properties": {
        -      "reservationClass": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Class for the reservation",
        -        "title": "Reservationclass"
        -      },
        -      "reservationId": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "ID for the reservation",
        -        "title": "Reservationid"
        -      },
        -      "reservationObjectProperties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "$ref": "#/$defs/ObjectPropertyInput"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Object properties for the reservation",
        -        "title": "Reservationobjectproperties"
        -      },
        -      "reservationProperties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "$ref": "#/$defs/PropertyIdentifierAndScalarValue"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Properties for the reservation",
        -        "title": "Reservationproperties"
        -      },
        -      "reservationType": {
        -        "anyOf": [
        -          {
        -            "$ref": "#/$defs/ReservationType"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Type of reservation (COLLABORATIVE, EXCLUSIVE, or OBJECT_STORE_DEFAULT)"
        -      }
        -    },
        -    "title": "SubCheckoutActionInput",
        -    "type": "object"
        -  }
        -}
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / checkout_action / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/SubCheckoutActionInput"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "description": "Input for document check-out action.",
        +    "properties": {
        +      "reservationClass": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Class for the reservation"
        +      },
        +      "reservationId": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "ID for the reservation"
        +      },
        +      "reservationObjectProperties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "description": "Object property input.",
        +              "properties": {},
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Object properties for the reservation"
        +      },
        +      "reservationProperties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "description": "Represents a property with an identifier and scalar value.",
        +              "properties": {
        +                "identifier": {
        +                  "description": "Property identifier",
        +                  "type": "string"
        +                },
        +                "value": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "integer"
        +                    },
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "boolean"
        +                    },
        +                    {},
        +                    {
        +                      "type": "null"
        +                    }
        +                  ],
        +                  "default": null,
        +                  "description": "Property value"
        +                }
        +              },
        +              "required": [
        +                "identifier"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Properties for the reservation"
        +      },
        +      "reservationType": {
        +        "anyOf": [
        +          {
        +            "description": "Specifies the type of reservation created for a checked-out document.",
        +            "enum": [
        +              "COLLABORATIVE",
        +              "EXCLUSIVE",
        +              "OBJECT_STORE_DEFAULT"
        +            ],
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Type of reservation (COLLABORATIVE, EXCLUSIVE, or OBJECT_STORE_DEFAULT)"
        +      }
        +    },
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • changedInput schema / properties / document_properties / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/DocumentPropertiesInput"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "description": "Input for document properties.",
        +    "properties": {
        +      "cmRetentionDate": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Retention date"
        +      },
        +      "compoundDocumentState": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Compound document state"
        +      },
        +      "content": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Content can be specified if this represents a Reservation document or document creation"
        +      },
        +      "mimeType": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Mime type"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Name sets DocumentTitle or whatever property is configured as the Name property"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Owner"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "description": "Represents a property with an identifier and scalar value.",
        +              "properties": {
        +                "identifier": {
        +                  "description": "Property identifier",
        +                  "type": "string"
        +                },
        +                "value": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "integer"
        +                    },
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "boolean"
        +                    },
        +                    {},
        +                    {
        +                      "type": "null"
        +                    }
        +                  ],
        +                  "default": null,
        +                  "description": "Property value"
        +                }
        +              },
        +              "required": [
        +                "identifier"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Properties for Document"
        +      }
        +    },
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • removedInput schema / properties / download_folder_path / title
        Removed value: -"Download Folder Path"
      • removedInput schema / properties / identifier / title
        Removed value: -"Identifier"
      • removedInput schema / title
        Removed value: -"checkout_documentArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "Document": {
        -    "description": "Document class for the MCP server.",
        -    "properties": {
        -      "className": {
        -        "default": "Document",
        -        "description": "Class identifier for the document",
        -        "title": "Classname",
        -        "type": "string"
        -      },
        -      "contentSize": {
        -        "anyOf": [
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Size of the document content",
        -        "title": "Contentsize"
        -      },
        -      "creator": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The creator of the document",
        -        "title": "Creator"
        -      },
        -      "dateCreated": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was created",
        -        "title": "Datecreated"
        -      },
        -      "dateLastModified": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was last modified",
        -        "title": "Datelastmodified"
        -      },
        -      "id": {
        -        "description": "The id of the document",
        -        "title": "Id",
        -        "type": "string"
        -      },
        -      "isVersioningEnabled": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Whether versioning is enabled",
        -        "title": "Isversioningenabled"
        -      },
        -      "lastModifier": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The last modifier of the document",
        -        "title": "Lastmodifier"
        -      },
        -      "majorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Major version number",
        -        "title": "Majorversionnumber"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "MIME type of the document",
        -        "title": "Mimetype"
        -      },
        -      "minorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Minor version number",
        -        "title": "Minorversionnumber"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The name of the document",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The owner of the document",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "additionalProperties": true,
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Document properties",
        -        "title": "Properties"
        -      }
        -    },
        -    "required": [
        -      "id"
        -    ],
        -    "title": "Document",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/Document"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "description": "Document class for the MCP server.",
        +    "properties": {
        +      "className": {
        +        "default": "Document",
        +        "description": "Class identifier for the document",
        +        "type": "string"
        +      },
        +      "contentSize": {
        +        "anyOf": [
        +          {
        +            "type": "number"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Size of the document content"
        +      },
        +      "creator": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The creator of the document"
        +      },
        +      "dateCreated": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was created"
        +      },
        +      "dateLastModified": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was last modified"
        +      },
        +      "id": {
        +        "description": "The id of the document",
        +        "type": "string"
        +      },
        +      "isVersioningEnabled": {
        +        "anyOf": [
        +          {
        +            "type": "boolean"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Whether versioning is enabled"
        +      },
        +      "lastModifier": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The last modifier of the document"
        +      },
        +      "majorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Major version number"
        +      },
        +      "mimeType": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "MIME type of the document"
        +      },
        +      "minorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Minor version number"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The name of the document"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The owner of the document"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "additionalProperties": true,
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Document properties"
        +      }
        +    },
        +    "required": [
        +      "id"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"checkout_documentOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedcreate_document14 fields changed
      • removedInput schema / $defs
        Removed value: -{
        -  "DocumentPropertiesInput": {
        -    "description": "Input for document properties.",
        -    "properties": {
        -      "cmRetentionDate": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Retention date",
        -        "title": "Cmretentiondate"
        -      },
        -      "compoundDocumentState": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Compound document state",
        -        "title": "Compounddocumentstate"
        -      },
        -      "content": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Content can be specified if this represents a Reservation document or document creation",
        -        "title": "Content"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Mime type",
        -        "title": "Mimetype"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Name sets DocumentTitle or whatever property is configured as the Name property",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Owner",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "$ref": "#/$defs/PropertyIdentifierAndScalarValue"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Properties for Document",
        -        "title": "Properties"
        -      }
        -    },
        -    "title": "DocumentPropertiesInput",
        -    "type": "object"
        -  },
        -  "PropertyIdentifierAndScalarValue": {
        -    "description": "Represents a property with an identifier and scalar value.",
        -    "properties": {
        -      "identifier": {
        -        "description": "Property identifier",
        -        "title": "Identifier",
        -        "type": "string"
        -      },
        -      "value": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "boolean"
        -          },
        -          {},
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Property value",
        -        "title": "Value"
        -      }
        -    },
        -    "required": [
        -      "identifier"
        -    ],
        -    "title": "PropertyIdentifierAndScalarValue",
        -    "type": "object"
        -  },
        -  "SubCheckinActionInput": {
        -    "description": "Input for document check-in action.",
        -    "properties": {
        -      "autoClassify": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Whether to automatically classify the document. User must explicitly set this value, else it will be None by default",
        -        "title": "Autoclassify"
        -      },
        -      "checkinMinorVersion": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": false,
        -        "description": "Whether to check in as a minor version. By default, this is False since we always check in as major version unless specified by the user.",
        -        "title": "Checkinminorversion"
        -      }
        -    },
        -    "title": "SubCheckinActionInput",
        -    "type": "object"
        -  }
        -}
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / checkin_action / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/SubCheckinActionInput"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "description": "Input for document check-in action.",
        +    "properties": {
        +      "autoClassify": {
        +        "anyOf": [
        +          {
        +            "type": "boolean"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Whether to automatically classify the document. User must explicitly set this value, else it will be None by default"
        +      },
        +      "checkinMinorVersion": {
        +        "anyOf": [
        +          {
        +            "type": "boolean"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": false,
        +        "description": "Whether to check in as a minor version. By default, this is False since we always check in as major version unless specified by the user."
        +      }
        +    },
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • removedInput schema / properties / class_identifier / title
        Removed value: -"Class Identifier"
      • changedInput schema / properties / document_properties / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/DocumentPropertiesInput"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "description": "Input for document properties.",
        +    "properties": {
        +      "cmRetentionDate": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Retention date"
        +      },
        +      "compoundDocumentState": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Compound document state"
        +      },
        +      "content": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Content can be specified if this represents a Reservation document or document creation"
        +      },
        +      "mimeType": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Mime type"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Name sets DocumentTitle or whatever property is configured as the Name property"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Owner"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "description": "Represents a property with an identifier and scalar value.",
        +              "properties": {
        +                "identifier": {
        +                  "description": "Property identifier",
        +                  "type": "string"
        +                },
        +                "value": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "integer"
        +                    },
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "boolean"
        +                    },
        +                    {},
        +                    {
        +                      "type": "null"
        +                    }
        +                  ],
        +                  "default": null,
        +                  "description": "Property value"
        +                }
        +              },
        +              "required": [
        +                "identifier"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Properties for Document"
        +      }
        +    },
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • removedInput schema / properties / file_in_folder_identifier / title
        Removed value: -"File In Folder Identifier"
      • removedInput schema / properties / file_paths / title
        Removed value: -"File Paths"
      • removedInput schema / properties / id / title
        Removed value: -"Id"
      • removedInput schema / title
        Removed value: -"create_documentArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "Document": {
        -    "description": "Document class for the MCP server.",
        -    "properties": {
        -      "className": {
        -        "default": "Document",
        -        "description": "Class identifier for the document",
        -        "title": "Classname",
        -        "type": "string"
        -      },
        -      "contentSize": {
        -        "anyOf": [
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Size of the document content",
        -        "title": "Contentsize"
        -      },
        -      "creator": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The creator of the document",
        -        "title": "Creator"
        -      },
        -      "dateCreated": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was created",
        -        "title": "Datecreated"
        -      },
        -      "dateLastModified": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was last modified",
        -        "title": "Datelastmodified"
        -      },
        -      "id": {
        -        "description": "The id of the document",
        -        "title": "Id",
        -        "type": "string"
        -      },
        -      "isVersioningEnabled": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Whether versioning is enabled",
        -        "title": "Isversioningenabled"
        -      },
        -      "lastModifier": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The last modifier of the document",
        -        "title": "Lastmodifier"
        -      },
        -      "majorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Major version number",
        -        "title": "Majorversionnumber"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "MIME type of the document",
        -        "title": "Mimetype"
        -      },
        -      "minorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Minor version number",
        -        "title": "Minorversionnumber"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The name of the document",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The owner of the document",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "additionalProperties": true,
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Document properties",
        -        "title": "Properties"
        -      }
        -    },
        -    "required": [
        -      "id"
        -    ],
        -    "title": "Document",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/Document"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "description": "Document class for the MCP server.",
        +    "properties": {
        +      "className": {
        +        "default": "Document",
        +        "description": "Class identifier for the document",
        +        "type": "string"
        +      },
        +      "contentSize": {
        +        "anyOf": [
        +          {
        +            "type": "number"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Size of the document content"
        +      },
        +      "creator": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The creator of the document"
        +      },
        +      "dateCreated": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was created"
        +      },
        +      "dateLastModified": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was last modified"
        +      },
        +      "id": {
        +        "description": "The id of the document",
        +        "type": "string"
        +      },
        +      "isVersioningEnabled": {
        +        "anyOf": [
        +          {
        +            "type": "boolean"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Whether versioning is enabled"
        +      },
        +      "lastModifier": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The last modifier of the document"
        +      },
        +      "majorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Major version number"
        +      },
        +      "mimeType": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "MIME type of the document"
        +      },
        +      "minorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Minor version number"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The name of the document"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The owner of the document"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "additionalProperties": true,
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Document properties"
        +      }
        +    },
        +    "required": [
        +      "id"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"create_documentOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedcreate_folder13 fields changed
      • removedInput schema / $defs
        Removed value: -{
        -  "FolderPropertiesInput": {
        -    "description": "Input for folder properties.",
        -    "properties": {
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Name sets folder name or whatever property is configured as the Name property",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Owner",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "$ref": "#/$defs/PropertyIdentifierAndScalarValue"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Properties for Folder",
        -        "title": "Properties"
        -      }
        -    },
        -    "title": "FolderPropertiesInput",
        -    "type": "object"
        -  },
        -  "PropertyIdentifierAndScalarValue": {
        -    "description": "Represents a property with an identifier and scalar value.",
        -    "properties": {
        -      "identifier": {
        -        "description": "Property identifier",
        -        "title": "Identifier",
        -        "type": "string"
        -      },
        -      "value": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "boolean"
        -          },
        -          {},
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Property value",
        -        "title": "Value"
        -      }
        -    },
        -    "required": [
        -      "identifier"
        -    ],
        -    "title": "PropertyIdentifierAndScalarValue",
        -    "type": "object"
        -  }
        -}
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / class_identifier / title
        Removed value: -"Class Identifier"
      • changedInput schema / properties / folder_properties / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/FolderPropertiesInput"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "description": "Input for folder properties.",
        +    "properties": {
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Name sets folder name or whatever property is configured as the Name property"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Owner"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "description": "Represents a property with an identifier and scalar value.",
        +              "properties": {
        +                "identifier": {
        +                  "description": "Property identifier",
        +                  "type": "string"
        +                },
        +                "value": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "integer"
        +                    },
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "boolean"
        +                    },
        +                    {},
        +                    {
        +                      "type": "null"
        +                    }
        +                  ],
        +                  "default": null,
        +                  "description": "Property value"
        +                }
        +              },
        +              "required": [
        +                "identifier"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Properties for Folder"
        +      }
        +    },
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • removedInput schema / properties / id / title
        Removed value: -"Id"
      • removedInput schema / properties / name / title
        Removed value: -"Name"
      • removedInput schema / properties / parent_folder / title
        Removed value: -"Parent Folder"
      • removedInput schema / title
        Removed value: -"create_folderArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "Folder": {
        -    "description": "Folder class for the MCP server.",
        -    "properties": {
        -      "class_identifier": {
        -        "default": "Folder",
        -        "description": "Class identifier for the folder",
        -        "title": "Class Identifier",
        -        "type": "string"
        -      },
        -      "creator": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The creator of the folder",
        -        "title": "Creator"
        -      },
        -      "dateCreated": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when folder was created",
        -        "title": "Datecreated"
        -      },
        -      "dateLastModified": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when folder was last modified",
        -        "title": "Datelastmodified"
        -      },
        -      "id": {
        -        "description": "The id of the folder",
        -        "title": "Id",
        -        "type": "string"
        -      },
        -      "lastModifier": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The last modifier of the folder",
        -        "title": "Lastmodifier"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The name of the folder",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The owner of the folder",
        -        "title": "Owner"
        -      },
        -      "parent_folder_id": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The id of the parent folder",
        -        "title": "Parent Folder Id"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "additionalProperties": true,
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Folder properties",
        -        "title": "Properties"
        -      }
        -    },
        -    "required": [
        -      "id"
        -    ],
        -    "title": "Folder",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/Folder"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "description": "Folder class for the MCP server.",
        +    "properties": {
        +      "class_identifier": {
        +        "default": "Folder",
        +        "description": "Class identifier for the folder",
        +        "type": "string"
        +      },
        +      "creator": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The creator of the folder"
        +      },
        +      "dateCreated": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when folder was created"
        +      },
        +      "dateLastModified": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when folder was last modified"
        +      },
        +      "id": {
        +        "description": "The id of the folder",
        +        "type": "string"
        +      },
        +      "lastModifier": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The last modifier of the folder"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The name of the folder"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The owner of the folder"
        +      },
        +      "parent_folder_id": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The id of the parent folder"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "additionalProperties": true,
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Folder properties"
        +      }
        +    },
        +    "required": [
        +      "id"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"create_folderOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changeddelete_document_version8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / identifier / title
        Removed value: -"Identifier"
      • removedInput schema / title
        Removed value: -"delete_document_versionArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"delete_document_versionOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changeddelete_folder8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / id_or_path / title
        Removed value: -"Id Or Path"
      • removedInput schema / title
        Removed value: -"delete_folderArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"delete_folderOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changeddelete_version_series8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / version_series_id / title
        Removed value: -"Version Series Id"
      • removedInput schema / title
        Removed value: -"delete_version_seriesArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"delete_version_seriesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changeddetermine_class9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / keywords / title
        Removed value: -"Keywords"
      • removedInput schema / properties / root_class / title
        Removed value: -"Root Class"
      • removedInput schema / title
        Removed value: -"determine_classArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "ClassDescriptionData": {
        -    "description": "Information about a class in the content repository.",
        -    "properties": {
        -      "descriptive_text": {
        -        "description": "Describes additional details about this class",
        -        "title": "Descriptive Text",
        -        "type": "string"
        -      },
        -      "display_name": {
        -        "description": "The display name of the class",
        -        "title": "Display Name",
        -        "type": "string"
        -      },
        -      "symbolic_name": {
        -        "description": "Symbolic name that is used to reference this class",
        -        "title": "Symbolic Name",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "display_name",
        -      "symbolic_name",
        -      "descriptive_text"
        -    ],
        -    "title": "ClassDescriptionData",
        -    "type": "object"
        -  },
        -  "ClassMatch": {
        -    "description": "Represents a matched class with its score and additional information.\n\nThis class contains information about a class that matched a search query,\nincluding its class description data and match score.\nThe score indicates how well the class matched the search criteria,\nwith higher values representing better matches.",
        -    "properties": {
        -      "class_description_data": {
        -        "$ref": "#/$defs/ClassDescriptionData",
        -        "description": "The complete class description data object containing class_name, display_name, and descriptive_text"
        -      },
        -      "score": {
        -        "description": "The match score, higher values indicate better matches",
        -        "title": "Score",
        -        "type": "number"
        -      }
        -    },
        -    "required": [
        -      "class_description_data",
        -      "score"
        -    ],
        -    "title": "ClassMatch",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "items": {
        -      "$ref": "#/$defs/ClassMatch"
        -    },
        -    "type": "array"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "items": {
        +      "description": "Represents a matched class with its score and additional information.\n\nThis class contains information about a class that matched a search query,\nincluding its class description data and match score.\nThe score indicates how well the class matched the search criteria,\nwith higher values representing better matches.",
        +      "properties": {
        +        "class_description_data": {
        +          "description": "The complete class description data object containing class_name, display_name, and descriptive_text",
        +          "properties": {
        +            "descriptive_text": {
        +              "description": "Describes additional details about this class",
        +              "type": "string"
        +            },
        +            "display_name": {
        +              "description": "The display name of the class",
        +              "type": "string"
        +            },
        +            "symbolic_name": {
        +              "description": "Symbolic name that is used to reference this class",
        +              "type": "string"
        +            }
        +          },
        +          "required": [
        +            "display_name",
        +            "symbolic_name",
        +            "descriptive_text"
        +          ],
        +          "type": "object"
        +        },
        +        "score": {
        +          "description": "The match score, higher values indicate better matches",
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "class_description_data",
        +        "score"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"determine_classOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Addeddocument_search
    • Addedfile_document
    • Changedget_class_property_descriptions8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / class_symbolic_name / title
        Removed value: -"Class Symbolic Name"
      • removedInput schema / title
        Removed value: -"get_class_property_descriptionsArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "CachePropertyDescription": {
        -    "description": "Describes detailed attributes or metadata about a property.",
        -    "properties": {
        -      "cardinality": {
        -        "$ref": "#/$defs/Cardinality",
        -        "description": "Whether this property holds a single value or multiple values."
        -      },
        -      "data_type": {
        -        "$ref": "#/$defs/TypeID",
        -        "description": "The type of data this property can hold"
        -      },
        -      "descriptive_text": {
        -        "description": "Describes additional details about this property",
        -        "title": "Descriptive Text",
        -        "type": "string"
        -      },
        -      "display_name": {
        -        "description": "A user displayable name for this property",
        -        "title": "Display Name",
        -        "type": "string"
        -      },
        -      "is_hidden": {
        -        "default": false,
        -        "description": "Indicates whether this property is hidden",
        -        "title": "Is Hidden",
        -        "type": "boolean"
        -      },
        -      "is_searchable": {
        -        "description": "Indicates whether searches can include conditions involving this property",
        -        "title": "Is Searchable",
        -        "type": "boolean"
        -      },
        -      "is_system_owned": {
        -        "default": false,
        -        "description": "Indicates whether this property is system-owned",
        -        "title": "Is System Owned",
        -        "type": "boolean"
        -      },
        -      "symbolic_name": {
        -        "description": "Symbolic name that is used to reference this property",
        -        "title": "Symbolic Name",
        -        "type": "string"
        -      },
        -      "valid_search_operators": {
        -        "description": "The valid operators that can be used with this property in a search condition",
        -        "items": {
        -          "$ref": "#/$defs/SearchOperator"
        -        },
        -        "title": "Valid Search Operators",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "symbolic_name",
        -      "display_name",
        -      "descriptive_text",
        -      "data_type",
        -      "cardinality",
        -      "is_searchable",
        -      "valid_search_operators"
        -    ],
        -    "title": "CachePropertyDescription",
        -    "type": "object"
        -  },
        -  "Cardinality": {
        -    "description": "Indicates whether a data variable has a single value or multiple values",
        -    "enum": [
        -      "SINGLE",
        -      "LIST",
        -      "ENUM"
        -    ],
        -    "title": "Cardinality",
        -    "type": "string"
        -  },
        -  "SearchOperator": {
        -    "description": "Enum defining all valid search operators for repository searches.\n\nThese operators determine how property values are compared during searches.",
        -    "enum": [
        -      "=",
        -      ">",
        -      "<",
        -      ">=",
        -      "<=",
        -      "!=",
        -      "CONTAINS",
        -      "STARTS",
        -      "ENDS"
        -    ],
        -    "title": "SearchOperator",
        -    "type": "string"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  },
        -  "TypeID": {
        -    "description": "Indicates the type of a data variable",
        -    "enum": [
        -      "BOOLEAN",
        -      "DATE",
        -      "DOUBLE",
        -      "GUID",
        -      "LONG",
        -      "STRING",
        -      "OBJECT",
        -      "BINARY"
        -    ],
        -    "title": "TypeID",
        -    "type": "string"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "items": {
        -      "$ref": "#/$defs/CachePropertyDescription"
        -    },
        -    "type": "array"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "items": {
        +      "description": "Describes detailed attributes or metadata about a property.",
        +      "properties": {
        +        "cardinality": {
        +          "description": "Whether this property holds a single value or multiple values.",
        +          "enum": [
        +            "SINGLE",
        +            "LIST",
        +            "ENUM"
        +          ],
        +          "type": "string"
        +        },
        +        "data_type": {
        +          "description": "The type of data this property can hold",
        +          "enum": [
        +            "BOOLEAN",
        +            "DATE",
        +            "DOUBLE",
        +            "GUID",
        +            "LONG",
        +            "STRING",
        +            "OBJECT",
        +            "BINARY"
        +          ],
        +          "type": "string"
        +        },
        +        "descriptive_text": {
        +          "description": "Describes additional details about this property",
        +          "type": "string"
        +        },
        +        "display_name": {
        +          "description": "A user displayable name for this property",
        +          "type": "string"
        +        },
        +        "is_hidden": {
        +          "default": false,
        +          "description": "Indicates whether this property is hidden",
        +          "type": "boolean"
        +        },
        +        "is_searchable": {
        +          "description": "Indicates whether searches can include conditions involving this property",
        +          "type": "boolean"
        +        },
        +        "is_system_owned": {
        +          "default": false,
        +          "description": "Indicates whether this property is system-owned",
        +          "type": "boolean"
        +        },
        +        "symbolic_name": {
        +          "description": "Symbolic name that is used to reference this property",
        +          "type": "string"
        +        },
        +        "valid_search_operators": {
        +          "description": "The valid operators that can be used with this property in a search condition",
        +          "items": {
        +            "description": "Enum defining all valid search operators for repository searches.\n\nThese operators determine how property values are compared during searches.",
        +            "enum": [
        +              "=",
        +              ">",
        +              "<",
        +              ">=",
        +              "<=",
        +              "!=",
        +              "CONTAINS",
        +              "STARTS",
        +              "ENDS"
        +            ],
        +            "type": "string"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "symbolic_name",
        +        "display_name",
        +        "descriptive_text",
        +        "data_type",
        +        "cardinality",
        +        "is_searchable",
        +        "valid_search_operators"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"get_class_property_descriptionsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Removedget_class_specific_properties_name
    • Removedget_document_annotations_tool
    • Changedget_document_properties8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / identifier / title
        Removed value: -"Identifier"
      • removedInput schema / title
        Removed value: -"get_document_propertiesArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "Document": {
        -    "description": "Document class for the MCP server.",
        -    "properties": {
        -      "className": {
        -        "default": "Document",
        -        "description": "Class identifier for the document",
        -        "title": "Classname",
        -        "type": "string"
        -      },
        -      "contentSize": {
        -        "anyOf": [
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Size of the document content",
        -        "title": "Contentsize"
        -      },
        -      "creator": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The creator of the document",
        -        "title": "Creator"
        -      },
        -      "dateCreated": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was created",
        -        "title": "Datecreated"
        -      },
        -      "dateLastModified": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was last modified",
        -        "title": "Datelastmodified"
        -      },
        -      "id": {
        -        "description": "The id of the document",
        -        "title": "Id",
        -        "type": "string"
        -      },
        -      "isVersioningEnabled": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Whether versioning is enabled",
        -        "title": "Isversioningenabled"
        -      },
        -      "lastModifier": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The last modifier of the document",
        -        "title": "Lastmodifier"
        -      },
        -      "majorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Major version number",
        -        "title": "Majorversionnumber"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "MIME type of the document",
        -        "title": "Mimetype"
        -      },
        -      "minorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Minor version number",
        -        "title": "Minorversionnumber"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The name of the document",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The owner of the document",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "additionalProperties": true,
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Document properties",
        -        "title": "Properties"
        -      }
        -    },
        -    "required": [
        -      "id"
        -    ],
        -    "title": "Document",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/Document"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "description": "Document class for the MCP server.",
        +    "properties": {
        +      "className": {
        +        "default": "Document",
        +        "description": "Class identifier for the document",
        +        "type": "string"
        +      },
        +      "contentSize": {
        +        "anyOf": [
        +          {
        +            "type": "number"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Size of the document content"
        +      },
        +      "creator": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The creator of the document"
        +      },
        +      "dateCreated": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was created"
        +      },
        +      "dateLastModified": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was last modified"
        +      },
        +      "id": {
        +        "description": "The id of the document",
        +        "type": "string"
        +      },
        +      "isVersioningEnabled": {
        +        "anyOf": [
        +          {
        +            "type": "boolean"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Whether versioning is enabled"
        +      },
        +      "lastModifier": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The last modifier of the document"
        +      },
        +      "majorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Major version number"
        +      },
        +      "mimeType": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "MIME type of the document"
        +      },
        +      "minorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Minor version number"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The name of the document"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The owner of the document"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "additionalProperties": true,
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Document properties"
        +      }
        +    },
        +    "required": [
        +      "id"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"get_document_propertiesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_document_text_extract6 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / identifier / title
        Removed value: -"Identifier"
      • removedInput schema / title
        Removed value: -"get_document_text_extractArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"get_document_text_extractOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_document_versions4 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / identifier / title
        Removed value: -"Identifier"
      • removedInput schema / title
        Removed value: -"get_document_versionsArguments"
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "additionalProperties": true,
        +  "type": "object"
        +}
    • Addedget_folder_detail
    • Changedget_folder_documents8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / folder_id_or_path / title
        Removed value: -"Folder Id Or Path"
      • removedInput schema / title
        Removed value: -"get_folder_documentsArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "Document": {
        -    "description": "Document class for the MCP server.",
        -    "properties": {
        -      "className": {
        -        "default": "Document",
        -        "description": "Class identifier for the document",
        -        "title": "Classname",
        -        "type": "string"
        -      },
        -      "contentSize": {
        -        "anyOf": [
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Size of the document content",
        -        "title": "Contentsize"
        -      },
        -      "creator": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The creator of the document",
        -        "title": "Creator"
        -      },
        -      "dateCreated": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was created",
        -        "title": "Datecreated"
        -      },
        -      "dateLastModified": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was last modified",
        -        "title": "Datelastmodified"
        -      },
        -      "id": {
        -        "description": "The id of the document",
        -        "title": "Id",
        -        "type": "string"
        -      },
        -      "isVersioningEnabled": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Whether versioning is enabled",
        -        "title": "Isversioningenabled"
        -      },
        -      "lastModifier": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The last modifier of the document",
        -        "title": "Lastmodifier"
        -      },
        -      "majorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Major version number",
        -        "title": "Majorversionnumber"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "MIME type of the document",
        -        "title": "Mimetype"
        -      },
        -      "minorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Minor version number",
        -        "title": "Minorversionnumber"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The name of the document",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The owner of the document",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "additionalProperties": true,
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Document properties",
        -        "title": "Properties"
        -      }
        -    },
        -    "required": [
        -      "id"
        -    ],
        -    "title": "Document",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "items": {
        -      "$ref": "#/$defs/Document"
        -    },
        -    "type": "array"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "items": {
        +      "description": "Document class for the MCP server.",
        +      "properties": {
        +        "className": {
        +          "default": "Document",
        +          "description": "Class identifier for the document",
        +          "type": "string"
        +        },
        +        "contentSize": {
        +          "anyOf": [
        +            {
        +              "type": "number"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "Size of the document content"
        +        },
        +        "creator": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "The creator of the document"
        +        },
        +        "dateCreated": {
        +          "anyOf": [
        +            {
        +              "format": "date-time",
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "Date when document was created"
        +        },
        +        "dateLastModified": {
        +          "anyOf": [
        +            {
        +              "format": "date-time",
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "Date when document was last modified"
        +        },
        +        "id": {
        +          "description": "The id of the document",
        +          "type": "string"
        +        },
        +        "isVersioningEnabled": {
        +          "anyOf": [
        +            {
        +              "type": "boolean"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "Whether versioning is enabled"
        +        },
        +        "lastModifier": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "The last modifier of the document"
        +        },
        +        "majorVersionNumber": {
        +          "anyOf": [
        +            {
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "Major version number"
        +        },
        +        "mimeType": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "MIME type of the document"
        +        },
        +        "minorVersionNumber": {
        +          "anyOf": [
        +            {
        +              "type": "integer"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "Minor version number"
        +        },
        +        "name": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "The name of the document"
        +        },
        +        "owner": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "The owner of the document"
        +        },
        +        "properties": {
        +          "anyOf": [
        +            {
        +              "items": {
        +                "additionalProperties": true,
        +                "type": "object"
        +              },
        +              "type": "array"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "Document properties"
        +        }
        +      },
        +      "required": [
        +        "id"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"get_folder_documentsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedget_searchable_property_descriptions8 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / class_symbolic_name / title
        Removed value: -"Class Symbolic Name"
      • removedInput schema / title
        Removed value: -"get_searchable_property_descriptionsArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "CachePropertyDescription": {
        -    "description": "Describes detailed attributes or metadata about a property.",
        -    "properties": {
        -      "cardinality": {
        -        "$ref": "#/$defs/Cardinality",
        -        "description": "Whether this property holds a single value or multiple values."
        -      },
        -      "data_type": {
        -        "$ref": "#/$defs/TypeID",
        -        "description": "The type of data this property can hold"
        -      },
        -      "descriptive_text": {
        -        "description": "Describes additional details about this property",
        -        "title": "Descriptive Text",
        -        "type": "string"
        -      },
        -      "display_name": {
        -        "description": "A user displayable name for this property",
        -        "title": "Display Name",
        -        "type": "string"
        -      },
        -      "is_hidden": {
        -        "default": false,
        -        "description": "Indicates whether this property is hidden",
        -        "title": "Is Hidden",
        -        "type": "boolean"
        -      },
        -      "is_searchable": {
        -        "description": "Indicates whether searches can include conditions involving this property",
        -        "title": "Is Searchable",
        -        "type": "boolean"
        -      },
        -      "is_system_owned": {
        -        "default": false,
        -        "description": "Indicates whether this property is system-owned",
        -        "title": "Is System Owned",
        -        "type": "boolean"
        -      },
        -      "symbolic_name": {
        -        "description": "Symbolic name that is used to reference this property",
        -        "title": "Symbolic Name",
        -        "type": "string"
        -      },
        -      "valid_search_operators": {
        -        "description": "The valid operators that can be used with this property in a search condition",
        -        "items": {
        -          "$ref": "#/$defs/SearchOperator"
        -        },
        -        "title": "Valid Search Operators",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "symbolic_name",
        -      "display_name",
        -      "descriptive_text",
        -      "data_type",
        -      "cardinality",
        -      "is_searchable",
        -      "valid_search_operators"
        -    ],
        -    "title": "CachePropertyDescription",
        -    "type": "object"
        -  },
        -  "Cardinality": {
        -    "description": "Indicates whether a data variable has a single value or multiple values",
        -    "enum": [
        -      "SINGLE",
        -      "LIST",
        -      "ENUM"
        -    ],
        -    "title": "Cardinality",
        -    "type": "string"
        -  },
        -  "SearchOperator": {
        -    "description": "Enum defining all valid search operators for repository searches.\n\nThese operators determine how property values are compared during searches.",
        -    "enum": [
        -      "=",
        -      ">",
        -      "<",
        -      ">=",
        -      "<=",
        -      "!=",
        -      "CONTAINS",
        -      "STARTS",
        -      "ENDS"
        -    ],
        -    "title": "SearchOperator",
        -    "type": "string"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  },
        -  "TypeID": {
        -    "description": "Indicates the type of a data variable",
        -    "enum": [
        -      "BOOLEAN",
        -      "DATE",
        -      "DOUBLE",
        -      "GUID",
        -      "LONG",
        -      "STRING",
        -      "OBJECT",
        -      "BINARY"
        -    ],
        -    "title": "TypeID",
        -    "type": "string"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "items": {
        -      "$ref": "#/$defs/CachePropertyDescription"
        -    },
        -    "type": "array"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "items": {
        +      "description": "Describes detailed attributes or metadata about a property.",
        +      "properties": {
        +        "cardinality": {
        +          "description": "Whether this property holds a single value or multiple values.",
        +          "enum": [
        +            "SINGLE",
        +            "LIST",
        +            "ENUM"
        +          ],
        +          "type": "string"
        +        },
        +        "data_type": {
        +          "description": "The type of data this property can hold",
        +          "enum": [
        +            "BOOLEAN",
        +            "DATE",
        +            "DOUBLE",
        +            "GUID",
        +            "LONG",
        +            "STRING",
        +            "OBJECT",
        +            "BINARY"
        +          ],
        +          "type": "string"
        +        },
        +        "descriptive_text": {
        +          "description": "Describes additional details about this property",
        +          "type": "string"
        +        },
        +        "display_name": {
        +          "description": "A user displayable name for this property",
        +          "type": "string"
        +        },
        +        "is_hidden": {
        +          "default": false,
        +          "description": "Indicates whether this property is hidden",
        +          "type": "boolean"
        +        },
        +        "is_searchable": {
        +          "description": "Indicates whether searches can include conditions involving this property",
        +          "type": "boolean"
        +        },
        +        "is_system_owned": {
        +          "default": false,
        +          "description": "Indicates whether this property is system-owned",
        +          "type": "boolean"
        +        },
        +        "symbolic_name": {
        +          "description": "Symbolic name that is used to reference this property",
        +          "type": "string"
        +        },
        +        "valid_search_operators": {
        +          "description": "The valid operators that can be used with this property in a search condition",
        +          "items": {
        +            "description": "Enum defining all valid search operators for repository searches.\n\nThese operators determine how property values are compared during searches.",
        +            "enum": [
        +              "=",
        +              ">",
        +              "<",
        +              ">=",
        +              "<=",
        +              "!=",
        +              "CONTAINS",
        +              "STARTS",
        +              "ENDS"
        +            ],
        +            "type": "string"
        +          },
        +          "type": "array"
        +        }
        +      },
        +      "required": [
        +        "symbolic_name",
        +        "display_name",
        +        "descriptive_text",
        +        "data_type",
        +        "cardinality",
        +        "is_searchable",
        +        "valid_search_operators"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"get_searchable_property_descriptionsOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Removedlist_all_classes
    • Changedlist_root_classes5 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / title
        Removed value: -"list_root_classes_toolArguments"
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"list_root_classes_toolOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedlookup_documents_by_name9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / class_symbolic_name / title
        Removed value: -"Class Symbolic Name"
      • removedInput schema / properties / keywords / title
        Removed value: -"Keywords"
      • removedInput schema / title
        Removed value: -"lookup_documents_by_nameArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "DocumentMatch": {
        -    "description": "Information about a document that matches a search.",
        -    "properties": {
        -      "class_name": {
        -        "default": "Document",
        -        "description": "Class identifier for the document",
        -        "title": "Class Name",
        -        "type": "string"
        -      },
        -      "id": {
        -        "description": "The id of the document",
        -        "title": "Id",
        -        "type": "string"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The name of the document",
        -        "title": "Name"
        -      },
        -      "score": {
        -        "description": "The match score, higher values indicate better matches",
        -        "title": "Score",
        -        "type": "number"
        -      }
        -    },
        -    "required": [
        -      "id",
        -      "score"
        -    ],
        -    "title": "DocumentMatch",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "items": {
        -      "$ref": "#/$defs/DocumentMatch"
        -    },
        -    "type": "array"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "items": {
        +      "description": "Information about a document that matches a search.",
        +      "properties": {
        +        "class_name": {
        +          "default": "Document",
        +          "description": "Class identifier for the document",
        +          "type": "string"
        +        },
        +        "id": {
        +          "description": "The id of the document",
        +          "type": "string"
        +        },
        +        "name": {
        +          "anyOf": [
        +            {
        +              "type": "string"
        +            },
        +            {
        +              "type": "null"
        +            }
        +          ],
        +          "default": null,
        +          "description": "The name of the document"
        +        },
        +        "score": {
        +          "description": "The match score, higher values indicate better matches",
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "id",
        +        "score"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"lookup_documents_by_nameOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedlookup_documents_by_path9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / class_symbolic_name / title
        Removed value: -"Class Symbolic Name"
      • removedInput schema / properties / keywords_at_path_levels / title
        Removed value: -"Keywords At Path Levels"
      • removedInput schema / title
        Removed value: -"lookup_documents_by_pathArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "DocumentFilingMatch": {
        -    "description": "Information about a document where it is filed in a folder that matches a search.",
        -    "properties": {
        -      "containment_id": {
        -        "description": "The id of the containment relationship where the document is filed",
        -        "title": "Containment Id",
        -        "type": "string"
        -      },
        -      "containment_name": {
        -        "description": "The containment name of the document where filed in the folder",
        -        "title": "Containment Name",
        -        "type": "string"
        -      },
        -      "containment_path": {
        -        "description": "The containment path of the document where filed in the folder",
        -        "title": "Containment Path",
        -        "type": "string"
        -      },
        -      "document_class_name": {
        -        "default": "Document",
        -        "description": "Class identifier for the document that is filed",
        -        "title": "Document Class Name",
        -        "type": "string"
        -      },
        -      "document_id": {
        -        "description": "The id of the document that is filed in the folder",
        -        "title": "Document Id",
        -        "type": "string"
        -      },
        -      "document_name": {
        -        "description": "The name of the document that is filed in the folder",
        -        "title": "Document Name",
        -        "type": "string"
        -      },
        -      "folder_id": {
        -        "description": "The id of the folder where the document is filed",
        -        "title": "Folder Id",
        -        "type": "string"
        -      },
        -      "folder_name": {
        -        "description": "The name of the folder where the document is filed",
        -        "title": "Folder Name",
        -        "type": "string"
        -      },
        -      "folder_path": {
        -        "description": "The path of the folder where the document is filed",
        -        "title": "Folder Path",
        -        "type": "string"
        -      },
        -      "score": {
        -        "description": "The match score, higher values indicate better matches",
        -        "title": "Score",
        -        "type": "number"
        -      }
        -    },
        -    "required": [
        -      "containment_id",
        -      "containment_name",
        -      "containment_path",
        -      "document_id",
        -      "document_name",
        -      "folder_id",
        -      "folder_name",
        -      "folder_path",
        -      "score"
        -    ],
        -    "title": "DocumentFilingMatch",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "items": {
        -      "$ref": "#/$defs/DocumentFilingMatch"
        -    },
        -    "type": "array"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "items": {
        +      "description": "Information about a document where it is filed in a folder that matches a search.",
        +      "properties": {
        +        "containment_id": {
        +          "description": "The id of the containment relationship where the document is filed",
        +          "type": "string"
        +        },
        +        "containment_name": {
        +          "description": "The containment name of the document where filed in the folder",
        +          "type": "string"
        +        },
        +        "containment_path": {
        +          "description": "The containment path of the document where filed in the folder",
        +          "type": "string"
        +        },
        +        "document_class_name": {
        +          "default": "Document",
        +          "description": "Class identifier for the document that is filed",
        +          "type": "string"
        +        },
        +        "document_id": {
        +          "description": "The id of the document that is filed in the folder",
        +          "type": "string"
        +        },
        +        "document_name": {
        +          "description": "The name of the document that is filed in the folder",
        +          "type": "string"
        +        },
        +        "folder_id": {
        +          "description": "The id of the folder where the document is filed",
        +          "type": "string"
        +        },
        +        "folder_name": {
        +          "description": "The name of the folder where the document is filed",
        +          "type": "string"
        +        },
        +        "folder_path": {
        +          "description": "The path of the folder where the document is filed",
        +          "type": "string"
        +        },
        +        "score": {
        +          "description": "The match score, higher values indicate better matches",
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "containment_id",
        +        "containment_name",
        +        "containment_path",
        +        "document_id",
        +        "document_name",
        +        "folder_id",
        +        "folder_name",
        +        "folder_path",
        +        "score"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"lookup_documents_by_pathOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedrepository_object_search13 fields changed
      • removedInput schema / $defs
        Removed value: -{
        -  "SearchOperator": {
        -    "description": "Enum defining all valid search operators for repository searches.\n\nThese operators determine how property values are compared during searches.",
        -    "enum": [
        -      "=",
        -      ">",
        -      "<",
        -      ">=",
        -      "<=",
        -      "!=",
        -      "CONTAINS",
        -      "STARTS",
        -      "ENDS"
        -    ],
        -    "title": "SearchOperator",
        -    "type": "string"
        -  },
        -  "SearchParameters": {
        -    "description": "Complete set of parameters for executing a repository search.",
        -    "properties": {
        -      "search_class": {
        -        "description": "The class to search for. Must be a valid class in the repository.",
        -        "title": "Search Class",
        -        "type": "string"
        -      },
        -      "search_properties": {
        -        "description": "List of filter conditions to apply to the search. All conditions are combined with AND logic. If no conditions exist, we return all objects of the given class",
        -        "items": {
        -          "$ref": "#/$defs/SearchProperty"
        -        },
        -        "title": "Search Properties",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "search_class",
        -      "search_properties"
        -    ],
        -    "title": "SearchParameters",
        -    "type": "object"
        -  },
        -  "SearchProperty": {
        -    "description": "Defines a single search condition/filter to be applied during repository searches.",
        -    "properties": {
        -      "operator": {
        -        "$ref": "#/$defs/SearchOperator",
        -        "description": "The comparison operator that defines how property_name and property_value are compared. Use CONTAINS for substring matching, STARTS/ENDS for prefix/suffix matching. Use standard SQL operators: =, >, <, >=, <=, != for other properties."
        -      },
        -      "property_name": {
        -        "description": "The name of the property to filter on. Must be a valid property for the specified class as obtained from the get_searchable_class_properties_tool .",
        -        "title": "Property Name",
        -        "type": "string"
        -      },
        -      "property_value": {
        -        "description": "The value to filter by. Format should match the property's data type.",
        -        "title": "Property Value",
        -        "type": "string"
        -      }
        -    },
        -    "required": [
        -      "property_name",
        -      "property_value",
        -      "operator"
        -    ],
        -    "title": "SearchProperty",
        -    "type": "object"
        -  }
        -}
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / search_parameters / $ref
        Removed value: -"#/$defs/SearchParameters"
      • addedInput schema / properties / search_parameters / description
        Added value: +"Complete set of parameters for executing a repository search."
      • addedInput schema / properties / search_parameters / properties
        Added value: +{
        +  "search_class": {
        +    "description": "The class to search for. Must be a valid class in the repository.",
        +    "type": "string"
        +  },
        +  "search_properties": {
        +    "description": "List of filter conditions to apply to the search. All conditions are combined with AND logic. If no conditions exist, we return all objects of the given class",
        +    "items": {
        +      "description": "Defines a single search condition/filter to be applied during repository searches.",
        +      "properties": {
        +        "operator": {
        +          "description": "The comparison operator that defines how property_name and property_value are compared. Use CONTAINS for substring matching, STARTS/ENDS for prefix/suffix matching. Use standard SQL operators: =, >, <, >=, <=, != for other properties.",
        +          "enum": [
        +            "=",
        +            ">",
        +            "<",
        +            ">=",
        +            "<=",
        +            "!=",
        +            "CONTAINS",
        +            "STARTS",
        +            "ENDS"
        +          ],
        +          "type": "string"
        +        },
        +        "property_name": {
        +          "description": "The name of the property to filter on. Must be a valid property for the specified class as obtained from the get_searchable_class_properties_tool .",
        +          "type": "string"
        +        },
        +        "property_value": {
        +          "description": "The value to filter by. Format should match the property's data type.",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "property_name",
        +        "property_value",
        +        "operator"
        +      ],
        +      "type": "object"
        +    },
        +    "type": "array"
        +  }
        +}
      • addedInput schema / properties / search_parameters / required
        Added value: +[
        +  "search_class",
        +  "search_properties"
        +]
      • addedInput schema / properties / search_parameters / type
        Added value: +"object"
      • removedInput schema / title
        Removed value: -"get_repository_object_mainArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "additionalProperties": true,
        -    "type": "object"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "additionalProperties": true,
        +    "type": "object"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"get_repository_object_mainOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedunfile_document9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / document_id / title
        Removed value: -"Document Id"
      • removedInput schema / properties / folder_id_or_path / title
        Removed value: -"Folder Id Or Path"
      • removedInput schema / title
        Removed value: -"unfile_documentArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "type": "string"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "type": "string"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"unfile_documentOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedupdate_document_class9 fields changed
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / class_identifier / title
        Removed value: -"Class Identifier"
      • removedInput schema / properties / identifier / title
        Removed value: -"Identifier"
      • removedInput schema / title
        Removed value: -"update_document_classArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "Document": {
        -    "description": "Document class for the MCP server.",
        -    "properties": {
        -      "className": {
        -        "default": "Document",
        -        "description": "Class identifier for the document",
        -        "title": "Classname",
        -        "type": "string"
        -      },
        -      "contentSize": {
        -        "anyOf": [
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Size of the document content",
        -        "title": "Contentsize"
        -      },
        -      "creator": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The creator of the document",
        -        "title": "Creator"
        -      },
        -      "dateCreated": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was created",
        -        "title": "Datecreated"
        -      },
        -      "dateLastModified": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was last modified",
        -        "title": "Datelastmodified"
        -      },
        -      "id": {
        -        "description": "The id of the document",
        -        "title": "Id",
        -        "type": "string"
        -      },
        -      "isVersioningEnabled": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Whether versioning is enabled",
        -        "title": "Isversioningenabled"
        -      },
        -      "lastModifier": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The last modifier of the document",
        -        "title": "Lastmodifier"
        -      },
        -      "majorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Major version number",
        -        "title": "Majorversionnumber"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "MIME type of the document",
        -        "title": "Mimetype"
        -      },
        -      "minorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Minor version number",
        -        "title": "Minorversionnumber"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The name of the document",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The owner of the document",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "additionalProperties": true,
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Document properties",
        -        "title": "Properties"
        -      }
        -    },
        -    "required": [
        -      "id"
        -    ],
        -    "title": "Document",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/Document"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "description": "Document class for the MCP server.",
        +    "properties": {
        +      "className": {
        +        "default": "Document",
        +        "description": "Class identifier for the document",
        +        "type": "string"
        +      },
        +      "contentSize": {
        +        "anyOf": [
        +          {
        +            "type": "number"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Size of the document content"
        +      },
        +      "creator": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The creator of the document"
        +      },
        +      "dateCreated": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was created"
        +      },
        +      "dateLastModified": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was last modified"
        +      },
        +      "id": {
        +        "description": "The id of the document",
        +        "type": "string"
        +      },
        +      "isVersioningEnabled": {
        +        "anyOf": [
        +          {
        +            "type": "boolean"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Whether versioning is enabled"
        +      },
        +      "lastModifier": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The last modifier of the document"
        +      },
        +      "majorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Major version number"
        +      },
        +      "mimeType": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "MIME type of the document"
        +      },
        +      "minorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Minor version number"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The name of the document"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The owner of the document"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "additionalProperties": true,
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Document properties"
        +      }
        +    },
        +    "required": [
        +      "id"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"update_document_classOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedupdate_document_properties10 fields changed
      • removedInput schema / $defs
        Removed value: -{
        -  "DocumentPropertiesInput": {
        -    "description": "Input for document properties.",
        -    "properties": {
        -      "cmRetentionDate": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Retention date",
        -        "title": "Cmretentiondate"
        -      },
        -      "compoundDocumentState": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Compound document state",
        -        "title": "Compounddocumentstate"
        -      },
        -      "content": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Content can be specified if this represents a Reservation document or document creation",
        -        "title": "Content"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Mime type",
        -        "title": "Mimetype"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Name sets DocumentTitle or whatever property is configured as the Name property",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Owner",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "$ref": "#/$defs/PropertyIdentifierAndScalarValue"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Properties for Document",
        -        "title": "Properties"
        -      }
        -    },
        -    "title": "DocumentPropertiesInput",
        -    "type": "object"
        -  },
        -  "PropertyIdentifierAndScalarValue": {
        -    "description": "Represents a property with an identifier and scalar value.",
        -    "properties": {
        -      "identifier": {
        -        "description": "Property identifier",
        -        "title": "Identifier",
        -        "type": "string"
        -      },
        -      "value": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "boolean"
        -          },
        -          {},
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Property value",
        -        "title": "Value"
        -      }
        -    },
        -    "required": [
        -      "identifier"
        -    ],
        -    "title": "PropertyIdentifierAndScalarValue",
        -    "type": "object"
        -  }
        -}
      • addedInput schema / additionalProperties
        Added value: +false
      • changedInput schema / properties / document_properties / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/DocumentPropertiesInput"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "description": "Input for document properties.",
        +    "properties": {
        +      "cmRetentionDate": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Retention date"
        +      },
        +      "compoundDocumentState": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Compound document state"
        +      },
        +      "content": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Content can be specified if this represents a Reservation document or document creation"
        +      },
        +      "mimeType": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Mime type"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Name sets DocumentTitle or whatever property is configured as the Name property"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Owner"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "description": "Represents a property with an identifier and scalar value.",
        +              "properties": {
        +                "identifier": {
        +                  "description": "Property identifier",
        +                  "type": "string"
        +                },
        +                "value": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "integer"
        +                    },
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "boolean"
        +                    },
        +                    {},
        +                    {
        +                      "type": "null"
        +                    }
        +                  ],
        +                  "default": null,
        +                  "description": "Property value"
        +                }
        +              },
        +              "required": [
        +                "identifier"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Properties for Document"
        +      }
        +    },
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • removedInput schema / properties / identifier / title
        Removed value: -"Identifier"
      • removedInput schema / title
        Removed value: -"update_document_propertiesArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "Document": {
        -    "description": "Document class for the MCP server.",
        -    "properties": {
        -      "className": {
        -        "default": "Document",
        -        "description": "Class identifier for the document",
        -        "title": "Classname",
        -        "type": "string"
        -      },
        -      "contentSize": {
        -        "anyOf": [
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Size of the document content",
        -        "title": "Contentsize"
        -      },
        -      "creator": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The creator of the document",
        -        "title": "Creator"
        -      },
        -      "dateCreated": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was created",
        -        "title": "Datecreated"
        -      },
        -      "dateLastModified": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when document was last modified",
        -        "title": "Datelastmodified"
        -      },
        -      "id": {
        -        "description": "The id of the document",
        -        "title": "Id",
        -        "type": "string"
        -      },
        -      "isVersioningEnabled": {
        -        "anyOf": [
        -          {
        -            "type": "boolean"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Whether versioning is enabled",
        -        "title": "Isversioningenabled"
        -      },
        -      "lastModifier": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The last modifier of the document",
        -        "title": "Lastmodifier"
        -      },
        -      "majorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Major version number",
        -        "title": "Majorversionnumber"
        -      },
        -      "mimeType": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "MIME type of the document",
        -        "title": "Mimetype"
        -      },
        -      "minorVersionNumber": {
        -        "anyOf": [
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Minor version number",
        -        "title": "Minorversionnumber"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The name of the document",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The owner of the document",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "additionalProperties": true,
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Document properties",
        -        "title": "Properties"
        -      }
        -    },
        -    "required": [
        -      "id"
        -    ],
        -    "title": "Document",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/Document"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "description": "Document class for the MCP server.",
        +    "properties": {
        +      "className": {
        +        "default": "Document",
        +        "description": "Class identifier for the document",
        +        "type": "string"
        +      },
        +      "contentSize": {
        +        "anyOf": [
        +          {
        +            "type": "number"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Size of the document content"
        +      },
        +      "creator": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The creator of the document"
        +      },
        +      "dateCreated": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was created"
        +      },
        +      "dateLastModified": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when document was last modified"
        +      },
        +      "id": {
        +        "description": "The id of the document",
        +        "type": "string"
        +      },
        +      "isVersioningEnabled": {
        +        "anyOf": [
        +          {
        +            "type": "boolean"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Whether versioning is enabled"
        +      },
        +      "lastModifier": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The last modifier of the document"
        +      },
        +      "majorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Major version number"
        +      },
        +      "mimeType": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "MIME type of the document"
        +      },
        +      "minorVersionNumber": {
        +        "anyOf": [
        +          {
        +            "type": "integer"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Minor version number"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The name of the document"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The owner of the document"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "additionalProperties": true,
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Document properties"
        +      }
        +    },
        +    "required": [
        +      "id"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"update_document_propertiesOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
    • Changedupdate_folder11 fields changed
      • removedInput schema / $defs
        Removed value: -{
        -  "FolderPropertiesInput": {
        -    "description": "Input for folder properties.",
        -    "properties": {
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Name sets folder name or whatever property is configured as the Name property",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Owner",
        -        "title": "Owner"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "$ref": "#/$defs/PropertyIdentifierAndScalarValue"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Properties for Folder",
        -        "title": "Properties"
        -      }
        -    },
        -    "title": "FolderPropertiesInput",
        -    "type": "object"
        -  },
        -  "PropertyIdentifierAndScalarValue": {
        -    "description": "Represents a property with an identifier and scalar value.",
        -    "properties": {
        -      "identifier": {
        -        "description": "Property identifier",
        -        "title": "Identifier",
        -        "type": "string"
        -      },
        -      "value": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "integer"
        -          },
        -          {
        -            "type": "number"
        -          },
        -          {
        -            "type": "boolean"
        -          },
        -          {},
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Property value",
        -        "title": "Value"
        -      }
        -    },
        -    "required": [
        -      "identifier"
        -    ],
        -    "title": "PropertyIdentifierAndScalarValue",
        -    "type": "object"
        -  }
        -}
      • addedInput schema / additionalProperties
        Added value: +false
      • removedInput schema / properties / class_identifier / title
        Removed value: -"Class Identifier"
      • changedInput schema / properties / folder_properties / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/FolderPropertiesInput"
        -  },
        -  {
        -    "type": "null"
        -  }
        -]New value: +[
        +  {
        +    "description": "Input for folder properties.",
        +    "properties": {
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Name sets folder name or whatever property is configured as the Name property"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Owner"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "description": "Represents a property with an identifier and scalar value.",
        +              "properties": {
        +                "identifier": {
        +                  "description": "Property identifier",
        +                  "type": "string"
        +                },
        +                "value": {
        +                  "anyOf": [
        +                    {
        +                      "type": "string"
        +                    },
        +                    {
        +                      "type": "integer"
        +                    },
        +                    {
        +                      "type": "number"
        +                    },
        +                    {
        +                      "type": "boolean"
        +                    },
        +                    {},
        +                    {
        +                      "type": "null"
        +                    }
        +                  ],
        +                  "default": null,
        +                  "description": "Property value"
        +                }
        +              },
        +              "required": [
        +                "identifier"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Properties for Folder"
        +      }
        +    },
        +    "type": "object"
        +  },
        +  {
        +    "type": "null"
        +  }
        +]
      • removedInput schema / properties / identifier / title
        Removed value: -"Identifier"
      • removedInput schema / title
        Removed value: -"update_folderArguments"
      • removedOutput schema / $defs
        Removed value: -{
        -  "Folder": {
        -    "description": "Folder class for the MCP server.",
        -    "properties": {
        -      "class_identifier": {
        -        "default": "Folder",
        -        "description": "Class identifier for the folder",
        -        "title": "Class Identifier",
        -        "type": "string"
        -      },
        -      "creator": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The creator of the folder",
        -        "title": "Creator"
        -      },
        -      "dateCreated": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when folder was created",
        -        "title": "Datecreated"
        -      },
        -      "dateLastModified": {
        -        "anyOf": [
        -          {
        -            "format": "date-time",
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Date when folder was last modified",
        -        "title": "Datelastmodified"
        -      },
        -      "id": {
        -        "description": "The id of the folder",
        -        "title": "Id",
        -        "type": "string"
        -      },
        -      "lastModifier": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The last modifier of the folder",
        -        "title": "Lastmodifier"
        -      },
        -      "name": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The name of the folder",
        -        "title": "Name"
        -      },
        -      "owner": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The owner of the folder",
        -        "title": "Owner"
        -      },
        -      "parent_folder_id": {
        -        "anyOf": [
        -          {
        -            "type": "string"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "The id of the parent folder",
        -        "title": "Parent Folder Id"
        -      },
        -      "properties": {
        -        "anyOf": [
        -          {
        -            "items": {
        -              "additionalProperties": true,
        -              "type": "object"
        -            },
        -            "type": "array"
        -          },
        -          {
        -            "type": "null"
        -          }
        -        ],
        -        "default": null,
        -        "description": "Folder properties",
        -        "title": "Properties"
        -      }
        -    },
        -    "required": [
        -      "id"
        -    ],
        -    "title": "Folder",
        -    "type": "object"
        -  },
        -  "ToolError": {
        -    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        -    "properties": {
        -      "isError": {
        -        "const": true,
        -        "default": true,
        -        "description": "Indicates that an error occurred during tool execution if value is True",
        -        "title": "Iserror",
        -        "type": "boolean"
        -      },
        -      "message": {
        -        "description": "Detailed error message",
        -        "title": "Message",
        -        "type": "string"
        -      },
        -      "suggestions": {
        -        "description": "List of suggestions for resolving the error",
        -        "items": {
        -          "type": "string"
        -        },
        -        "title": "Suggestions",
        -        "type": "array"
        -      }
        -    },
        -    "required": [
        -      "message"
        -    ],
        -    "title": "ToolError",
        -    "type": "object"
        -  }
        -}
      • changedOutput schema / properties / result / anyOf
        Previous value: -[
        -  {
        -    "$ref": "#/$defs/Folder"
        -  },
        -  {
        -    "$ref": "#/$defs/ToolError"
        -  }
        -]New value: +[
        +  {
        +    "description": "Folder class for the MCP server.",
        +    "properties": {
        +      "class_identifier": {
        +        "default": "Folder",
        +        "description": "Class identifier for the folder",
        +        "type": "string"
        +      },
        +      "creator": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The creator of the folder"
        +      },
        +      "dateCreated": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when folder was created"
        +      },
        +      "dateLastModified": {
        +        "anyOf": [
        +          {
        +            "format": "date-time",
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Date when folder was last modified"
        +      },
        +      "id": {
        +        "description": "The id of the folder",
        +        "type": "string"
        +      },
        +      "lastModifier": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The last modifier of the folder"
        +      },
        +      "name": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The name of the folder"
        +      },
        +      "owner": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The owner of the folder"
        +      },
        +      "parent_folder_id": {
        +        "anyOf": [
        +          {
        +            "type": "string"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "The id of the parent folder"
        +      },
        +      "properties": {
        +        "anyOf": [
        +          {
        +            "items": {
        +              "additionalProperties": true,
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          {
        +            "type": "null"
        +          }
        +        ],
        +        "default": null,
        +        "description": "Folder properties"
        +      }
        +    },
        +    "required": [
        +      "id"
        +    ],
        +    "type": "object"
        +  },
        +  {
        +    "description": "Represents an error response from a tool execution.\n\nThis class helps the LLM understand error messages and provides suggestions\nfor potential resolutions.",
        +    "properties": {
        +      "isError": {
        +        "const": true,
        +        "default": true,
        +        "description": "Indicates that an error occurred during tool execution if value is True",
        +        "type": "boolean"
        +      },
        +      "message": {
        +        "description": "Detailed error message",
        +        "type": "string"
        +      },
        +      "suggestions": {
        +        "description": "List of suggestions for resolving the error",
        +        "items": {
        +          "type": "string"
        +        },
        +        "type": "array"
        +      }
        +    },
        +    "required": [
        +      "message"
        +    ],
        +    "type": "object"
        +  }
        +]
      • removedOutput schema / properties / result / title
        Removed value: -"Result"
      • removedOutput schema / title
        Removed value: -"update_folderOutput"
      • addedOutput schema / x-fastmcp-wrap-result
        Added value: +true
  2. 26 tool updatesv1.0.0
    • First observedcancel_document_checkout
    • First observedcheckin_document
    • First observedcheckout_document
    • First observedcreate_document
    • First observedcreate_folder
    • First observeddelete_document_version
    • First observeddelete_folder
    • First observeddelete_version_series
    • First observeddetermine_class
    • First observedget_class_property_descriptions
    • First observedget_class_specific_properties_name
    • First observedget_document_annotations_tool
    • First observedget_document_properties
    • First observedget_document_text_extract
    • First observedget_document_versions
    • First observedget_folder_documents
    • First observedget_searchable_property_descriptions
    • First observedlist_all_classes
    • First observedlist_root_classes
    • First observedlookup_documents_by_name
    • First observedlookup_documents_by_path
    • First observedrepository_object_search
    • First observedunfile_document
    • First observedupdate_document_class
    • First observedupdate_document_properties
    • First observedupdate_folder

TDQS

B3.4/5.0

Scored across 26 tools

Disambiguation3/5

Most tools are distinct, but there is notable overlap between the various search/lookup tools (lookup_documents_by_name, lookup_documents_by_path, document_search, repository_object_search) and between get_document_properties vs get_document_versions vs get_document_text_extract. The descriptions help clarify some boundaries, but an agent could easily confuse which search tool to use.

Naming Consistency4/5

Tool names mostly follow a consistent verb_noun pattern (get_document_properties, create_document, update_document_properties, delete_folder, checkout_document). Minor deviations exist: repository_object_search and lookup_documents_by_name/path use different verb styles, and get_folder_detail breaks the pattern slightly.

Tool Count3/5

26 tools is on the heavy side for a content services server, but the domain is broad (documents, folders, classes, search, versioning, check-in/out). It feels slightly over-scoped, with several overlapping search tools that could be consolidated.

Completeness4/5

The tool surface covers document CRUD, versioning, check-in/out, folder management, classification, and search. Minor gaps exist: there is no explicit get_folder_children or list_folder_contents beyond get_folder_documents, and no tool to move/copy documents between folders, but core workflows are covered.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers