Skip to main content
Glama
zilliztech

Zilliz MCP Server

Official
by zilliztech

Zilliz-MCP-Server

1. Zilliz-MCP-Server Overview

Model Context Protocol (MCP) is a standardized framework that enables AI applications to securely connect to external data sources and tools in real-time. It acts as a universal interface between AI models and various systems, allowing AI assistants to access current information and perform actions beyond text generation.

Zilliz MCP Server enables AI agents to seamlessly interact with Milvus, a popular open-source vector database, and Zilliz Cloud, the fully managed version of Milvus. Through this integration, your AI assistants can create collections, insert vector data, and perform semantic searches directly within their conversations—no manual database management required. Zilliz MCP Server seamlessly integrates with popular AI-powered coding tools like Cursor, Claude, Windsurf, and other MCP-compatible editors, enabling developers to build vector search capabilities directly within their development workflow.

Related MCP server: Milvus MCP Server

2. Demos

Demo 1: Create a free Milvus cluster with a simple natural language prompt

Create Free Cluster GIF Instead of navigating through web interfaces or complex setup processes, you can get a free, fully functional vector database cluster up and running it directly from Claude, Cursor or any other MCP-compatible AI coding assistants with the Zilliz MCP Server.

The Zilliz MCP server automatically:

  • Provisions a free Milvus cluster using Zilliz Cloud

  • Handles authentication and configuration

  • Returns connection details for immediate use

No need to leave your AI chat interface or manually set up infrastructure. Just ask in natural language and get a working vector database within seconds. This works in any MCP-enabled environment, including Claude's web interface as shown above.

Demo 2: Monitor cluster performance without leaving your chat

Checkout My Cluster GIF Once you have a cluster running, you can inspect its status and generate visualizations directly through natural language:

The Zilliz MCP server:

  • Retrieves real-time cluster metrics and collection details

  • Fetches performance data (CPU computation, capacity usage)

  • Generates visualizations on demand

  • All without writing queries or accessing monitoring dashboards

This demonstrates how you can monitor and analyze your vector database infrastructure conversationally, making cluster management as simple as asking questions in plain English.

Demo 3: Perform semantic search directly from your chat

Talk with your Data GIF Search your vector collections using natural language without writing any code:

The Zilliz MCP server:

  • Performs semantic search across your specified collection

  • Returns relevant results with similarity scores

  • All through conversational interface - no SDK calls or query syntax required

This shows how vector search becomes as simple as describing what you're looking for. Perfect for testing search queries, exploring your data, or building search functionality without leaving your development environment.

3. Requirements

  • Python: 3.10 or higher.

  • uv: A fast Python package installer and resolver. If you don't have it, run brew install uv on OSX, or just run curl -LsSf https://astral.sh/uv/install.sh | sh .

  • A Zilliz Cloud account: sign up for free if you haven't tried Zilliz Cloud before. If you already have one, sign in here.

  • Zilliz Cloud API Key: You'll need an API key to interact with Zilliz Cloud. You can get one by following the instructions here: Manage API Keys.

4. Usage

You can start the server in two ways:

If you are completely new to MCP and Zilliz, we recommend following our step-by-step guide in Step By Step User Guide which will walk you through the complete setup process.

4.1. Standard I/O (StdIO)

This method is useful when the agent and the MCP server are running on the same machine and you want the agent to manage the server's lifecycle directly. The agent communicates with the server over its standard input and output streams.

Configure your agent's MCP JSON file like this:

{
  "mcpServers": {
    "zilliz-mcp-server": {
      "command": "uvx",
      "args": ["zilliz-mcp-server"],
      "env": {
          "ZILLIZ_CLOUD_TOKEN": "your-token-here"
      }
    }
  }
}

Note: Make sure to replace /path/to/your/zilliz-mcp-server with the actual absolute path to the project directory.

4.2. Streamable HTTP

This method runs the server as a standalone HTTP service. This is useful for development and for agents that can communicate over HTTP.

First, clone or download the project repository.

git clone https://github.com/zilliztech/zilliz-mcp-server.git
cd zilliz-mcp-server

Next, create a .env file from the example and fill in your Zilliz Cloud API key.

cp example.env .env

Now, open .env and add your API key:

ZILLIZ_API_KEY="your_api_key_here"

It 'll start the MCP server as a standalone HTTP service

uv run src/zilliz_mcp_server/server.py --transport streamable-http

After starting the server, you can configure your MCP client to connect to it. If the server is running correctly, the available tools will appear in your client's tool list (e.g., in Cursor or Claude).

You can then configure your agent or MCP client to connect to it using a configuration like this:

{
  "mcpServers": {
    "zilliz-mcp-server": {
      "url": "http://localhost:8000/mcp",
      "transport": "streamable-http",
      "description": "Zilliz Cloud and Milvus MCP Server"
    }
  }
}

5. Available Tools

The server exposes two categories of tools for your AI agents.

Zilliz Control Plane Tools

These tools are for managing your Zilliz Cloud resources.

Tool Name

Description

list_projects

List all projects in your Zilliz Cloud account.

list_clusters

List all clusters within your projects.

create_free_cluster

Create a new, free-tier Milvus cluster.

describe_cluster

Get detailed information about a specific cluster.

suspend_cluster

Suspend a running cluster to save costs.

resume_cluster

Resume a suspended cluster.

query_cluster_metrics

Query various performance metrics for a cluster.

Milvus Data Plane Tools

These tools are for interacting with the data inside a Milvus cluster.

Tool Name

Description

list_databases

List all databases within a specific cluster.

list_collections

List all collections within a database.

create_collection

Create a new collection with a specified schema.

describe_collection

Get detailed information about a collection, including its schema.

insert_entities

Insert entities (data records with vectors) into a collection.

delete_entities

Delete entities from a collection based on IDs or a filter expression.

search

Perform a vector similarity search on a collection.

query

Query entities based on a scalar filter expression.

hybrid_search

Perform a hybrid search combining vector similarity and scalar filters.

Available Tools

16 tools
create_collectionB
Create a collection in a specified cluster using Quick Setup.

Args:
    cluster_id: ID of the cluster
    region_id: ID of the cloud region hosting the cluster
    endpoint: The cluster endpoint URL. Can be obtained by calling describe_cluster and using the connect_address field
    collection_name: The name of the collection to create
    dimension: The number of dimensions a vector value should have
    db_name: The name of the database. Pass explicit dbName or leave empty when cluster is free or serverless
    metric_type: The metric type (default: "COSINE", options: "L2", "IP", "COSINE") Ask the user to select the metric type, if user does not select, use default value "COSINE"
    id_type: The data type of the primary field (default: "Int64", options: "Int64", "VarChar")
    auto_id: Whether the primary field automatically increments (default: True)
    primary_field_name: The name of the primary field (default: "id")
    vector_field_name: The name of the vector field (default: "vector")
Returns:
    Dict containing the response
    Example:
    {
        "code": 0,
        "data": {}
    }
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes
region_idYes
endpointYes
collection_nameYes
dimensionYes
db_nameNo
metric_typeNoCOSINE
id_typeNoInt64
auto_idNo
primary_field_nameNoid
vector_field_nameNovector

TDQS

B3.4/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the tool creates something ('Create a collection'), implying a write operation, but doesn't address permissions, side effects, error handling, or rate limits. The example response format adds some value, but key behavioral traits like whether this is idempotent or what happens on failure are missing.

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 front-loaded with the core purpose, followed by a structured list of parameters and returns. However, it includes verbose examples and repetitive details (e.g., listing all default values in the description when they're already in the schema), making it longer than necessary. Some sentences, like the full example response, could be trimmed for efficiency.

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 complexity (11 parameters, no annotations, no output schema), the description is moderately complete. It covers parameter semantics well but lacks behavioral context (e.g., error cases, performance). The example response helps, but without an output schema, more detail on return values would improve completeness. It's adequate but has gaps for a mutation tool.

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 fully. It provides detailed semantics for all 11 parameters, including explanations (e.g., 'endpoint: The cluster endpoint URL. Can be obtained by calling describe_cluster'), default values, options for enums like 'metric_type', and usage notes (e.g., for 'db_name'). This adds significant meaning beyond the bare 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 action ('Create a collection') and resource ('in a specified cluster'), with the method 'using Quick Setup' providing additional context. It distinguishes from siblings like 'list_collections' or 'describe_collection' by focusing on creation. However, it doesn't explicitly differentiate from other creation tools like 'create_free_cluster' beyond the resource type.

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 needing to create a collection in a cluster, with a note that 'endpoint' can be obtained from 'describe_cluster', suggesting a prerequisite. However, it lacks explicit guidance on when to use this vs. alternatives (e.g., no mention of when to use 'create_free_cluster' first or how this relates to database operations), and doesn't specify exclusions or edge cases.

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

create_free_clusterB
Create a free cluster in Zilliz Cloud.

Args:
    cluster_name: Name of the cluster to create
    project_id: ID of the project to which the cluster belongs
Returns:
    Dict containing cluster creation info
    Example:
    {
        "cluster_id": "inxx-xxxxxxxxxxxxxxx",
        "username": "db_xxxxxxxx",
        "prompt": "successfully submitted, cluster is being created..."
    }
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_nameYes
project_idYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It states this creates a free cluster and shows an example return, but lacks critical details: whether this is a mutating operation (implied but not explicit), what 'free' entails (limits, restrictions), if it requires specific permissions, or how long creation takes. The example response hints at asynchronous creation ('cluster is being created...'), but this isn't explicitly explained.

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 clear sections (Args, Returns, Example) and front-loads the core purpose. The example is helpful but could be more concise by integrating it into the Returns section. Overall, it's efficient with minimal wasted text.

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 complexity (a creation tool with 2 parameters, no annotations, and no output schema), the description is moderately complete. It covers the basic purpose, parameters, and return example, but lacks usage guidelines, behavioral details (e.g., mutating nature, async behavior), and doesn't fully compensate for the missing structured data. The example return helps but isn't a substitute for a proper output schema.

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 context for both parameters beyond the schema (which has 0% description coverage). It explains that 'cluster_name' is the name of the cluster to create and 'project_id' is the ID of the project it belongs to, clarifying their roles. However, it doesn't provide format constraints (e.g., length limits for cluster_name) or where to obtain project_id (e.g., from 'list_projects').

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 action ('Create a free cluster') and the resource ('in Zilliz Cloud'), making the purpose immediately understandable. However, it doesn't explicitly differentiate this from sibling tools like 'list_clusters' or 'describe_cluster' beyond the creation aspect.

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. It doesn't mention prerequisites (e.g., needing a project_id from 'list_projects'), when not to use it (e.g., if a cluster already exists), or how it differs from other cluster-related tools like 'resume_cluster' or 'suspend_cluster'.

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

delete_entitiesB
Delete entities from a collection by filtering conditions or primary keys.

Args:
    cluster_id: ID of the cluster
    region_id: ID of the cloud region hosting the cluster
    endpoint: The cluster endpoint URL. Can be obtained by calling describe_cluster and using the connect_address field
    collection_name: The name of an existing collection
    filter: A scalar filtering condition to filter matching entities. You can set this parameter to an empty string to skip scalar filtering. To build a scalar filtering condition, refer to Reference on Scalar Filters
    db_name: The name of the target database. Pass explicit dbName or leave empty when cluster is free or serverless
    partition_name: The name of a partition in the current collection. If specified, the data is to be deleted from the specified partition
Returns:
    Dict containing the response
    Example:
    {
        "code": 0,
        "cost": 0,
        "data": {}
    }
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes
region_idYes
endpointYes
collection_nameYes
filterYes
db_nameNo
partition_nameNo

TDQS

B3/5.0
Behavior2/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly indicates this is a destructive operation ('Delete'), but doesn't specify whether deletions are permanent/reversible, what permissions are required, rate limits, or error conditions. The example response shows a generic success format but lacks detail on failure modes or side effects. This is inadequate for a mutation tool with zero annotation coverage.

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 structured with clear sections (Args, Returns, Example) but contains some redundancy. The 'Returns' section could be more concise, and the example takes significant space without adding critical information beyond the response format. Some parameter explanations (like 'endpoint') are helpful but could be more efficiently integrated.

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 complexity (7 parameters, destructive operation, no annotations, no output schema), the description is partially complete. It covers parameter meanings well but lacks crucial behavioral context like deletion permanence, authorization requirements, and error handling. The example response provides some output format insight but doesn't substitute for proper behavioral transparency.

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 provides substantial parameter semantics beyond the schema, which has 0% description coverage. It explains the purpose of 'cluster_id', 'region_id', 'endpoint' (including how to obtain it), 'collection_name', 'filter' (with filtering guidance and empty string behavior), 'db_name' (when to use or leave empty), and 'partition_name' (scope of deletion). This compensates well for the schema's lack of descriptions.

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's purpose: 'Delete entities from a collection by filtering conditions or primary keys.' It specifies the verb ('Delete'), resource ('entities from a collection'), and mechanism ('filtering conditions or primary keys'). However, it doesn't explicitly differentiate this from other destructive operations like 'suspend_cluster' or data modification tools like 'insert_entities'.

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 minimal usage guidance. It mentions that the 'endpoint' parameter 'can be obtained by calling describe_cluster,' which hints at a prerequisite relationship, but doesn't explain when to use this tool versus alternatives like other deletion methods or when deletion is appropriate versus modification. No explicit 'when-not' or alternative tool recommendations are provided.

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

describe_clusterB
Describe a cluster in detail.

Args:
    cluster_id: ID of the cluster whose details are to return
Returns:
    Dict containing detailed cluster information
    Example:
    {
        "cluster_id": "inxx-xxxxxxxxxxxxxxx",
        "cluster_name": "Free-01",
        "project_id": "proj-b44a39b0c51cf21791a841",
        "description": "",
        "region_id": "gcp-us-west1",
        "cu_type": "",
        "plan": "Free",
        "status": "RUNNING",
        "connect_address": "https://inxx-xxxxxxxxxxxxxxx.api.gcp-us-west1.zillizcloud.com",
        "private_link_address": "",
        "cu_size": 0,
        "storage_size": 0,
        "snapshot_number": 0,
        "create_progress": 100,
        "create_time": "2024-06-24T12:35:09Z"
    }
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. While 'describe' implies a read-only operation, it doesn't explicitly state this is safe/non-destructive. It provides an example output but doesn't describe error conditions, authentication requirements, rate limits, or what happens with invalid cluster IDs. The example is helpful but incomplete for behavioral understanding.

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 clear sections (purpose, Args, Returns, Example). The opening sentence is direct, and the example is appropriately detailed. However, the example takes significant space and could potentially be summarized more concisely while still being informative.

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 single-parameter read operation with no output schema, the description provides adequate coverage of what the tool does and what it returns. The example output is particularly valuable. However, it lacks context about error handling, authentication, and when this operation might fail - important for a tool that presumably queries infrastructure resources.

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 only 1 parameter and 0% schema description coverage, the description compensates well by clearly documenting the single parameter 'cluster_id' in the Args section and explaining it as 'ID of the cluster whose details are to return'. This adds meaningful context beyond the bare schema, though it doesn't specify format constraints or validation rules.

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's purpose with 'Describe a cluster in detail' - a specific verb ('describe') and resource ('cluster'). It distinguishes from siblings like 'list_clusters' (which lists multiple) and 'query_cluster_metrics' (which focuses on metrics). However, it doesn't explicitly contrast with 'describe_collection' which describes a different resource type.

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. It doesn't mention when you'd use 'describe_cluster' versus 'list_clusters' (for overview vs details) or 'query_cluster_metrics' (for metrics vs configuration). There's no mention of prerequisites or when this operation is appropriate.

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

describe_collectionA
Describe the details of a collection.

Args:
    cluster_id: ID of the cluster
    region_id: ID of the cloud region hosting the cluster
    endpoint: The cluster endpoint URL. Can be obtained by calling describe_cluster and using the connect_address field
    collection_name: The name of the collection to describe
    db_name: The name of the database. Pass explicit dbName or leave empty when cluster is free or serverless
Returns:
    Dict containing detailed information about the specified collection
    Example:
    {
        "code": 0,
        "data": {
            "aliases": [],
            "autoId": false,
            "collectionID": 448707763883002000,
            "collectionName": "test_collection",
            "consistencyLevel": "Bounded",
            "description": "",
            "enableDynamicField": true,
            "fields": [
                {
                    "autoId": false,
                    "description": "",
                    "id": 100,
                    "name": "id",
                    "partitionKey": false,
                    "primaryKey": true,
                    "type": "Int64"
                },
                {
                    "autoId": false,
                    "description": "",
                    "id": 101,
                    "name": "vector",
                    "params": [
                        {
                            "key": "dim",
                            "value": "5"
                        }
                    ],
                    "partitionKey": false,
                    "primaryKey": false,
                    "type": "FloatVector"
                }
            ],
            "indexes": [
                {
                    "fieldName": "vector",
                    "indexName": "vector",
                    "metricType": "COSINE"
                }
            ],
            "load": "LoadStateLoaded",
            "partitionsNum": 1,
            "properties": []
        }
    }
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes
region_idYes
endpointYes
collection_nameYes
db_nameNo

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It implies this is a read-only operation (consistent with 'describe'), but doesn't explicitly state safety, permissions, or rate limits. The example output adds some behavioral context by showing the return structure, but lacks details on error handling, latency, or side effects.

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 appropriately sized but not optimally structured. The purpose statement is clear upfront, but the detailed example occupies most of the text. While helpful, the example could be summarized more concisely. The parameter explanations are well-organized but buried after the initial statement.

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 moderate complexity (5 parameters, no annotations, no output schema), the description provides good coverage. The parameter explanations are thorough, and the example output compensates for the lack of output schema. However, it could better address behavioral aspects like error conditions or performance characteristics.

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 value beyond the input schema, which has 0% description coverage. It provides clear explanations for all 5 parameters, including practical guidance for 'endpoint' (how to obtain it) and 'db_name' (when to pass or leave empty). This fully compensates for the schema's lack of parameter documentation.

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's purpose: 'Describe the details of a collection.' This is a specific verb ('describe') with a clear resource ('collection'), though it doesn't explicitly differentiate from sibling tools like 'list_collections' or 'describe_cluster'. The purpose is unambiguous but lacks sibling comparison.

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 minimal usage guidance. It mentions that the endpoint 'can be obtained by calling describe_cluster' and notes when to pass or leave db_name empty, but offers no explicit guidance on when to use this tool versus alternatives like 'list_collections' or 'describe_cluster'. There's no context about prerequisites or typical use cases.

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

insert_entitiesA
Insert data into a specific collection.

Args:
    cluster_id: ID of the cluster
    region_id: ID of the cloud region hosting the cluster
    endpoint: The cluster endpoint URL. Can be obtained by calling describe_cluster and using the connect_address field
    collection_name: The name of an existing collection
    data: An entity object or an array of entity objects. Note that the keys in an entity object should match the collection schema
    db_name: The name of the target database. Pass explicit dbName or leave empty when cluster is free or serverless
Returns:
    Dict containing the response with insert count and insert IDs
    Example:
    {
        "code": 0,
        "data": {
            "insertCount": 10,
            "insertIds": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
        }
    }
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes
region_idYes
endpointYes
collection_nameYes
dataYes
db_nameNo

TDQS

A3.5/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden. It mentions that data keys should match collection schema, which is useful behavioral context. However, it doesn't disclose critical traits like whether this is a write operation (implied but not stated), authentication requirements, error handling, rate limits, or what happens on duplicate keys. For a mutation tool with zero annotation coverage, this leaves significant gaps.

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 appropriately sized and well-structured with clear sections for Args and Returns. Every sentence adds value, though the example in Returns could be more concise. It's front-loaded with the core purpose, then details parameters and response.

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 6-parameter mutation tool with no annotations and no output schema, the description provides good parameter documentation and a response example. However, it lacks information about behavioral traits (permissions, side effects, error cases) and doesn't fully explain the relationship with sibling tools. The response example helps but doesn't replace a proper output schema.

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?

With 0% schema description coverage, the description provides excellent parameter semantics beyond the schema. It explains each parameter's purpose: cluster_id and region_id identify infrastructure, endpoint can be obtained from describe_cluster, collection_name must be existing, data format requirements, and db_name usage conditions. This fully compensates for the schema coverage gap.

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 inserts data into a specific collection, providing a specific verb (insert) and resource (collection). It distinguishes from siblings like delete_entities (deletion) and create_collection (creation), though it doesn't explicitly contrast with query/search tools that might also interact with collections.

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 mentioning prerequisites like existing collections and obtaining endpoint from describe_cluster, but doesn't explicitly state when to use this vs alternatives like create_collection (for new collections) or query (for reading). It provides some context but lacks explicit when/when-not guidance.

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

list_clustersA
List all clusters scoped to API Key in Zilliz Cloud.
If you want to list all clusters, you can set page_size to 100 and current_page to 1.

Args:
    page_size: The number of records to include in each response (default: 10)
    current_page: The current page number (default: 1)
Returns:
    List containing cluster data
    Example:
    [
        {
            "cluster_id": "inxx-xxxxxxxxxxxxxxx",
            "cluster_name": "dedicated-3",
            "description": "",
            "region_id": "aws-us-west-2",
            "plan": "Standard",
            "cu_type": "Performance-optimized",
            "cu_size": 1,
            "status": "RUNNING",
            "connect_address": "https://inxx-xxxxxxxxxxxxxxx.aws-us-west-2.vectordb.zillizcloud.com:19530",
            "private_link_address": "",
            "project_id": "proj-xxxxxxxxxxxxxxxxxxxxxx",
            "create_time": "2024-06-30T16:49:50Z"
        }
    ]
ParametersJSON Schema
NameRequiredDescriptionDefault
page_sizeNo
current_pageNo

TDQS

A4/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses that the tool lists clusters 'scoped to API Key,' which implies authentication context. It also describes pagination behavior and provides a detailed example of the return data structure, including fields like cluster_id, status, and connect_address. However, it doesn't mention rate limits, error conditions, or whether this is a read-only operation (though 'List' implies it).

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 appropriately sized and front-loaded with the core purpose. However, the example return structure is quite detailed (11 fields), which adds length but is valuable for transparency. The structure could be slightly improved by separating the example into a distinct section, but overall it's efficient with minimal waste.

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 moderate complexity (2 parameters, no output schema, no annotations), the description is fairly complete. It covers purpose, parameters with semantics, usage guidance, and a detailed return example. However, it lacks explicit mention of authentication requirements (implied by 'API Key'), error handling, or pagination limits beyond the example. For a list operation with no annotations, this is good but not exhaustive.

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, which has 0% description coverage. It explicitly defines both parameters: 'page_size: The number of records to include in each response (default: 10)' and 'current_page: The current page number (default: 1).' It also provides usage context: 'If you want to list all clusters, you can set page_size to 100 and current_page to 1.' This fully compensates for the schema's lack of descriptions.

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's purpose: 'List all clusters scoped to API Key in Zilliz Cloud.' It specifies the verb ('List') and resource ('clusters'), and clarifies the scope ('scoped to API Key'). However, it doesn't explicitly differentiate from sibling tools like 'describe_cluster' or 'query_cluster_metrics', which would require 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 provides some usage guidance: 'If you want to list all clusters, you can set page_size to 100 and current_page to 1.' This implies usage for pagination, but it doesn't explicitly state when to use this tool versus alternatives like 'describe_cluster' (for detailed info) or 'list_projects' (for different resources). No exclusions or prerequisites are mentioned.

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

list_collectionsA
List all collection names in the specified database.

Args:
    cluster_id: ID of the cluster
    region_id: ID of the cloud region hosting the cluster
    endpoint: The cluster endpoint URL. Can be obtained by calling describe_cluster and using the connect_address field
    db_name: The name of an existing database. Pass explicit dbName or leave empty when cluster is free or serverless
Returns:
    JSON string containing list of collection names
    Example:
    '["quick_setup_new", "customized_setup_1", "customized_setup_2"]'
    If no collections found, returns: '[]'
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes
region_idYes
endpointYes
db_nameNo

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It describes the return format (JSON string with list of names) and edge case behavior (empty array when no collections found), which is helpful. However, it doesn't mention potential error conditions, authentication requirements, rate limits, or whether this is a read-only operation, leaving significant gaps.

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 clear sections (Args, Returns, Example) and front-loads the core purpose. However, some sentences could be more concise (e.g., the endpoint explanation is somewhat wordy), and the example formatting could be cleaner.

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 4 parameters with no schema descriptions and no output schema, the description does a reasonable job explaining parameters and return values. However, for a tool with no annotations and multiple required parameters, it should provide more behavioral context about error handling, authentication, and operational characteristics to be fully 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?

With 0% schema description coverage, the description fully compensates by providing detailed semantic information for all 4 parameters. It explains what each parameter represents, provides usage guidance for 'endpoint' and 'db_name', and clarifies which parameters are required versus optional. This adds substantial value beyond the bare 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's purpose: 'List all collection names in the specified database.' This is a specific verb+resource combination (list + collection names). However, it doesn't explicitly differentiate from sibling tools like 'describe_collection' or 'list_databases', which prevents a perfect score.

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 some implied usage context by mentioning the endpoint can be obtained from 'describe_cluster' and noting when db_name can be left empty. However, it doesn't explicitly state when to use this tool versus alternatives like 'list_databases' or 'describe_collection', nor does it provide clear exclusions or prerequisites.

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

list_databasesA
List all databases in the current cluster.

Args:
    cluster_id: ID of the cluster
    region_id: ID of the cloud region hosting the cluster
    endpoint: The cluster endpoint URL. Can be obtained by calling describe_cluster and using the connect_address field
Returns:
    List of database names
    Example:
    [
        "default",
        "test"
    ]
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes
region_idYes
endpointYes

TDQS

A3.5/5.0
Behavior3/5

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

No annotations are provided, so the description carries the full burden. It describes a read-only operation ('List') and hints at dependencies (endpoint from 'describe_cluster'), but doesn't disclose behavioral traits like rate limits, authentication needs, error conditions, or pagination. It adds some context but leaves significant gaps for a tool with no annotation coverage.

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 appropriately sized and front-loaded with the core purpose. The structured sections (Args, Returns, Example) are helpful, but the example could be more concise. Overall, it's efficient with minimal waste, though the formatting could be tighter.

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 complexity (3 required parameters, no annotations, no output schema), the description is moderately complete. It covers the purpose, parameters, and return value with an example, but lacks details on error handling, permissions, or behavioral constraints. It's adequate but has clear gaps for a tool with no structured safety or output information.

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 semantics beyond the input schema, which has 0% description coverage. It explains that 'cluster_id' and 'region_id' are IDs, and clarifies that 'endpoint' is a URL obtainable from 'describe_cluster' using 'connect_address'. This compensates well for the schema's lack of descriptions, though it doesn't detail format constraints or examples for all parameters.

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's purpose: 'List all databases in the current cluster.' It specifies the verb ('List') and resource ('databases'), but doesn't explicitly differentiate from sibling tools like 'list_clusters' or 'list_collections' beyond the resource type. The purpose is clear but lacks sibling comparison.

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 specifying the context ('current cluster') and referencing another tool ('describe_cluster') for obtaining the endpoint parameter. However, it doesn't explicitly state when to use this tool versus alternatives like 'list_clusters' or provide exclusions. The guidance is implied but not comprehensive.

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

list_projectsB
List all projects scoped to API Key in Zilliz Cloud.

Args:
    None
Returns:
    JSON string containing the API response with projects data
    Example:
    '[{"project_name": "Default Project", "project_id": "proj-f5b02814db7ccfe2d16293", "instance_count": 0, "create_time": "2023-06-14T06:59:07Z"}]'
ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. While it mentions the tool lists projects 'scoped to API Key,' it doesn't address important behavioral aspects like authentication requirements, rate limits, pagination behavior, error conditions, or whether this is a read-only operation. The example response format is helpful but insufficient for comprehensive behavioral understanding.

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 appropriately sized and front-loaded with the core functionality statement. The structure with separate 'Args' and 'Returns' sections is organized, though the example could be more concise. Most sentences earn their place, with only minor verbosity in the example formatting.

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 parameterless listing tool with no output schema, the description provides basic functionality and return format example. However, without annotations and with multiple sibling listing tools, it lacks sufficient context about authentication, scoping implications, and differentiation from similar tools. The example helps but doesn't fully compensate for missing behavioral context.

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 tool has zero parameters with 100% schema description coverage. The description explicitly states 'Args: None,' which correctly communicates the parameterless nature. This provides clear semantic information beyond what the empty schema alone would convey.

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 action ('List all projects') and resource ('projects scoped to API Key in Zilliz Cloud'), providing specific verb+resource combination. However, it doesn't differentiate from sibling tools like 'list_clusters' or 'list_collections' beyond mentioning 'projects' specifically.

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 is provided about when to use this tool versus alternatives. The description doesn't mention prerequisites, context for usage, or relationships to other listing tools in the sibling set. It simply states what the tool does without usage context.

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

queryB
Conduct a filtering on the scalar field with a specified boolean expression.

Args:
    cluster_id: ID of the cluster
    region_id: ID of the cloud region hosting the cluster
    endpoint: The cluster endpoint URL. Can be obtained by calling describe_cluster and using the connect_address field
    collection_name: The name of the collection to which this operation applies
    filter: The filter used to find matches for the search
    db_name: The name of the database. Pass explicit dbName or leave empty when cluster is free or serverless
    output_fields: An array of fields to return along with the query results
    partition_names: The name of the partitions to which this operation applies. If not set, the operation applies to all partitions in the collection
    limit: The total number of entities to return (default: 100). The sum of this value and offset should be less than 16,384
    offset: The number of records to skip in the search result. The sum of this value and limit should be less than 16,384
Returns:
    Dict containing the query results
    Example:
    {
        "code": 0,
        "cost": 0,
        "data": [
            {
                "color": "red_7025",
                "id": 1
            },
            {
                "color": "red_4794",
                "id": 4
            },
            {
                "color": "red_9392",
                "id": 6
            }
        ]
    }
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes
region_idYes
endpointYes
collection_nameYes
filterYes
db_nameNo
output_fieldsNo
partition_namesNo
limitNo
offsetNo

TDQS

B3/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It adds some context, such as default values for limit and offset, constraints on their sum (<16,384), and an example return structure. However, it lacks details on permissions, rate limits, error handling, or whether it's read-only/destructive, which are critical for a query tool with many parameters.

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 front-loaded with a purpose statement and organized into Args and Returns sections, but it's verbose with repetitive parameter details. Some sentences, like the filter explanation, could be more concise. The structure is clear but not optimally efficient, with room for trimming without losing value.

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 complexity (10 parameters, no annotations, no output schema), the description is moderately complete. It covers parameters well and includes an example return, but lacks behavioral details like error cases, performance implications, or how it differs from sibling tools. This leaves gaps for an agent to fully understand the tool's context and usage.

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 description coverage is 0%, so the description must compensate. It provides detailed explanations for all 10 parameters, including purposes, defaults, and constraints (e.g., limit+offset <16,384), adding significant meaning beyond the bare schema. This effectively documents the parameters, though some nuances like filter syntax could be more explicit.

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

Purpose3/5

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

The description states 'Conduct a filtering on the scalar field with a specified boolean expression,' which vaguely indicates a filtering/query operation but lacks specificity about what resource is being queried (e.g., database collection). It doesn't clearly distinguish from siblings like 'search' or 'hybrid_search,' leaving ambiguity about when to use this tool versus others.

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 explicit guidance on when to use this tool versus alternatives like 'search' or 'hybrid_search.' The description mentions obtaining the endpoint from 'describe_cluster,' implying a prerequisite, but doesn't clarify the tool's specific use case or exclusions relative to siblings, leaving the agent without clear usage context.

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

query_cluster_metricsA
Query the metrics of a specific cluster.

Args:
    cluster_id: ID of the target cluster
    start: Starting date and time in ISO 8601 timestamp format (optional, use with end)
    end: Ending date and time in ISO 8601 timestamp format (optional, use with start)
    period: Duration in ISO 8601 duration format (optional, use when start/end not set)
    granularity: Time interval for metrics reporting in ISO 8601 duration format (minimum PT30S)
    metric_queries: List of metric queries, each containing 'metricName' and 'stat' fields
        - metricName: Name of the metric. Available options:
            * CU_COMPUTATION - Compute unit computation usage
            * CU_CAPACITY - Compute unit capacity
            * STORAGE_USE - Storage usage
            * REQ_INSERT_COUNT - Insert request count
            * REQ_BULK_INSERT_COUNT - Bulk insert request count
            * REQ_UPSERT_COUNT - Upsert request count
            * REQ_DELETE_COUNT - Delete request count
            * REQ_SEARCH_COUNT - Search request count
            * REQ_QUERY_COUNT - Query request count
            * VECTOR_REQ_INSERT_COUNT - Vector insert request count
            * VECTOR_REQ_UPSERT_COUNT - Vector upsert request count
            * VECTOR_REQ_SEARCH_COUNT - Vector search request count
            * REQ_INSERT_LATENCY_P99 - Insert request latency P99
            * REQ_BULK_INSERT_LATENCY_P99 - Bulk insert request latency P99
            * REQ_UPSERT_LATENCY_P99 - Upsert request latency P99
            * REQ_DELETE_LATENCY_P99 - Delete request latency P99
            * REQ_SEARCH_LATENCY_P99 - Search request latency P99
            * REQ_QUERY_LATENCY_P99 - Query request latency P99
            * REQ_SUCCESS_RATE - Request success rate
            * REQ_FAIL_RATE - Request failure rate
            * REQ_FAIL_RATE_INSERT - Insert request failure rate
            * REQ_FAIL_RATE_BULK_INSERT - Bulk insert request failure rate
            * REQ_FAIL_RATE_UPSERT - Upsert request failure rate
            * REQ_FAIL_RATE_DELETE - Delete request failure rate
            * REQ_FAIL_RATE_SEARCH - Search request failure rate
            * REQ_FAIL_RATE_QUERY - Query request failure rate
            * ENTITIES_LOADED - Number of loaded entities
            * ENTITIES_INSERT_RATE - Entity insert rate
            * COLLECTIONS_COUNT - Collection count
            * ENTITIES_COUNT - Total entity count
        - stat: Statistical method (AVG for average, P99 for 99th percentile - P99 only valid for latency metrics)
Returns:
    Dict containing cluster metrics data
    Example:
    {
        "code": 0,
        "data": {
            "results": [
                {
                    "name": "CU_COMPUTATION",
                    "stat": "AVG", 
                    "unit": "percent",
                    "values": [
                        {
                            "timestamp": "2024-06-30T16:09:53Z",
                            "value": "1.00"
                        }
                    ]
                }
            ]
        }
    }
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes
startNo
endNo
periodNo
granularityNoPT30S
metric_queriesNo

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations provided, the description carries full burden for behavioral disclosure. It partially succeeds by describing the return format with an example and noting parameter constraints (e.g., 'minimum PT30S' for granularity). However, it lacks important behavioral context such as authentication requirements, rate limits, error conditions, or whether this is a read-only operation (though 'query' implies read).

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 appropriately structured with clear sections (Args, Returns, Example) but is quite lengthy due to the exhaustive metric list. While this detail is valuable for parameter semantics, it makes the description less concise. The core purpose is front-loaded, but the extensive parameter documentation dominates the text.

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 6-parameter tool with no annotations and no output schema, the description provides strong coverage. It documents all parameters thoroughly, includes a return example, and explains key constraints. The main gaps are the lack of behavioral context (auth, rate limits) and usage guidance relative to sibling tools, but given the parameter complexity, it's reasonably 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?

Given 0% schema description coverage, the description compensates exceptionally well by providing comprehensive parameter documentation. It explains each parameter's purpose, format requirements (ISO 8601), optionality, usage rules (e.g., 'use with end'), constraints (minimum granularity), and for 'metric_queries', it provides a complete list of available metric names with descriptions and valid 'stat' values. This adds substantial meaning beyond the bare 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's purpose: 'Query the metrics of a specific cluster.' This is a specific verb ('query') and resource ('metrics of a specific cluster'), though it doesn't explicitly differentiate from sibling tools like 'describe_cluster' or 'list_clusters' which might provide different types of cluster information.

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. While it mentions optional parameters and their usage patterns (e.g., 'use with end'), it doesn't explain when to query metrics versus using other cluster-related tools like 'describe_cluster' or 'list_clusters' for different information needs.

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

resume_clusterA
Resume a dedicated cluster in Zilliz Cloud.

Args:
    cluster_id: ID of the cluster to resume
Returns:
    Dict containing cluster resumption info
    Example:
    {
        "cluster_id": "inxx-xxxxxxxxxxxxxxx",
        "prompt": "successfully Submitted. Cluster is being resumed, which is expected to takes several minutes. You can access data about the creation progress and status of your cluster by DescribeCluster API. Once the cluster status is RUNNING, you may access your vector database using the SDK."
    }
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes

TDQS

A3.5/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It adds valuable context: the operation is asynchronous ('takes several minutes'), suggests monitoring via 'DescribeCluster API', and indicates the cluster becomes accessible when 'RUNNING'. However, it lacks details on permissions, rate limits, error conditions, or whether this is idempotent.

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 appropriately sized and front-loaded with the core purpose. The Args/Returns sections are structured but slightly verbose in the example. Every sentence earns its place by clarifying parameters, return values, and behavioral context, though the example could be more concise.

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 no annotations and no output schema, the description does a fair job: it explains the parameter, return structure, and key behavioral aspects (asynchronous nature, monitoring). However, for a mutation tool with operational impact, it lacks details on error handling, idempotency, and specific prerequisites, leaving gaps in completeness.

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?

With 0% schema description coverage and only one parameter, the description fully compensates by clearly explaining 'cluster_id: ID of the cluster to resume'. This adds essential meaning beyond the bare schema, specifying what the parameter represents and its role in the operation.

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 ('Resume') and resource ('a dedicated cluster in Zilliz Cloud'), making the purpose immediately understandable. It distinguishes from obvious siblings like 'suspend_cluster' and 'describe_cluster' by specifying the resume action. However, it doesn't explicitly differentiate from all potential alternatives like 'create_free_cluster' in terms of when to use each.

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. It doesn't mention prerequisites (e.g., cluster must be suspended), when-not-to-use scenarios, or direct comparisons with sibling tools like 'suspend_cluster' or 'create_free_cluster'. The agent must infer usage from the name and context alone.

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

suspend_clusterB
Suspend a dedicated cluster in Zilliz Cloud.

Args:
    cluster_id: ID of the cluster to suspend
Returns:
    Dict containing cluster suspension info
    Example:
    {
        "cluster_id": "inxx-xxxxxxxxxxxxxxx",
        "prompt": "Successfully Submitted. The cluster will not incur any computing costs when suspended. You will only be billed for the storage costs during this time."
    }
ParametersJSON Schema
NameRequiredDescriptionDefault
cluster_idYes

TDQS

B3.3/5.0
Behavior3/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions cost implications ('will not incur any computing costs... only billed for storage costs'), which is valuable context beyond basic functionality. However, it lacks details about permissions required, whether suspension is reversible, time to suspend, or error conditions.

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 clear sections for Args and Returns, and the core purpose is stated upfront. However, the example in the Returns section is somewhat verbose and could be more concise while still being informative.

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 mutation tool with no annotations and no output schema, the description does an adequate job explaining the basic operation and cost implications. However, it lacks important context about prerequisites, side effects, error handling, and how to verify suspension status, leaving gaps for an AI agent to operate safely.

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 description coverage is 0%, so the description must compensate. It explicitly documents the single parameter 'cluster_id' with a clear explanation ('ID of the cluster to suspend'), adding essential meaning beyond the bare schema. Since there's only one parameter, this is sufficient for good understanding.

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 action ('suspend') and resource ('dedicated cluster in Zilliz Cloud'), making the purpose immediately understandable. However, it doesn't explicitly differentiate from sibling tools like 'resume_cluster' or 'describe_cluster' beyond the obvious verb difference.

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 is provided about when to use this tool versus alternatives like 'resume_cluster' or 'describe_cluster', nor are there any prerequisites, conditions, or warnings about when suspension is appropriate. The description assumes the user already knows when suspension is needed.

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

TDQS

A3.5/5.0
Disambiguation4/5

Most tools have distinct purposes targeting specific resources and operations, such as create_collection vs. describe_collection or search vs. hybrid_search. However, there is some potential overlap between 'search' and 'hybrid_search', as both involve vector similarity searches, though hybrid_search adds reranking capabilities which helps differentiate them. The tool descriptions clarify these distinctions, preventing major confusion.

Naming Consistency5/5

All tool names follow a consistent snake_case pattern with clear verb_noun structures, such as create_collection, list_clusters, delete_entities, and query_cluster_metrics. This uniformity makes the tool set predictable and easy to navigate, with no deviations in naming conventions across the 16 tools.

Tool Count4/5

With 16 tools, the count is slightly high but reasonable for a vector database management server covering clusters, collections, and data operations. It includes essential CRUD operations, search functionalities, and administrative tasks, though it may feel comprehensive rather than minimal. The tools are well-scoped to the domain without being excessive.

Completeness4/5

The tool set provides strong coverage for managing Zilliz Cloud resources, including cluster lifecycle (create, list, describe, suspend, resume), collection operations (create, describe, list), and data handling (insert, delete, search, query). Minor gaps include the lack of update operations for collections or clusters and no explicit tool for dropping collections, but core workflows are well-supported.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables large language models to interact with Milvus vector databases through natural language, supporting semantic search with built-in OpenAI-compatible embedding services and comprehensive collection management.
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to connect to and interact with PostgreSQL, MySQL, SQLite, and MongoDB databases through natural language, supporting schema exploration, query execution, data export, and more.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to securely interact with multiple databases (MySQL, PostgreSQL) via natural language queries, with cross-database querying and enterprise-grade security.
    21
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zilliztech/zilliz-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server