Alibaba Cloud Yaochi DB MCP Server
Description
# Alibaba Cloud Yaochi DB MCP Server Yaochi Database AI Native MCP Server — One MCP Server to manage all Alibaba Cloud databases. [](LICENSE)…
About
# Alibaba Cloud Yaochi DB MCP Server Yaochi Database AI Native MCP Server — One MCP Server to manage all Alibaba Cloud databases. [](LICENSE) [](https://python.org) [中文版…
Details
- Author
- aliyun
- GitHub stars
- 1
- Downloads
- 415
- Categories
- Database, Cloud Service, Infrastructure, AI
Jump to
- Supports multiple database engines: RDS MySQL, PolarDB MySQL, MongoDB, Tair (Redis).
- Ephemeral account mode – no persistent database credentials.
- Built‑in Yaochi Database Agent for AI‑driven diagnosis and best practices.
- SQL safety checks that block DROP/TRUNCATE and dangerous operations.
- Restrictive whitelist that automatically provisions only the current IP.
- Fine‑grained write control via environment variables (DML/DDL permissions).
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Alibaba Cloud Yaochi DB MCP ServerCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Clone the repository, create a Python 3.10+ virtual environment, install with pip install ., and run yaochi-db-mcp-server (it enters stdio waiting mode). Then configure your AI client’s MCP settings with the command path and required environment variables (ALIBABA_CLOUD_ACCESS_KEY_ID, ALIBABA_CLOUD_ACCESS_KEY_SECRET, ALIBABA_CLOUD_REGION_ID).
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"alibaba cloud yaochi db mcp server": {
"yaochi-db": {
"command": "<project-path>/alibabacloud-yaochi-db-mcp-server/.venv/bin/yaochi-db-mcp-server",
"env": {
"ALIBABA_CLOUD_ACCESS_KEY_ID": "your-ak",
"ALIBABA_CLOUD_ACCESS_KEY_SECRET": "your-sk",
"ALIBABA_CLOUD_REGION_ID": "cn-hangzhou",
"YAOCHI_ENABLE_WRITE_SQL": "true",
"YAOCHI_ENABLE_DDL_SQL": "true"
}
}
}
}
}
McpServers
{
"yaochi-db": {
"command": "<project-path>/alibabacloud-yaochi-db-mcp-server/.venv/bin/yaochi-db-mcp-server",
"env": {
"ALIBABA_CLOUD_ACCESS_KEY_ID": "your-ak",
"ALIBABA_CLOUD_ACCESS_KEY_SECRET": "your-sk",
"ALIBABA_CLOUD_REGION_ID": "cn-hangzhou",
"YAOCHI_ENABLE_WRITE_SQL": "true",
"YAOCHI_ENABLE_DDL_SQL": "true"
}
}
}
Alibaba Cloud Yaochi DB MCP Server
Yaochi Database AI Native MCP Server — One MCP Server to manage all Alibaba Cloud databases.
What is Yaochi DB MCP Server?
A database tool service built on Model Context Protocol (MCP), enabling AI coding assistants (Cursor, Claude Desktop, Qoder, etc.) to directly operate Alibaba Cloud databases.
Core Scenario: After AI writes code, it automatically creates a database → creates tables → executes SQL to verify → calls Yaochi Database Agent for performance diagnosis — all without leaving the IDE.
Supported Database Engines
| Engine | Operations |
|--------|------------|
| RDS MySQL | Create instance, execute SQL, ephemeral account mode |
| PolarDB MySQL | Create cluster, execute SQL, ephemeral account mode |
| MongoDB | Create replica set, execute MongoDB commands |
| Tair (Redis) | Create instance, execute Redis commands |
Yaochi Database Agent
Built-in AI database advisor powered by Alibaba Cloud’s official documentation and expert knowledge:
- Knowledge Q&A — Instantly answers database usage questions, reducing support tickets
- Intelligent Diagnosis — Auto-executes performance diagnostics via OpenAPI, pinpointing issues
- Best Practices — Provides architecture recommendations and optimization suggestions tailored to your workload
Supports multi-turn conversations and covers all Alibaba Cloud database engines (RDS, PolarDB, MongoDB, Tair, Lindorm, etc.).
Available Tools
| Tool | Description |
|------|-------------|
| ask_yaochi_agent | Yaochi Database Agent — AI database advisor (diagnosis, best practices, architecture) |
| create_instance | Create a database instance |
| list_instances | List existing instances |
| execute_instance_sql | Execute SQL via instance ID (ephemeral account, no password needed) |
| execute_mysql | Direct connect to MySQL/PolarDB and execute SQL |
| execute_mongo | Direct connect to MongoDB and execute commands |
| execute_redis | Direct connect to Tair/Redis and execute commands |
| search_database | Search databases in DMS |
| execute_sql | Execute SQL via DMS |
| register_to_dms | Register instance to DMS |
Quick Start
Installation
git clone http://gitlab.alibaba-inc.com/cloudmon/alibabacloud-yaochi-db-mcp-server.git
cd alibabacloud-yaochi-db-mcp-server
python3 -m venv .venv
source .venv/bin/activate
pip install .
Verify
yaochi-db-mcp-server
It enters stdio waiting mode (no output) on success. Press Ctrl+C to exit.
Configure AI Client
Add to your AI client's MCP configuration:
{
"mcpServers": {
"yaochi-db": {
"command": "<project-path>/alibabacloud-yaochi-db-mcp-server/.venv/bin/yaochi-db-mcp-server",
"env": {
"ALIBABA_CLOUD_ACCESS_KEY_ID": "your-ak",
"ALIBABA_CLOUD_ACCESS_KEY_SECRET": "your-sk",
"ALIBABA_CLOUD_REGION_ID": "cn-hangzhou",
"YAOCHI_ENABLE_WRITE_SQL": "true",
"YAOCHI_ENABLE_DDL_SQL": "true"
}
}
}
}
Environment Variables
| Variable | Default | Description |
|----------|---------|-------------|
| ALIBABA_CLOUD_ACCESS_KEY_ID | — | Alibaba Cloud AccessKey ID (required) |
| ALIBABA_CLOUD_ACCESS_KEY_SECRET | — | Alibaba Cloud AccessKey Secret (required) |
| ALIBABA_CLOUD_REGION_ID | cn-hangzhou | Default region |
| YAOCHI_ENABLE_WRITE_SQL | true | Allow INSERT/UPDATE/DELETE |
| YAOCHI_ENABLE_DDL_SQL | false | Allow CREATE/ALTER DDL |
| YAOCHI_PUBLIC_IP | Auto-detect | Manually specify public IP |
Security Features
- Ephemeral Accounts: Automatically creates/destroys temporary database accounts per SQL execution — no persistent credentials
- SQL Safety Checks: Blocks DROP/TRUNCATE and other dangerous operations; disallows comments and multi-statements
- Restrictive Whitelist: Auto-provisions public access with current IP only (/32), without affecting existing rules
- Write Control: Fine-grained DML/DDL permissions via environment variables
Usage Example
User: Create a PolarDB MySQL cluster, build an orders table, and set up a Tair cache
AI automatically:
1. create_instance(engine="polardb-mysql")
→ Returns instance_id="pc-bp1xxx"
2. execute_instance_sql(instance_id="pc-bp1xxx", engine="polardb-mysql", database="testdb",
sql="CREATE TABLE orders (id BIGINT PRIMARY KEY, amount DECIMAL(10,2))", force=true)
→ Auto-provisions public access + whitelist + creates DB + creates table
3. create_instance(engine="tair")
→ Returns instance_id="r-bp1xxx"
4. execute_redis(host="r-bp1xxx.redis.rds.aliyuncs.com", port=6379, password="xxx",
command="SET order:1001 '{\"amount\":99.9}'")
→ OK
5. ask_yaochi_agent(query="PolarDB cluster pc-bp1xxx performance diagnosis")
→ Returns optimization suggestions from Yaochi Database Agent
License
Contributing
Issues and Pull Requests are welcome.
Links
- MCP Protocol Documentation
- Alibaba Cloud RAM Console
- DMS Console
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



