acuvity/mcp-server-alibaba-cloud-ops

Verified Publisher

By Acuvity Inc.

Updated about 1 year ago

Alibaba Cloud integration, supporting ECS, Cloud Monitor, OOS and widely used cloud products.

Helm
Image
Integration & delivery
Machine learning & AI
0

4.3K

acuvity/mcp-server-alibaba-cloud-ops repository overview

Acuvity logo

Join Acuvity community Follow us on LinkedIn Follow us on Bluesky

What is mcp-server-alibaba-cloud-ops?

Rating Helm Docker PyPI Scout Install in VS Code Docker

Description: Alibaba Cloud integration, supporting ECS, Cloud Monitor, OOS and widely used cloud products.

Packaged by Acuvity and published to our curated MCP server registry from alibaba-cloud-ops-mcp-server original sources.

Quick links:

Why We Built This

At Acuvity, security is central to our mission—especially for critical systems like MCP servers and integration in agentic systems. To address this need, we've created a secure and robust Docker image designed to ensure alibaba-cloud-ops-mcp-server run reliably and safely.

🔐 Key Security Features

📦 Isolated Immutable Sandbox
  • Isolated Execution: All tools run within secure, containerized sandboxes to enforce process isolation and prevent lateral movement.
  • Non-root by Default: Enforces least-privilege principles, minimizing the impact of potential security breaches.
  • Read-only Filesystem: Ensures runtime immutability, preventing unauthorized modification.
  • Version Pinning: Guarantees consistency and reproducibility across deployments by locking tool and dependency versions.
  • CVE Scanning: Continuously scans images for known vulnerabilities using Docker Scout to support proactive mitigation.
  • SBOM & Provenance: Delivers full supply chain transparency by embedding metadata and traceable build information."
🛡️ Runtime Security and Guardrails

Minibridge Integration: Minibridge establishes secure Agent-to-MCP connectivity, supports Rego/HTTP-based policy enforcement 🕵️, and simplifies orchestration.

The ARC container includes a built-in Rego policy that enables a set of runtime "guardrails"" to help enforce security, privacy, and correct usage of your services. Below is an overview of each guardrail provided.

🔒 Resource Integrity

Mitigates MCP Rug Pull Attacks

  • Goal: Protect users from malicious tool description changes after initial approval, preventing post-installation manipulation or deception.
  • Mechanism: Locks tool descriptions upon client approval and verifies their integrity before execution. Any modification to the description triggers a security violation, blocking unauthorized changes from server-side updates.
🛡️ Guardrails
Covert Instruction Detection

Monitors incoming requests for hidden or obfuscated directives that could alter policy behavior.

  • Goal: Stop attackers from slipping unnoticed commands or payloads into otherwise harmless data.
  • Mechanism: Applies a library of regex patterns and binary‐encoding checks to the full request body. If any pattern matches a known covert channel (e.g., steganographic markers, hidden HTML tags, escape-sequence tricks), the request is rejected.
Sensitive Pattern Detection

Block user-defined sensitive data patterns (credential paths, filesystem references).

  • Goal: Block accidental or malicious inclusion of sensitive information that violates data-handling rules.
  • Mechanism: Runs a curated set of regexes against all payloads and tool descriptions—matching patterns such as .env files, RSA key paths, directory traversal sequences.
Shadowing Pattern Detection

Detects and blocks "shadowing" attacks, where a malicious MCP server sneaks hidden directives into its own tool descriptions to hijack or override the behavior of other, trusted tools.

  • Goal: Stop a rogue server from poisoning the agent’s logic by embedding instructions that alter how a different server’s tools operate (e.g., forcing all emails to go to an attacker’s address even when the user calls a separate send_email tool).
  • Mechanism: During policy load, each tool description is scanned for cross‐tool override patterns—such as <IMPORTANT> sections referencing other tool names, hidden side‐effects, or directives that apply to a different server’s API. Any description that attempts to shadow or extend instructions for a tool outside its own namespace triggers a policy violation and is rejected.
Schema Misuse Prevention

Enforces strict adherence to MCP input schemas.

  • Goal: Prevent malformed or unexpected fields from bypassing validations, causing runtime errors, or enabling injections.
  • Mechanism: Compares each incoming JSON object against the declared schema (required properties, allowed keys, types). Any extra, missing, or mistyped field triggers an immediate policy violation.
Cross-Origin Tool Access

Controls whether tools may invoke tools or services from external origins.

  • Goal: Prevent untrusted or out-of-scope services from being called.
  • Mechanism: Examines tool invocation requests and outgoing calls, verifying each target against an allowlist of approved domains or service names. Calls to any non-approved origin are blocked.
Secrets Redaction

Automatically masks sensitive values so they never appear in logs or responses.

  • Goal: Ensure that API keys, tokens, passwords, and other credentials cannot leak in plaintext.
  • Mechanism: Scans every text output for known secret formats (e.g., AWS keys, GitHub PATs, JWTs). Matches are replaced with [REDACTED] before the response is sent or recorded.

These controls ensure robust runtime integrity, prevent unauthorized behavior, and provide a foundation for secure-by-design system operations.

Enable guardrails

To activate guardrails in your Docker containers, define the GUARDRAILS environment variable with the protections you need.

GuardrailSummary
covert-instruction-detectionDetects hidden or obfuscated directives in requests.
sensitive-pattern-detectionFlags patterns suggesting sensitive data or filesystem exposure.
shadowing-pattern-detectionIdentifies tool descriptions that override or influence others.
schema-misuse-preventionEnforces strict schema compliance on input data.
cross-origin-tool-accessControls calls to external services or APIs.
secrets-redactionPrevents exposure of credentials or sensitive values.

Example: add -e GUARDRAILS="secrets-redaction sensitive-pattern-detection" to enable those guardrails.

🔒 Basic Authentication via Shared Secret

Provides a lightweight auth layer using a single shared token.

  • Mechanism: Expects clients to send an Authorization header with the predefined secret.
  • Use Case: Quickly lock down your endpoint in development or simple internal deployments—no complex OAuth/OIDC setup required.

To turn on Basic Authentication, define BASIC_AUTH_SECRET environment variable with a shared secret.

Example: add -e BASIC_AUTH_SECRET="supersecret" to enable the basic authentication.

While basic auth will protect against unauthorized access, you should use it only in controlled environment, rotate credentials frequently and always use TLS.

Note

By default, all guardrails are turned off. You can enable or disable each one individually, ensuring that only the protections your environment needs are active.

Quick reference

Maintained by:

Where to get help:

Where to file issues:

Supported architectures:

  • amd64
  • arm64

Base image:

  • ghcr.io/astral-sh/uv:python3.12-alpine

Resources:

Latest tags:

Verify signature with cosign:

  • cosign verify --certificate-oidc-issuer "https://token.actions.githubusercontent.com" --certificate-identity "https://github.com/acuvity/mcp-servers-registry/.github/workflows/release.yaml@refs/heads/main" docker.io/acuvity/mcp-server-alibaba-cloud-ops:latest
  • cosign verify --certificate-oidc-issuer "https://token.actions.githubusercontent.com" --certificate-identity "https://github.com/acuvity/mcp-servers-registry/.github/workflows/release.yaml@refs/heads/main" docker.io/acuvity/mcp-server-alibaba-cloud-ops:0.8.7
  • cosign verify --certificate-oidc-issuer "https://token.actions.githubusercontent.com" --certificate-identity "https://github.com/acuvity/mcp-servers-registry/.github/workflows/release.yaml@refs/heads/main" docker.io/acuvity/mcp-server-alibaba-cloud-ops:1.0.0-0.8.7

📦 How to Install

Tip

Given mcp-server-alibaba-cloud-ops scope of operation it can be hosted anywhere.

Environment variables and secrets:

  • ALIBABA_CLOUD_ACCESS_KEY_ID required to be set
  • ALIBABA_CLOUD_ACCESS_KEY_SECRET required to be set

For more information and extra configuration you can consult the package documentation.

🧰 Clients Integrations

Below are the steps for configuring most clients that use MCP to elevate their Copilot experience.

Note

These integrations function natively across all Minibridge modes. To keep things brief, only the docker local-run setup is covered here.
Visual Studio Code

To get started immediately, you can use the "one-click" link below:

Install in VS Code Docker

Global scope

Press ctrl + shift + p and type Preferences: Open User Settings JSON to add the following section:

{
  "mcp": {
    "servers": {
      "acuvity-mcp-server-alibaba-cloud-ops": {
        "env": {
          "ALIBABA_CLOUD_ACCESS_KEY_ID": "TO_BE_SET",
          "ALIBABA_CLOUD_ACCESS_KEY_SECRET": "TO_BE_SET"
        },
        "command": "docker",
        "args": [
          "run",
          "-i",
          "--rm",
          "--read-only",
          "-e",
          "ALIBABA_CLOUD_ACCESS_KEY_ID",
          "-e",
          "ALIBABA_CLOUD_ACCESS_KEY_SECRET",
          "docker.io/acuvity/mcp-server-alibaba-cloud-ops:0.8.7"
        ]
      }
    }
  }
}

Workspace scope

In your workspace create a file called .vscode/mcp.json and add the following section:

{
  "servers": {
    "acuvity-mcp-server-alibaba-cloud-ops": {
      "env": {
        "ALIBABA_CLOUD_ACCESS_KEY_ID": "TO_BE_SET",
        "ALIBABA_CLOUD_ACCESS_KEY_SECRET": "TO_BE_SET"
      },
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--read-only",
        "-e",
        "ALIBABA_CLOUD_ACCESS_KEY_ID",
        "-e",
        "ALIBABA_CLOUD_ACCESS_KEY_SECRET",
        "docker.io/acuvity/mcp-server-alibaba-cloud-ops:0.8.7"
      ]
    }
  }
}

To pass secrets you should use the promptString input type described in the Visual Studio Code documentation.

Windsurf IDE

In ~/.codeium/windsurf/mcp_config.json add the following section:

{
  "mcpServers": {
    "acuvity-mcp-server-alibaba-cloud-ops": {
      "env": {
        "ALIBABA_CLOUD_ACCESS_KEY_ID": "TO_BE_SET",
        "ALIBABA_CLOUD_ACCESS_KEY_SECRET": "TO_BE_SET"
      },
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--read-only",
        "-e",
        "ALIBABA_CLOUD_ACCESS_KEY_ID",
        "-e",
        "ALIBABA_CLOUD_ACCESS_KEY_SECRET",
        "docker.io/acuvity/mcp-server-alibaba-cloud-ops:0.8.7"
      ]
    }
  }
}

See Windsurf documentation for more info.

Cursor IDE

Add the following JSON block to your mcp configuration file:

  • ~/.cursor/mcp.json for global scope
  • .cursor/mcp.json for project scope
{
  "mcpServers": {
    "acuvity-mcp-server-alibaba-cloud-ops": {
      "env": {
        "ALIBABA_CLOUD_ACCESS_KEY_ID": "TO_BE_SET",
        "ALIBABA_CLOUD_ACCESS_KEY_SECRET": "TO_BE_SET"
      },
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--read-only",
        "-e",
        "ALIBABA_CLOUD_ACCESS_KEY_ID",
        "-e",
        "ALIBABA_CLOUD_ACCESS_KEY_SECRET",
        "docker.io/acuvity/mcp-server-alibaba-cloud-ops:0.8.7"
      ]
    }
  }
}

See cursor documentation for more information.

Claude Desktop

In the claude_desktop_config.json configuration file add the following section:

{
  "mcpServers": {
    "acuvity-mcp-server-alibaba-cloud-ops": {
      "env": {
        "ALIBABA_CLOUD_ACCESS_KEY_ID": "TO_BE_SET",
        "ALIBABA_CLOUD_ACCESS_KEY_SECRET": "TO_BE_SET"
      },
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "--read-only",
        "-e",
        "ALIBABA_CLOUD_ACCESS_KEY_ID",
        "-e",
        "ALIBABA_CLOUD_ACCESS_KEY_SECRET",
        "docker.io/acuvity/mcp-server-alibaba-cloud-ops:0.8.7"
      ]
    }
  }
}

See Anthropic documentation for more information.

OpenAI python SDK

Running locally

async with MCPServerStdio(
    params={
        "env": {"ALIBABA_CLOUD_ACCESS_KEY_ID":"TO_BE_SET","ALIBABA_CLOUD_ACCESS_KEY_SECRET":"TO_BE_SET"},
        "command": "docker",
        "args": ["run","-i","--rm","--read-only","-e","ALIBABA_CLOUD_ACCESS_KEY_ID","-e","ALIBABA_CLOUD_ACCESS_KEY_SECRET","docker.io/acuvity/mcp-server-alibaba-cloud-ops:0.8.7"]
    }
) as server:
    tools = await server.list_tools()

Running remotely

async with MCPServerSse(
    params={
        "url": "http://<ip>:<port>/sse",
    }
) as server:
    tools = await server.list_tools()

See OpenAI Agents SDK docs for more info.

🐳 Run it with Docker

Locally with STDIO

In your client configuration set:

  • command: docker
  • arguments: run -i --rm --read-only -e ALIBABA_CLOUD_ACCESS_KEY_ID -e ALIBABA_CLOUD_ACCESS_KEY_SECRET docker.io/acuvity/mcp-server-alibaba-cloud-ops:0.8.7
Locally with HTTP/sse

Simply run as:

docker run -it -p 8000:8000 --rm --read-only -e ALIBABA_CLOUD_ACCESS_KEY_ID -e ALIBABA_CLOUD_ACCESS_KEY_SECRET docker.io/acuvity/mcp-server-alibaba-cloud-ops:0.8.7

Then on your application/client, you can configure to use it like:

{
  "mcpServers": {
    "acuvity-mcp-server-alibaba-cloud-ops": {
      "url": "http://localhost:8000/sse"
    }
  }
}

You might have to use different ports for different tools.

Remotely with Websocket tunneling and MTLS

This section assume you are familiar with TLS and certificates and will require:

  • a server certificate with proper DNS/IP field matching your tool deployment.
  • a client-ca used to sign client certificates
  1. Start the server in backend mode
  • add an environment variable like -e MINIBRIDGE_MODE=backend
  • add the TLS certificates (recommended) through a volume let's say /certs ex (-v $PWD/certs:/certs)
  • instruct minibridge to use those certs with
    • -e MINIBRIDGE_TLS_SERVER_CERT=/certs/server-cert.pem
    • -e MINIBRIDGE_TLS_SERVER_KEY=/certs/server-key.pem
    • -e MINIBRIDGE_TLS_SERVER_KEY_PASS=optional
    • -e MINIBRIDGE_TLS_SERVER_CLIENT_CA=/certs/client-ca.pem
  1. Start minibridge locally in frontend mode:

In your client configuration, Minibridge works like any other STDIO command.

Example for Claude Desktop:

{
  "mcpServers": {
    "acuvity-mcp-server-alibaba-cloud-ops": {
      "command": "minibridge",
      "args": ["frontend", "--backend", "wss://<remote-url>:8000/ws", "--tls-client-backend-ca", "/path/to/ca/that/signed/the/server-cert.pem/ca.pem", "--tls-client-cert", "/path/to/client-cert.pem", "--tls-client-key", "/path/to/client-key.pem"]
    }
  }
}

That's it.

Minibridge offers a host of additional features. For step-by-step guidance, please visit the wiki. And if anything’s unclear, don’t hesitate to reach out!

☁️ Deploy On Kubernetes

Deploy using Helm Charts
Chart settings requirements

This chart requires some mandatory information to be installed.

Mandatory Secrets:

  • ALIBABA_CLOUD_ACCESS_KEY_ID secret to be set as secrets.ALIBABA_CLOUD_ACCESS_KEY_ID either by .value or from existing with .valueFrom
  • ALIBABA_CLOUD_ACCESS_KEY_SECRET secret to be set as secrets.ALIBABA_CLOUD_ACCESS_KEY_SECRET either by .value or from existing with .valueFrom
How to install

You can inspect the chart README:

helm show readme oci://docker.io/acuvity/mcp-server-alibaba-cloud-ops --version 1.0.0

You can inspect the values that you can configure:

helm show values oci://docker.io/acuvity/mcp-server-alibaba-cloud-ops --version 1.0.0

Install with helm

helm install mcp-server-alibaba-cloud-ops oci://docker.io/acuvity/mcp-server-alibaba-cloud-ops --version 1.0.0

From there your MCP server mcp-server-alibaba-cloud-ops will be reachable by default through http/sse from inside the cluster using the Kubernetes Service mcp-server-alibaba-cloud-ops on port 8000 by default. You can change that by looking at the service section of the values.yaml file.

How to Monitor

The deployment will create a Kubernetes service with a healthPort, that is used for liveness probes and readiness probes. This health port can also be used by the monitoring stack of your choice and exposes metrics under the /metrics path.

See full charts Readme for more details about settings and runtime security including guardrails activation.

🧠 Server features

For detailed list of all features, tools, arguments and SBOM hashes provided by this server please consult the readme

🧰 Tools (34)

💬 Questions? Open an issue or contact us [email protected] . 📦 Contributions welcome!

Tag summary

Content type

Image

Digest

sha256:05deb6491

Size

268 Bytes

Last updated

about 1 year ago

docker pull acuvity/mcp-server-alibaba-cloud-ops:sha256-f6fdbe211dc4051a3702914134524bcfd4db82a736271deb6114bc87826f1a38.sig