list_objects
List objects from a collection using the REST API. Supports pagination via limit/offset or cursor-based pagination. Use this for simple object retrieval without search ranking; for search use the **Search Objects** tool instead.
search_objects
Search for objects in a Weaviate collection using various search methods:
- **nearText**: Semantic search using natural language concepts (requires a text vectorizer)
- **nearVector**: Search by raw vector similarity
- **nearObject**: Find objects similar to an existing object
- **hybrid**: Combined vector + keyword search with configurable weighting
- **bm25**: Pure keyword search using BM25 ranking
Exactly one search method must be provided. Results can be filtered with a where clause and paginated with limit/offset.
get_collection
Retrieve the full schema definition of a specific collection, including its properties, vectorizer configuration, module settings, vector index type, and multi-tenancy configuration.
update_object
Update an existing object's properties in a collection. Use **replaceAll** mode to replace all properties (PUT), or **patch** mode to merge only the provided properties (PATCH).
create_collection
Create a new collection (class) in Weaviate with its schema definition. Configure properties, vectorizer, generative module, vector index settings, and multi-tenancy.
The vectorizer cannot be changed after creation. Generative configuration is mutable on supported server versions.
aggregate_collection
Run aggregation queries over a collection to compute metrics like counts, sums, averages, min/max, top occurrences, and more. Supports grouping by a property and filtering with a where clause.
Provide the GraphQL metric selection and optional aggregation filters. Requires GraphQL to be enabled on the cluster.
batch_delete_objects
Delete multiple objects from a collection that match a given where filter. Supports dry-run mode to preview which objects would be deleted without actually removing them.
list_collections
List all collections (classes) in the Weaviate instance. Returns each collection's name, description, properties, vectorizer, and configuration.
update_collection
Update an existing collection's settings or add new properties. You can update the description, inverted index config, replication config, and add new properties.
The vectorizer cannot be changed and properties cannot be removed. Replication factor changes require replica movement.
get_object
Retrieve a specific object from a collection by its UUID. Optionally include vector embeddings in the response.
cluster_status
Get comprehensive information about the Weaviate instance including version, module list, cluster health, and node statuses with shard and object counts.
generative_search
Perform Retrieval Augmented Generation (RAG) by searching a collection and prompting an LLM with the retrieved results. Requires a generative module configured on the collection.
Two generation modes:
- **Single prompt**: Generates a response for each result individually, using object properties via `{propertyName}` template syntax.
- **Grouped task**: Generates one response from all results combined, using all or selected properties as context.
batch_create_objects
Import multiple objects into one or more collections in a single batch request. Optionally include pre-computed vectors for each object. Supports multi-tenant collections.
create_object
Create a new data object in a Weaviate collection. Optionally provide a pre-computed vector embedding, or let the configured vectorizer generate one automatically.
Supports multi-tenant collections by specifying the tenant name.
delete_object
Delete a specific object from a collection by its UUID. This permanently removes the object and its vector embedding.
delete_collection
Permanently delete a collection and all its objects from the Weaviate instance. This action cannot be undone.
manage_backup
Create, restore, or check the status of a Weaviate backup. Supports S3, GCS, Azure, and filesystem backends.
- **create**: Start a new backup of all or selected collections.
- **restore**: Restore a previously created backup.
- **status**: Check the status of a backup or restore operation.
manage_tenants
Manage tenants in a multi-tenant collection. Supports listing, adding, updating status, and removing tenants. Each tenant provides data isolation with its own shard.
Tenant statuses: **ACTIVE** (available), **INACTIVE** (stored locally but not loaded), **OFFLOADED** (moved to cold storage).
manage_references
Add or remove cross-references between objects across collections. Cross-references create links between objects, enabling graph-like data traversal.
get_current_user
Get the authenticated Weaviate username, assigned roles, and groups. Requires a server that supports the current-user endpoint.