# WeaviateApi
import StarterToolInfo from "@/app/_components/starter-tool-info";
import ToolInfo from "@/app/_components/tool-info";
import Badges from "@/app/_components/badges";
import TabbedCodeBlock from "@/app/_components/tabbed-code-block";
import TableOfContents from "@/app/_components/table-of-contents";
import ToolFooter from "@/app/_components/tool-footer";
import { Callout } from "nextra/components";
The WeaviateApi MCP Server offers a comprehensive suite of tools for managing and interacting with Weaviate, a vector search engine. Users can perform a variety of actions, including:
## Authentication
The Arcade Weaviate API MCP Server requires two environment variables to authenticate with your Weaviate instance:
- `WEAVIATE_API_KEY`
- `WEAVIATE_SERVER_URL`
**How to obtain your credentials:**
1. Log in to your [Weaviate Console](https://console.weaviate.cloud/)
2. Select your Weaviate cluster
3. Navigate to **Details** or **API Keys** section
4. Click **Create API Key** or use an existing key
5. Copy your **API Key**
6. Copy your **Cluster URL** (this is your server URL and must include `https://`)
**Note:** The `WEAVIATE_SERVER_URL` must include the full URL with the `https://` protocol (e.g., `https://your-cluster.weaviate.network`).
For more details, see the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication).
## Available Tools
If you need to perform an action that's not listed here, you can [get in touch
with us](mailto:contact@arcade.dev) to request a new tool, or [create your own
tools](/guides/create-tools/tool-basics/build-mcp-server).
## WeaviateApi.DiscoverApiEndpoints
Retrieve links to available REST API endpoints.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CheckWeaviateLiveness
Check if the Weaviate instance is running properly.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CheckWeaviateReadiness
Check if the Weaviate instance is ready to accept traffic.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetOidcDiscovery
Fetches OIDC discovery details for Weaviate authentication.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ReplicateShardReplica
Initiates replication of a shard replica to a target node.
**Parameters**
- **shard_name** (`string`, required) The name of the shard whose replica is to be moved or copied. Specify the shard to initiate the operation.
- **source_node** (`string`, required) The name of the Weaviate node currently hosting the shard replica to be moved or copied.
- **target_collection_name** (`string`, required) The name of the collection to which the target shard belongs in the Weaviate database.
- **target_weaviate_node** (`string`, required) Name of the Weaviate node for creating the new shard replica during the operation.
- **replication_operation_type** (`string`, optional) Specifies whether to 'COPY' or 'MOVE' the shard replica. Defaults to 'COPY' if not provided.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.DeleteAllReplications
Schedule deletion of all replication operations across the system.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ForceDeleteReplications
Forcefully delete replication operations with caution.
**Parameters**
- **collection_name** (`string`, optional) The name of the collection associated with the shard being replicated.
- **dry_run** (`boolean`, optional) When set to true, the operation simulates the deletion and returns the expected result without executing it.
- **replication_operation_id** (`string`, optional) The unique identifier (ID) of the replication operation to be forcefully deleted.
- **shard_identifier** (`string`, optional) The unique identifier of the shard involved in the replication operations.
- **target_node_name** (`string`, optional) The name of the target node where replication operations are registered.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.FetchReplicationStatus
Retrieve the status of a specific replication operation.
**Parameters**
- **replication_operation_id** (`string`, required) The unique identifier for the replication operation to fetch details for.
- **include_history** (`boolean`, optional) Set to true to include the history of the replication operation.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CancelReplicationOperation
Cancel an active replication operation.
**Parameters**
- **replication_operation_id** (`string`, required) The unique identifier of the replication operation to be canceled and deleted.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ListReplicationStatus
Retrieve registered replication operations and details.
**Parameters**
- **collection_name** (`string`, optional) Specify the name of the collection for which to retrieve replication details.
- **include_replication_history** (`boolean`, optional) Set to true to include the history of the replication operation, false to exclude it.
- **shard_name** (`string`, optional) The specific shard for which to retrieve replication details.
- **target_node_name** (`string`, optional) The name of the target node to retrieve replication operation details for.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CancelReplication
Cancel an active replication operation by ID.
**Parameters**
- **replication_operation_id** (`string`, required) The ID of the replication operation you wish to cancel. This is a string identifier for the specific operation.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.FetchShardingState
Fetch the current sharding state and replica details for collections.
**Parameters**
- **collection_name** (`string`, optional) The name of the collection to retrieve the sharding state for.
- **target_shard** (`string`, optional) Specify the shard name to retrieve its sharding state in a collection.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetAuthenticatedUserInfo
Retrieve details about the authenticated user and their roles.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ListDbUsers
Retrieve all database users and their roles and statuses.
**Parameters**
- **include_last_used_time** (`boolean`, optional) Include the last time users were utilized in the response.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetDatabaseUserInfo
Retrieve information about a specific database user.
**Parameters**
- **database_user_name** (`string`, required) The unique identifier or name of the database user to retrieve information for.
- **include_last_used_time** (`boolean`, optional) Set to true to include the last used time in the user's information.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CreateDatabaseUser
Create a new database user and obtain an API key.
**Parameters**
- **user_name** (`string`, required) Specify the name for the new database user. It should be a string that identifies the user.
- **disable_import_experimental** (`boolean`, optional) Set to true to prevent importing an API key from a static user. Experimental and will be removed.
- **set_creation_time_experimental** (`string`, optional) EXPERIMENTAL: Set the given time as creation time. This will be removed in future versions.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.DeleteDatabaseUser
Delete a specific database user.
**Parameters**
- **user_identifier** (`string`, required) Specify the name of the user you want to delete. This cannot be the current user.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.RotateUserApiKey
Revoke and regenerate the API key for a database user.
**Parameters**
- **database_user_name** (`string`, required) The name of the database user for which the API key will be rotated.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ActivateDatabaseUser
Activate a deactivated database user account.
**Parameters**
- **user_name** (`string`, required) The name of the database user to activate.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.DeactivateDatabaseUser
Deactivate a database user account.
**Parameters**
- **database_user_id** (`string`, required) The unique identifier for the database user to be deactivated.
- **revoke_api_key** (`boolean`, optional) Revoke the user's API key when deactivating. Set to true to enable.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetRolesAndPermissions
Retrieve all roles and their assigned permissions.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CreateRoleWithPermissions
Create a new role with specified permissions.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.AddPermissionsToRole
Add new permissions to a role without affecting existing ones.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **role_id** (`string`, optional) The ID of the role to which new permissions will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.RevokeRolePermissions
Revoke permissions from a specified role.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **role_name** (`string`, optional) The name of the role from which permissions are being revoked. Removing all permissions will delete the role. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.FetchRoleByName
Fetch role details using its name.
**Parameters**
- **role_name** (`string`, required) The name of the role to fetch details for.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.DeleteRole
Delete a role and revoke its permissions system-wide.
**Parameters**
- **role_name** (`string`, required) Specify the name of the role to be deleted and revoked from users.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CheckRolePermission
Check if a role has specific permissions in the system.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **role_name** (`string`, optional) The name of the role to check permissions for. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetUsersByRole
Retrieve users with a specific role assignment.
**Parameters**
- **role_id** (`string`, required) The unique identifier for the role to fetch associated users.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetGroupsForRole
Retrieve groups assigned to a specific role.
**Parameters**
- **role_name** (`string`, required) The unique name of the role to retrieve associated groups.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetUserRoles
Retrieve all roles assigned to a specific user.
**Parameters**
- **user_id** (`string`, required) The unique name or identifier of the user for whom roles are being retrieved.
- **user_type** (`string`, required) Specify the user type: 'oidc' for OpenID Connect or 'db' for database.
- **include_detailed_role_information** (`boolean`, optional) Set to true to include detailed role information like assigned permissions.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.AssignRolesToUser
Assign roles to a user in the system.
**Parameters**
- **user_name** (`string`, required) The name or identifier of the user to assign roles to.
- **assigned_roles** (`array[string]`, optional) List of roles to assign to the specified user. Each role should be a string.
- **user_type** (`string`, optional) Specify the user type. Choose 'db' for Weaviate managed users or 'oidc' for users managed by an external OIDC provider.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.RevokeUserRole
Remove roles from a specified user in the system.
**Parameters**
- **user_id** (`string`, required) The unique identifier or name of the user from whom roles will be revoked.
- **roles_to_revoke** (`array[string]`, optional) A list of roles to be removed from the specified user. Provide each role as a string in the array.
- **user_type** (`string`, optional) Specify the user type: `db` for Weaviate-managed or `oidc` for external OIDC-managed users.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.AssignRoleToGroup
Assign roles to a specific group.
**Parameters**
- **group_name** (`string`, required) The name of the group to which roles will be assigned.
- **group_type** (`string`, optional) Indicate if the group contains OIDC or database users. Choose 'oidc' for OIDC users.
- **roles_to_assign** (`array[string]`, optional) A list of roles to assign to a specified group. Each role is a string.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.RevokeRoleFromGroup
Revoke roles from a specified group to manage permissions.
**Parameters**
- **group_name** (`string`, required) The name of the group from which roles will be revoked.
- **group_type** (`string`, optional) Specifies whether the group contains OIDC or database users.
- **roles_to_revoke** (`array[string]`, optional) An array of role names to revoke from the specified group.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetRolesForGroup
Retrieve roles assigned to a specific group.
**Parameters**
- **group_name** (`string`, required) The unique name of the group to retrieve roles for.
- **group_type** (`string`, required) Specifies the type of the group, either 'db' or 'oidc'.
- **include_full_role_definitions** (`boolean`, optional) Include full role definitions with all permissions if true; return only role names if false.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.RetrieveGroupNames
Retrieve available group names for a specified type.
**Parameters**
- **group_type** (`string`, required) Specifies the group type to retrieve, either 'oidc' or 'db'.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ListDataObjects
Retrieve a list of data objects from a specified collection.
**Parameters**
- **collection_name** (`string`, optional) Specifies the collection name to query objects from. If not provided, no objects will be returned.
- **include_additional_information** (`string`, optional) Include additional information types such as `classification`, `vector`, or `interpretation`.
- **maximum_items_per_page** (`integer`, optional) The maximum number of items to be returned per page. The default is 25 unless set otherwise as an environment variable.
- **query_start_index** (`integer`, optional) The starting index for the result window. Retrieves `offset+limit` results and returns `limit` results from this index onward. Cannot be used with `after`. Should be used with `limit`.
- **sort_order** (`string`, optional) Specify how to order the data within the sorted field(s). Use 'asc' for ascending and 'desc' for descending. Should match the order of fields used in `sort`. Multiple values should be separated by commas.
- **sort_properties** (`string`, optional) Names of properties to sort by, e.g., 'city' or 'country,city'.
- **tenant_identifier** (`string`, optional) Specifies the tenant for requests targeting a multi-tenant collection (class).
- **threshold_uuid_after** (`string`, optional) A UUID to retrieve objects after, excluding this object. Use with `class` and `limit`. Leave empty for the start.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CreateObjectInWeaviate
Create a new data object in Weaviate.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **consistency_level_replica_acknowledgement** (`string`, optional) Specifies the number of replicas that must confirm the request for it to be successful. Only used when mode is 'execute'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetDataObject
Retrieve a data object using collection name and UUID.
**Parameters**
- **collection_name** (`string`, required) Name of the collection (class) the object belongs to.
- **object_uuid** (`string`, required) Unique UUID of the object to be retrieved from the specified collection.
- **include_additional_information** (`string`, optional) Specify additional info to include: `classification`, `vector`, or `interpretation`.
- **required_replica_acknowledgment** (`string`, optional) Specifies how many replicas must confirm a request for success. Relates to consistency level.
- **target_node_name** (`string`, optional) Specify the target node to fulfill the request.
- **tenant_identifier** (`string`, optional) Specify the tenant for a multi-tenant collection request.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.UpdateObjectProperties
Replace properties of a data object using its class and ID.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **collection_name** (`string`, optional) The name of the class (collection) to which the object belongs. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **object_uuid** (`string`, optional) Unique UUID of the object to be replaced. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **required_replica_acknowledgement** (`string`, optional) Specifies how many replicas must acknowledge a request for it to be successful. Only used when mode is 'execute'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.DeleteDataObject
Delete a data object from a specified collection using its UUID.
**Parameters**
- **collection_name** (`string`, required) Name of the collection (class) the object belongs to.
- **object_uuid** (`string`, required) Unique UUID of the object to be deleted from the collection.
- **replica_acknowledgment_level** (`string`, optional) Specifies the number of replicas needed to confirm request success.
- **tenant_identifier** (`string`, optional) Specifies the tenant when targeting a multi-tenant collection (class).
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.UpdateDataObject
Update specific properties of a data object.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **collection_name** (`string`, optional) Specifies the name of the collection or class the object belongs to. This identifies where the object is stored. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **object_uuid** (`string`, optional) Unique UUID of the object to be patched within the specified collection. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **consistency_level** (`string`, optional) Specify the number of replicas that must acknowledge the request for success. Only used when mode is 'execute'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ReplaceObjectReferences
Replace existing references for an object in Weaviate.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **collection_name** (`string`, optional) Name of the collection the source object belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **source_object_uuid** (`string`, optional) Unique UUID of the source object to identify it for reference replacement. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **reference_property_name** (`string`, optional) Unique name of the reference property for the source object to update. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **consistency_level** (`string`, optional) Defines the required number of replica acknowledgements for request success. Only used when mode is 'execute'.
- **tenant_identifier** (`string`, optional) Specifies the tenant in a request targeting a multi-tenant collection (class). Only used when mode is 'execute'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.AddReferenceToObject
Add a reference to an object's property.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **source_class_name** (`string`, optional) Name of the collection (class) the source object belongs to. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **source_object_uuid** (`string`, optional) Unique UUID identifying the source object to which the reference will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **reference_property_name** (`string`, optional) Unique name of the reference property of the source object to which the reference will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **required_consistency_level** (`string`, optional) Specifies the number of replicas that must acknowledge a request for it to be successful. Only used when mode is 'execute'.
- **tenant_identifier** (`string`, optional) Specifies the tenant for multi-tenant collection requests in a Weaviate class. Only used when mode is 'execute'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.DeleteReferenceFromObject
Delete a specific reference from an object's property.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **collection_name** (`string`, optional) Name of the collection (class) the source object belongs to. This identifies where the object is located. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **source_object_uuid** (`string`, optional) Unique UUID of the source object from which the reference will be deleted. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **reference_property_name** (`string`, optional) Unique name of the reference property of the source object from which to delete the reference. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **required_consistency_level** (`string`, optional) Specifies how many replicas must acknowledge the request for success. Only used when mode is 'execute'.
- **tenant_identifier** (`string`, optional) Specifies the tenant in a request targeting a multi-tenant collection (class). Only used when mode is 'execute'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ValidateDataObjectStructure
Validate a data object's structure against the schema.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.BatchRegisterObjects
Register multiple data objects in a single request.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **consistency_level** (`string`, optional) Specifies how many replicas must confirm a request for it to be successful. Only used when mode is 'execute'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.DeleteMultipleObjects
Deletes multiple data objects using specified filter criteria.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **replica_acknowledgement_level** (`string`, optional) Specifies the number of replicas that must confirm the request for it to be deemed successful. Only used when mode is 'execute'.
- **target_tenant** (`string`, optional) Specifies the tenant when targeting a multi-tenant collection. Use the tenant's unique identifier. Only used when mode is 'execute'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.BatchCreateReferences
Batch create cross-references between items in a collection.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **consistency_level** (`string`, optional) Specifies the number of replicas needed to acknowledge a request for it to be deemed successful. Only used when mode is 'execute'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ExecuteGraphqlQuery
Executes a GraphQL query on Weaviate.
**Parameters**
- **graphql_query** (`string`, optional) A GraphQL query string to execute on Weaviate, following GraphQL syntax.
- **operation_name** (`string`, optional) The name of the operation if multiple operations exist in the GraphQL query.
- **query_variables** (`json`, optional) Additional JSON variables for the GraphQL query used to provide external values for operations.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ExecuteGraphqlBatchQueries
Execute multiple GraphQL queries in a single request.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetWeaviateInstanceMeta
Get meta-information about a Weaviate instance.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.RetrieveDatabaseSchema
Retrieve definitions of all classes in the database schema.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CreateSchemaObject
Create a new collection (class) in Weaviate.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.RetrieveCollectionSchema
Retrieve the schema of a specified collection.
**Parameters**
- **collection_name** (`string`, required) The name of the collection to retrieve the schema for.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.UpdateCollectionSettings
Update settings of an existing collection.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **collection_name_to_update** (`string`, optional) The name of the collection to be updated. Specify the collection's class name. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.DeleteSchemaCollection
Permanently delete a collection from the schema.
**Parameters**
- **collection_name_to_delete** (`string`, required) The name of the collection (class) that will be permanently deleted from the schema.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.AddPropertyToCollection
Add a new property to an existing collection schema.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **collection_name** (`string`, optional) The name of the collection (class) to which the property will be added. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetCollectionShardStatus
Retrieves status of shards for a specified collection.
**Parameters**
- **collection_name** (`string`, required) The name of the collection (class) whose shards to query.
- **tenant_name** (`string`, optional) The name of the tenant for retrieving shard statuses, applicable only for multi-tenant collections.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.UpdateShardStatus
Update the status of a specific shard in a collection.
**Parameters**
- **collection_name** (`string`, required) The name of the collection or class containing the shard to be updated.
- **shard_name** (`string`, required) The specific name of the shard to update in the collection.
- **shard_status** (`string`, optional) The status to set for the shard, such as 'READY' or 'READONLY'.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetCollectionTenants
Retrieve tenants for a specified collection.
**Parameters**
- **collection_name** (`string`, required) The name of the collection (class) whose tenants to list.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.UpdateTenantStatus
Update the activity status of specified tenants.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **collection_name** (`string`, optional) The name of the collection (class) containing the tenants whose status is to be updated. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CreateTenants
Create new tenants in a specified collection.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **collection_name** (`string`, optional) The name of the multi-tenant enabled collection for creating tenants. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.DeleteTenants
Permanently delete specified tenants from a collection.
**Parameters**
- **collection_name** (`string`, required) The name of the collection from which to delete tenants.
- **tenant_names_to_delete** (`array[string]`, required) An array of tenant names to permanently delete from the specified collection.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetTenantDetails
Retrieve details about a specific tenant's status.
**Parameters**
- **collection_name** (`string`, required) The name of the collection (class) that contains the tenant.
- **tenant_name** (`string`, required) The name of the tenant to retrieve details about within the specified collection.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.RetrieveAliases
Retrieve all aliases from the system.
**Parameters**
- **filter_by_collection_name** (`string`, optional) Optional filter to retrieve aliases for a specific collection (class) only. If not provided, returns all aliases.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CreateAliasMapping
Create a new alias for a collection in Weaviate.
**Parameters**
- **alias_name** (`string`, optional) The unique name of the alias, serving as an alternative identifier for the specified collection.
- **collection_class_name** (`string`, optional) The name of the collection (class) to which the alias is mapped.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.RetrieveAliasDetails
Retrieve details about a specific alias by its name.
**Parameters**
- **alias_name** (`string`, required) The name of the alias to retrieve details for, including its associated collection.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.UpdateCollectionAlias
Redirect an alias to a different collection.
**Parameters**
- **alias_name** (`string`, required) The name of the existing alias that you want to update to point to a new collection.
- **new_collection_name** (`string`, optional) Specify the new collection (class) for the alias to point to.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.DeleteAlias
Delete an existing alias from the system.
**Parameters**
- **alias_name** (`string`, required) The name of the alias to be deleted. This identifier specifies which alias mapping to remove from the system.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ListBackups
Retrieve all backup IDs and their statuses.
**Parameters**
- **backend_storage_system** (`string`, required) Specifies the backend storage system to list backups from (e.g., `filesystem`, `gcs`, `s3`, `azure`).
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CreateBackup
Initiates backup creation for specified collections.
**Parameters**
- **backend_storage_system** (`string`, required) Specifies the backend storage system where the backup will be stored, such as `filesystem`, `gcs`, `s3`, or `azure`.
- **backup_chunk_size** (`integer`, optional) Set the chunk size for the backup with a minimum of 2MB, default of 128MB, and a maximum of 512MB.
- **backup_id** (`string`, optional) The ID of the backup. Must be URL-safe, using only lowercase, numbers, underscore, and minus characters.
- **bucket_name** (`string`, optional) Name of the bucket, container, or volume where the backup will be stored.
- **bucket_path** (`string`, optional) Specifies the path or key within the storage bucket. This helps in locating where the backup will be stored within the bucket.
- **collections_to_include_in_backup** (`array[string]`, optional) List of collections to include in the backup. If not set, all collections are included. Cannot be used with `collections_to_exclude_in_backup`.
- **compression_level** (`string`, optional) Specifies the compression level for the backup: DefaultCompression, BestSpeed, or BestCompression.
- **cpu_utilization_percentage** (`integer`, optional) Sets desired CPU core utilization, ranging from 1% to 80%, during backup creation.
- **exclude_collections** (`array[string]`, optional) List of collections to exclude from the backup. Overrides include if both are set.
- **storage_endpoint_name** (`string`, optional) Name of the storage endpoint, such as s3.amazonaws.com, where the backup will be stored.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CheckBackupStatus
Get the current status of a backup creation process.
**Parameters**
- **backup_backend_system** (`string`, required) Specifies the backend storage system where the backup resides, such as 'filesystem', 'gcs', 's3', or 'azure'.
- **backup_identifier** (`string`, required) The unique identifier of the backup. Use only lowercase, numbers, underscores, and minus characters.
- **backup_storage_path** (`string`, optional) Specifies the path within the bucket/container/volume if the backup is not at the root. Optional.
- **bucket_name** (`string`, optional) Specifies the bucket, container, or volume name if required by the backend.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CancelBackup
Cancel a backup by its ID from a specified backend storage.
**Parameters**
- **backup_id** (`string`, required) The unique ID of the backup to delete. Must be URL-safe, using lowercase, numbers, underscores, and minus characters.
- **storage_backend_system** (`string`, required) Specifies the backend storage system where the backup resides (e.g., 'filesystem', 'gcs', 's3', 'azure').
- **backup_subpath** (`string`, optional) Specifies the optional path within the storage if the backup is not at the root.
- **specified_bucket_name** (`string`, optional) Specifies the bucket, container, or volume name if required by the backend storage system. Optional parameter.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.CheckBackupRestoreStatus
Check the status of a backup restoration process.
**Parameters**
- **backend_storage_system** (`string`, required) Specifies the backend storage system where the backup resides, such as 'filesystem', 'gcs', 's3', or 'azure'.
- **backup_id** (`string`, required) The URL-safe unique identifier of the backup being restored. Use lowercase, numbers, underscores, and minus characters only.
- **backup_bucket_name** (`string`, optional) Specifies the bucket, container, or volume name if required by the backend.
- **bucket_path** (`string`, optional) Specifies the path within the bucket, optional based on backend requirements.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.RestoreBackup
Restore collections from a specified backup.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **backup_backend_storage** (`string`, optional) Specifies the backend storage system where the backup resides, such as `filesystem`, `gcs`, `s3`, or `azure`. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **backup_identifier** (`string`, optional) The unique identifier for the backup to restore. It must be URL-safe and compatible with filesystem paths, using only lowercase letters, numbers, underscores, and minus characters. Required when mode is 'execute', ignored when mode is 'get_request_schema'.
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetWeaviateClusterStatistics
Get Weaviate cluster Raft protocol statistics.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetClusterNodeStatus
Retrieve status information about all nodes in a cluster.
**Parameters**
- **output_verbosity** (`string`, optional) Controls the verbosity of the output for node status information. Accepted values: `minimal`, `verbose`. Defaults to `minimal`.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetShardHostNodesStatus
Retrieve status of nodes hosting shards for a collection.
**Parameters**
- **collection_class_name** (`string`, required) The name of the collection (class) for which to retrieve node status.
- **output_verbosity** (`string`, optional) Set the verbosity of the output. Possible values: 'minimal', 'verbose'. Defaults to 'minimal'.
- **shard_name** (`string`, optional) Specifies the name of the shard for which to retrieve node status information. This helps to focus the request on specific shards within a collection.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.ListDistributedTasks
Retrieve all distributed tasks in the cluster.
**Parameters**
This tool does not take any parameters.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.InitiateClassificationTask
Initiate a classification task in the background.
**Parameters**
- **mode** (`Enum` [ToolMode](#toolmode), required) Operation mode: 'get_request_schema' returns the OpenAPI spec for the request body, 'execute' performs the actual operation
- **request_body** (`string`, optional) Stringified JSON representing the request body. Required when mode is 'execute', ignored when mode is 'get_request_schema'
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## WeaviateApi.GetClassificationStatus
Retrieve status and results of a classification task.
**Parameters**
- **classification_task_id** (`string`, required) The unique identifier (UUID) of the classification task to retrieve its status and results.
**Secrets**
This tool requires the following secrets: `WEAVIATE_API_KEY`, `WEAVIATE_SERVER_URL`. You can obtain these from your [Weaviate Console](https://console.weaviate.cloud/). Note that `WEAVIATE_SERVER_URL` must include the `https://` protocol. See the [Authentication section](#authentication) above for detailed instructions and the [Weaviate Authentication documentation](https://weaviate.io/developers/weaviate/configuration/authentication) for more information.
## Reference
Below is a reference of enumerations used by some of the tools in the WeaviateApi MCP Server:
### ToolMode
- **GET_REQUEST_SCHEMA**: `get_request_schema`
- **EXECUTE**: `execute`