Skip to main content
Glama
tao12345666333

Civo MCP Server

Civo MCP Server

Civo

CI Node.js Version License

An MCP server implementation that integrates with the Civo cloud platform API, providing capabilities to manage cloud instances, networks, and Kubernetes clusters.

Demo

Civo MCP Demo

Or you can also view the details of each step through this public Amp thread.

Related MCP server: poly-cloud-mcp

Getting Started

Requirements

  • Node.js 20 or newer

  • Claude Desktop, VS Code, Cursor, or any other MCP client

  • A Civo account with API key

Installation

First, install the Civo MCP server with your client. A typical configuration looks like this:

{
  "mcpServers": {
    "civo": {
      "command": "npx",
      "args": ["civo-mcp"],
      "env": {
        "CIVO_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}

You can install the Civo MCP server using the VS Code CLI:

# For VS Code
code --add-mcp '{"name":"civo","command":"npx","args":["civo-mcp"],"env":{"CIVO_API_KEY":"YOUR_API_KEY_HERE"}}'

After installation, the Civo MCP server will be available for use with your GitHub Copilot agent in VS Code.

Follow Amp MCP documentation. Use following configuration:

"amp.mcpServers": {
  "civo": {
      "command": "npx",
      "args": ["civo-mcp"],
      "env": {
        "CIVO_API_KEY": "YOUR_API_KEY_HERE"
      }
  }
}

Use the Claude Code CLI to add the Civo MCP server:

claude mcp add civo npx civo-mcp

Then set your API key as an environment variable:

export CIVO_API_KEY="your_api_key_here"

Follow the MCP install guide, use following configuration:

{
  "mcpServers": {
    "civo": {
      "command": "npx",
      "args": ["civo-mcp"],
      "env": {
        "CIVO_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}

Go to Cursor SettingsMCPAdd new MCP Server. Name to your liking, use command type with the command npx civo-mcp. You can also verify config or add command like arguments via clicking Edit.

{
  "mcpServers": {
    "civo": {
      "command": "npx",
      "args": ["civo-mcp"],
      "env": {
        "CIVO_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}

Follow Windsurf MCP documentation. Use following configuration:

{
  "mcpServers": {
    "civo": {
      "command": "npx",
      "args": ["civo-mcp"],
      "env": {
        "CIVO_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}

Follow the MCP install guide, use following configuration:

{
  "mcpServers": {
    "civo": {
      "command": "npx",
      "args": ["civo-mcp"],
      "env": {
        "CIVO_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}

Features

  • Instance Management: Create, manage, resize, start, stop, reboot, and delete cloud instances.

  • Disk Image Operations: List and get details of available disk images.

  • Network Management: Create, rename, and delete networks.

  • Kubernetes Support: Create, list, and delete Kubernetes clusters and list available versions.

  • Flexible Configuration: Set instance size, region, and other parameters.

  • Rate Limiting: Built-in rate limiting to prevent API abuse.

Tools

Instance Management

  • create_instance

    • Create new cloud instances on Civo

    • Inputs:

      • hostname (string): Fully qualified domain name

      • size (string): Instance size (e.g. 'g2.small')

      • template_id (string): Disk image ID

      • count (number, optional): Number of instances to create (default: 1)

      • region (string, optional): Region identifier (default: 'LON1')

  • list_instances

    • List all instances on Civo

    • Inputs:

      • region (string, optional): Filter by region

      • page (number, optional): Pagination page (default: 1)

      • per_page (number, optional): Results per page (default: 20)

  • reboot_instance

    • Reboot an existing instance

    • Inputs:

      • id (string): Instance ID

      • region (string): Region identifier

  • shutdown_instance

    • Shutdown an existing instance

    • Inputs:

      • id (string): Instance ID

      • region (string): Region identifier

  • start_instance

    • Start a stopped instance

    • Inputs:

      • id (string): Instance ID

      • region (string): Region identifier

  • resize_instance

    • Resize an existing instance

    • Inputs:

      • id (string): Instance ID

      • size (string): New instance size

      • region (string): Region identifier

  • delete_instance

    • Delete an existing instance

    • Inputs:

      • id (string): Instance ID

      • region (string): Region identifier

Disk Images

  • list_disk_images

    • List available disk images on Civo

    • Inputs:

      • region (string, optional): Region identifier

  • get_disk_image

    • Get details of a specific disk image

    • Inputs:

      • id (string): Disk image ID

      • region (string, optional): Region identifier

Network Management

  • list_networks

    • List all available networks

    • Inputs: None

  • create_network

    • Create a new network

    • Inputs:

      • label (string): Network label

      • region (string, optional): Region identifier

  • rename_network

    • Rename an existing network

    • Inputs:

      • id (string): Network ID

      • label (string): New network label

      • region (string, optional): Region identifier

  • delete_network

    • Delete an existing network

    • Inputs:

      • id (string): Network ID

      • region (string): Region identifier

Kubernetes Management

  • list_kubernetes_clusters

    • List all Kubernetes clusters

    • Inputs:

      • region (string, optional): Filter by region

      • page (number, optional): Pagination page

      • per_page (number, optional): Results per page

  • create_kubernetes_cluster

    • Create a new Kubernetes cluster

    • Inputs:

      • name (string): Cluster name

      • region (string): Region identifier

      • network_id (string): Network ID for the cluster

      • nodes (number): Number of worker nodes

      • node_size (string): Size of each node

      • kubernetes_version (string): Kubernetes version

  • delete_kubernetes_cluster

    • Delete a Kubernetes cluster

    • Inputs:

      • id (string): Cluster ID

      • region (string): Region identifier

  • list_kubernetes_versions

    • List available Kubernetes versions

    • Inputs: None

Resource Information

  • list_sizes

    • List all available instance sizes

    • Inputs: None

  • list_regions

    • List all available regions

    • Inputs: None

Configuration

Environment Variables

  • CIVO_API_KEY: Your Civo API Key (required)

  • NODE_ENV: Set to production to disable debug logging (optional)

Getting an API Key

  1. Sign up for a Civo account if you don't have one.

  2. Generate your API key following the API keys documentation

Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository

  2. Create a feature branch: git checkout -b feature-name

  3. Make your changes and add tests

  4. Run the test suite: npm run test:ci

  5. Submit a pull request

Development Setup

git clone https://github.com/tao12345666333/civo-mcp.git
cd civo-mcp
npm install
npm run build

Running Tests

# Run all tests
npm test

# Run tests in watch mode
npm run test:watch

# Generate coverage report
npm run test:coverage

License

This MCP server is licensed under the MIT License. See the LICENSE file for details.

Available Tools

19 tools
create_instanceC

Create a new cloud instance on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
hostnameYesFully qualified domain name
sizeYesInstance size (e.g. g2.small)
template_idYesDisk image ID
countNoNumber of instances to create
regionNoRegion identifierLON1

TDQS

C2.8/5.0
Behavior1/5

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

With no annotations, the description must disclose behavioral traits but only states the action; no mention of startup behavior, idempotency, or failure modes.

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?

Single sentence is concise and front-loaded, but omits potentially valuable context; not verbose.

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

Completeness1/5

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

Lacks detail on return values, side effects, or lifecycle behavior; given no output schema and 5 parameters, the description is insufficient for complete understanding.

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

Parameters3/5

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

Schema coverage is 100%, so descriptions for each parameter exist; the tool description adds no extra semantic value beyond the schema.

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

Purpose5/5

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

The description clearly states the action (create) and resource (cloud instance) on a specific platform (Civo), differentiating it from siblings like create_kubernetes_cluster.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., create_kubernetes_cluster) or prerequisites, leaving the agent without context for selection.

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

create_kubernetes_clusterC

Create a new Kubernetes cluster on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesCluster name
regionYesRegion identifier
network_idYesNetwork ID
nodesYesNumber of nodes
node_sizeYesNode size
kubernetes_versionYesKubernetes version

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are present, so the description bears full responsibility for disclosing behavioral traits. It only states 'Create' (a write operation) but omits side effects like potential costs, asynchronous provisioning, idempotency, or authorization requirements. This is insufficient for an agent to assess impact.

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 a single, concise sentence with no wasted words. It is well front-loaded, immediately stating the action and resource. However, it could be slightly more structured by listing key aspects like required parameters or default behavior.

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

Completeness2/5

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

Given the tool has six required parameters and no output schema, the description lacks critical context about the cluster creation process, such as expected return values, provisioning time, or error conditions. The agent cannot infer necessary steps like waiting for cluster readiness.

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

Parameters3/5

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

Since the input schema provides descriptions for all six parameters, the description adds no additional semantic value beyond the schema. The baseline score of 3 is appropriate because the description does not further explain parameter formatting, constraints, or interdependencies.

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 'Create' and the resource 'Kubernetes cluster on Civo', making the primary action unambiguous. However, it does not distinguish this from sibling tools like 'create_instance' beyond the resource type, and could benefit from specifying that it creates a new managed Kubernetes cluster.

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 usage guidelines are provided. The description does not indicate when to use this tool over alternatives (e.g., create_instance for non-managed clusters), nor does it mention prerequisites or context such as requiring an existing network or region.

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

create_networkB

Create a new network on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
labelYesNetwork label
regionNoRegion identifier

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided; description does not disclose behavioral traits such as idempotency, async behavior, or side effects beyond the basic action.

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

Conciseness4/5

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

Single sentence is concise and front-loaded, but lacks additional detail that could be included without harming conciseness.

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

Completeness2/5

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

Despite simple tool with 2 params, lack of usage guidance, output schema, and annotations leaves gaps for an agent to understand full context.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline is 3. Description adds no additional meaning to parameters beyond what schema already provides.

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

Purpose5/5

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

Description clearly states 'Create a new network on Civo', providing verb and resource, and differentiates from sibling tools like delete_network, list_networks, etc.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives. Missing prerequisites or comparison with other creation tools like create_instance.

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

delete_instanceB

Delete a cloud instance on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesInstance ID
regionYesRegion identifier

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits like irreversibility or side effects. It only states 'delete', giving no warning about permanent data loss or whether the instance must be stopped first.

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 a single concise sentence. While very short, it is front-loaded and contains no wasted words, though it could be slightly expanded without losing conciseness.

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

Completeness2/5

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

Given the simple parameters and lack of output schema, the description still omits crucial context like permanence, required instance state, or any side effects. It is not complete enough for safe invocation.

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. The description adds no extra meaning beyond what the schema already provides (id and region).

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

Purpose5/5

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

The description clearly states the verb 'Delete', the resource 'cloud instance', and the platform 'Civo'. It distinguishes this tool from siblings like 'reboot_instance' or 'shutdown_instance' since deletion is a permanent action.

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 on when to use this tool vs alternatives (e.g., shutdown for temporary stop). There is no mention of prerequisites or caution about permanent data loss.

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

delete_kubernetes_clusterB

Delete a Kubernetes cluster on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesCluster ID
regionYesRegion identifier

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided, and description lacks details on irreversibility, cascading effects, or required authentication, leaving the AI agent underinformed about behavioral traits.

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

Conciseness5/5

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

Single sentence with no redundant words, efficiently conveying the core purpose.

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

Completeness2/5

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

Lacks details about return values, deletion effects, or confirmation requirements, making it incomplete for a deletion tool despite clear schema.

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

Parameters3/5

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

Schema already describes both parameters (id and region) with clear descriptions, so description adds no extra value. Baseline score of 3 applies due to full schema coverage.

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

Purpose5/5

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

Description clearly states 'Delete a Kubernetes cluster on Civo' with a specific verb and resource, distinguishing it from sibling tools like delete_instance and delete_network.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, no prerequisites or conditions like cluster state or permissions.

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

delete_networkB

Delete a network on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesNetwork ID
regionNoRegion identifier

TDQS

B3/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits. It only states the action is deletion, but does not mention consequences (e.g., whether the network must be empty, if deletion is irreversible, or required permissions).

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 very short (one phrase), but it barely adds value beyond the tool name. It is not structured or front-loaded with key details; the single sentence could be considered under-specified.

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

Completeness2/5

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

For a simple deletion tool, the description lacks essential context such as whether deletion can be undone, effects on associated resources, or error conditions. No output schema, so return value details are missing.

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. The description adds no additional meaning beyond what the schema already provides for id and region.

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

Purpose5/5

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

The description clearly states the verb 'Delete' and the resource 'network on Civo', distinguishing it from sibling delete tools (delete_instance, delete_kubernetes_cluster) which operate on different resources.

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?

Provides no guidance on when to use this tool versus alternatives (e.g., rename_network) or under what conditions deletion is appropriate. No prerequisites or cautionary notes.

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

get_disk_imageA

Get details of a specific disk image

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesDisk image ID
regionNoRegion identifier

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 responsibility for disclosing behavioral traits. It only states 'Get details' without indicating that the operation is read-only, whether authorization is needed, or any side effects. This leaves significant gaps in transparency.

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

Conciseness5/5

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

The description is a single concise sentence with no superfluous words. It is front-loaded and efficiently communicates the tool's purpose.

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 absence of an output schema, the description should hint at return values, but it only says 'details'. The tool has a sibling list_disk_images, but no guidance is provided on how parameters affect results. This completeness gap keeps it at an adequate but not exceptional level.

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

Parameters3/5

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

The input schema covers both parameters with descriptions (100% coverage), so the baseline is 3. The description does not add additional semantics or constraints beyond the schema, thus meeting but not exceeding expectations.

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

Purpose5/5

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

The description 'Get details of a specific disk image' clearly states the action (Get) and target (specific disk image), distinguishing it from sibling tools like list_disk_images which retrieves all disk images. This meets the criteria for specific verb+resource and differentiation.

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 you have a specific disk image ID, but it lacks explicit guidance on when to use this versus alternatives like list_disk_images. No context or exclusions are provided, relying on the agent to infer usage.

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

list_disk_imagesA

List available disk images on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
regionNoRegion identifier

TDQS

A3.5/5.0
Behavior3/5

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

The description implies a read-only operation but lacks details on authentication requirements, pagination, or ordering. With no annotations, it provides minimal behavioral context beyond listing.

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

Conciseness5/5

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

Single, front-loaded sentence with no extraneous information. Every word serves a purpose.

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

Completeness3/5

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

For a simple list tool with one optional parameter, the description is adequate but lacks information on return format, default region behavior, or typical usage scenarios.

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

Parameters3/5

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

Schema coverage is 100% for the single parameter 'region', but its description only repeats 'Region identifier'. The tool description adds no extra semantics; baseline score of 3 applies.

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

Purpose5/5

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

The description clearly states the action (list) and resource (disk images) with scope (on Civo). It effectively distinguishes from 'get_disk_image' and other list tools.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. No mention of prerequisites, filtering, or context such as listing images for a specific purpose.

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

list_instancesB

List all instances on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
regionNoFilter by region
pageNoPagination page
per_pageNoResults per page

TDQS

B3/5.0
Behavior2/5

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

With no annotations, the description should convey behavioral traits. It only states 'list all instances' without disclosing whether it is read-only, resource-intensive, or requires specific permissions. The agent lacks essential behavioral cues.

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 extremely concise (four words) but underspecified. It fits the minimalism but sacrifices necessary detail, making it borderline adequate.

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

Completeness2/5

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

Without an output schema, the description should explain what is returned. It does not mention response format, pagination behavior, or the effect of filtering. The presence of optional pagination parameters is not explained, leaving gaps.

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

Parameters3/5

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

All three parameters have descriptions in the input schema (100% coverage), so the schema already documents their meaning. The description adds no additional context beyond what the schema provides, meeting the baseline of 3.

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

Purpose5/5

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

The description 'List all instances on Civo' clearly states the verb 'List', the resource 'instances', and the platform. It effectively distinguishes this tool from sibling tools like create_instance, delete_instance, etc., which have different actions.

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 on when to use this tool versus alternatives like list_disk_images or list_kubernetes_clusters. The description does not mention filtering, pagination, or context for choosing this tool.

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

list_kubernetes_clustersA

List all Kubernetes clusters on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
regionNoRegion identifier

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are present, so the description must fully convey behavioral traits. It only states a read action ('list') without confirming safety, idempotency, or potential side effects. Additional context like rate limits or pagination is absent.

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

Conciseness5/5

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

The description is a single sentence of seven words, efficiently conveying the core purpose without extraneous information.

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 simple tool with one optional parameter and no output schema, the description adequately states the primary action but fails to clarify the effect of the region parameter or the output structure, leaving minor gaps.

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

Parameters3/5

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

Schema coverage for parameters is 100% with 'region' described as 'Region identifier'. The description adds no additional meaning, so baseline score applies per guidelines.

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

Purpose5/5

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

Description explicitly states 'List all Kubernetes clusters on Civo' using a specific verb ('list') and resource ('Kubernetes clusters'), clearly distinguishing it from sibling tools like create_kubernetes_cluster and delete_kubernetes_cluster.

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

Usage Guidelines3/5

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

The description implies usage for viewing existing clusters, but offers no explicit guidance on when to use this tool versus alternatives (e.g., when inspecting vs. creating clusters). No exclusions or when-not-to-use advice are provided.

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

list_kubernetes_versionsA

List available Kubernetes versions on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.1/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 full burden. It states the operation is to list versions, which implies a read-only action, but it does not explicitly confirm non-destructiveness, rate limits, or behavior under error conditions. Minimal but adequate.

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

Conciseness5/5

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

The description is a single, concise sentence with no wasted words. It is front-loaded with the key action and resource.

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

Completeness5/5

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

Given the tool has no parameters and no output schema, the description is complete enough. It clearly states what the tool does, which is sufficient for an agent to select and invoke it correctly.

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

Parameters4/5

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

The input schema has no parameters, so the description does not need to add parameter information. Baseline of 4 is appropriate as no param info is required.

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

Purpose5/5

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

The description clearly states the verb 'List', the resource 'available Kubernetes versions', and the platform 'on Civo'. It unambiguously distinguishes from sibling tools like 'list_kubernetes_clusters'.

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 no explicit guidance on when to use this tool versus alternatives. It is implied that it should be used before creating a cluster, but no when-not or alternative tools are mentioned.

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

list_networksA

List available networks on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/5.0
Behavior2/5

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

No annotations exist, so the description bears full burden. It only states the action, omitting auth requirements, rate limits, or data freshness. Minimal disclosure.

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

Conciseness5/5

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

Single sentence, front-loaded, no wasted words. Perfectly concise for the tool's simplicity.

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 zero-parameter list tool without output schema, the description is adequate but minimal. It could benefit from noting that it returns available networks or any default behavior.

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?

There are zero parameters, and schema coverage is 100%. The description adds no parameter info but is not required. Baseline score of 4 applies.

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

Purpose5/5

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

The description clearly states the action (list), resource (networks), and platform (Civo). It is precise and distinguishes from sibling tools that list different resources.

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 on when to use this tool versus alternatives. For a simple list tool, implicit differentiation is weak.

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

list_regionsB

List available regions on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3.2/5.0
Behavior2/5

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

No annotations provided, and description only states 'List available regions' without disclosing read-only nature, potential limitations, or return format.

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

Conciseness5/5

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

Single sentence with no wasted words. Front-loaded and efficient.

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?

Minimal but adequate for a parameterless list tool. Lacks details about output or behavior, but no output schema exists to supplement.

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?

No parameters exist, so schema coverage is 100%. Description doesn't need to add param info; baseline of 4 applies.

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?

Describes verb 'List' and resource 'available regions on Civo'. Clearly distinguishes from sibling list tools that target different resources like instances or disk images.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. Lacks context or exclusions.

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

list_sizesA

List available instance sizes on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.9/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 burden. It does not mention any behavioral traits like pagination, auth requirements, or sorting. For a simple list with no parameters, this is acceptable but could be improved.

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

Conciseness5/5

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

A single, concise sentence with no wasted words. It is front-loaded and efficient.

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 output schema and no parameters, the description is adequate but could be more informative by detailing the return value (e.g., size names or specs).

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?

There are no parameters (schema coverage 100%), so the baseline is 4. The description adds no parameter-specific meaning, but none is needed.

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

Purpose5/5

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

The description clearly states the tool lists available instance sizes on Civo, with a specific verb and resource. It distinguishes from sibling tools like 'list_instances' and 'create_instance'.

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?

No explicit guidance on when to use or when not to use. However, the tool's simplicity and lack of alternatives for listing sizes make it self-explanatory, so a middle score is appropriate.

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

reboot_instanceB

Reboot a cloud instance on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesInstance ID
regionYesRegion identifier

TDQS

B3.3/5.0
Behavior2/5

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

No annotations provided; description does not disclose side effects, permissions, or behavioral nuances beyond the basic reboot action.

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

Conciseness5/5

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

Single sentence, no wasted words, appropriately 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?

Minimal but sufficient for a simple reboot tool, though lacks usage guidance and behavioral details.

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

Parameters3/5

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

Schema covers 100% of parameters with descriptions, so baseline is 3; description adds no extra semantic meaning.

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

Purpose5/5

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

The description clearly states the action (reboot) and resource (cloud instance on Civo), distinguishing it from sibling tools like shutdown_instance or start_instance.

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

Usage Guidelines2/5

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

No guidance on when to use this tool over alternatives (e.g., shutdown + start) or prerequisites.

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

rename_networkB

Rename a network on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesNetwork ID
labelYesNew network label
regionNoRegion identifier

TDQS

B3.1/5.0
Behavior2/5

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

With no annotations, the description must disclose behavioral traits like mutation, permissions, or side effects. It only says 'Rename a network', omitting any behavioral details.

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 a single sentence, front-loaded, and concise with no wasted words. It is appropriately sized.

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

Completeness2/5

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

Given the simple rename operation and no output schema, the description is too minimal. It does not mention constraints like network existence or label uniqueness.

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

Parameters3/5

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

Schema coverage is 100% with parameter descriptions, but the tool description adds no extra meaning beyond what the schema provides. Baseline score of 3 applies.

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

Purpose5/5

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

The description clearly states the verb 'rename' and the resource 'network' on platform 'Civo', distinguishing it from siblings like create_network and delete_network.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, such as prerequisites or when not to use it. The description lacks usage context.

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

resize_instanceB

Resize a cloud instance on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesInstance ID
sizeYesNew instance size
regionYesRegion identifier

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description must carry the full burden. It does not disclose side effects like downtime, restarting, or whether changes are reversible. Simply stating 'resize' is insufficient.

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

Conciseness5/5

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

Extremely concise with a single clear sentence. No unnecessary words.

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

Completeness2/5

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

Given no output schema and no annotations, the description should provide more context. It omits prerequisites (e.g., instance must exist, should be stopped), return values, and any constraints on the operation.

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema parameter descriptions. For instance, 'size' is described as 'New instance size' but no format or valid values are hinted.

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

Purpose5/5

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

The description clearly states the action (resize) and resource (cloud instance on Civo). It is specific and distinguishes from sibling tools like start, stop, or delete.

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives. For example, does the instance need to be stopped? No mention of prerequisites or when not to use.

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

shutdown_instanceB

Shutdown a cloud instance on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesInstance ID
regionYesRegion identifier

TDQS

B3.1/5.0
Behavior2/5

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

No annotations exist, and the description does not disclose behavioral traits such as whether the shutdown is graceful, requires confirmation, or has side effects (e.g., data loss). The term 'shutdown' is ambiguous without further context.

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

Conciseness4/5

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

The description is a single concise sentence that front-loads the main purpose. However, it could benefit from a brief elaboration on context without becoming verbose.

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

Completeness2/5

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

For a tool with 2 parameters, no annotations, and no output schema, the description is too minimal. It does not explain return values, side effects, or prerequisites, leaving the agent underinformed.

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

Parameters3/5

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

Schema description coverage is 100%, so the input schema already describes both parameters (id and region) sufficiently. The description does not add any additional meaning beyond what is in the schema.

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

Purpose5/5

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

The description 'Shutdown a cloud instance on Civo' clearly states the action (shutdown) and resource (cloud instance), and distinguishes from sibling tools like start_instance, reboot_instance, and delete_instance.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., delete_instance). No prerequisites (e.g., instance must be running) or exclusions are mentioned.

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

start_instanceB

Start a cloud instance on Civo

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesInstance ID
regionYesRegion identifier

TDQS

B3/5.0
Behavior2/5

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

No annotations provided, and description lacks behavioral details such as state change, idempotency, prerequisites, or potential errors. Burdens the agent to infer 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?

Single sentence is concise but too brief; lacks essential details while being acceptably front-loaded. Could include more context without sacrificing conciseness.

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

Completeness2/5

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

No output schema, and description omits expected return value, side effects, or usage nuances. Incomplete for an action tool with no additional structured fields.

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

Parameters3/5

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

Schema has 100% description coverage for both parameters, so description adds no extra meaning beyond schema. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the action ('Start') and the resource ('cloud instance on Civo'), distinguishing it from siblings like shutdown_instance (stop) and create_instance (provision).

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

Usage Guidelines2/5

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

No guidance on when to use this tool vs alternatives (e.g., requires instance to exist, opposite of shutdown_instance). Absence of usage context limits correct invocation.

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
Disambiguation5/5

Each tool targets a distinct resource-action pair: instances, Kubernetes clusters, networks, disk images, and metadata. No overlaps exist, as operations like create, list, delete, and specific actions (reboot, resize) are clearly separated.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern with snake_case (e.g., create_instance, list_networks). No deviations or mixed conventions, making the pattern predictable.

Tool Count4/5

19 tools cover multiple resource types (instances, clusters, networks, disk images, metadata) without being excessive. While slightly above the typical 3-15 range, the count is justified given the scope.

Completeness3/5

Basic CRUD and lifecycle operations exist for instances, clusters, and networks, but notable gaps include missing get_instance, get_kubernetes_cluster, update_instance (except resize), and no support for volumes, firewalls, or advanced cluster management.

Maintenance

ActivityInactive
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

  • A
    license
    C
    quality
    D
    maintenance
    A Model Context Protocol server for the Hetzner Cloud API that enables natural language management of cloud infrastructure. Users can list, create, and modify servers, networks, volumes, and load balancers through MCP-compatible clients.
    67
    17
    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/tao12345666333/civo-mcp'

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