Adb MySQL MCP Server
OfficialMySQL MCP サーバー向け AnalyticDB
AnalyticDB for MySQL MCPサーバーは、AIエージェントとAnalyticDB for MySQLデータベース間のユニバーサルインターフェースとして機能します。AIエージェントとAnalyticDB for MySQL間のシームレスな通信を可能にし、AIエージェントがAnalyticDB for MySQLデータベースのメタデータを取得し、SQL操作を実行できるようにします。
1. MCPクライアントの構成
モード1: ローカルファイルの使用
GitHubリポジトリをダウンロードする
git clone https://github.com/aliyun/alibabacloud-adb-mysql-mcp-serverMCP統合
MCP クライアント構成ファイルに次の構成を追加します。
{
"mcpServers": {
"adb-mysql-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/alibabacloud-adb-mysql-mcp-server",
"run",
"adb-mysql-mcp-server"
],
"env": {
"ADB_MYSQL_HOST": "host",
"ADB_MYSQL_PORT": "port",
"ADB_MYSQL_USER": "database_user",
"ADB_MYSQL_PASSWORD": "database_password",
"ADB_MYSQL_DATABASE": "database"
}
}
}
}モード2: PIPモードの使用
インストール
次のパッケージを使用して MCP サーバーをインストールします。
pip install adb-mysql-mcp-serverMCP統合
MCP クライアント構成ファイルに次の構成を追加します。
{
"mcpServers": {
"adb-mysql-mcp-server": {
"command": "uv",
"args": [
"run",
"--with",
"adb-mysql-mcp-server",
"adb-mysql-mcp-server"
],
"env": {
"ADB_MYSQL_HOST": "host",
"ADB_MYSQL_PORT": "port",
"ADB_MYSQL_USER": "database_user",
"ADB_MYSQL_PASSWORD": "database_password",
"ADB_MYSQL_DATABASE": "database"
}
}
}
}Related MCP server: Hologres MCP Server
2. 独自のAnalyticDB for MySQL MCPサーバーを開発する
独自の AnalyticDB for MySQL MCP Server を開発する場合は、次のコマンドを使用して Python 依存パッケージをインストールできます。
GitHub からソースコードをダウンロードします。
uvパッケージ マネージャーをインストールします。
npxという名前のノードパッケージツールを提供するNode.jsをインストールします。次のコマンドを使用して、プロジェクトのルート ディレクトリに Python 依存関係をインストールします。
uv pip install -r pyproject.toml mcp サーバーをローカルでデバッグする場合は、次のコマンドを使用してMCP インスペクターを起動できます。
npx @modelcontextprotocol/inspector \
-e ADB_MYSQL_HOST=your_host \
-e ADB_MYSQL_PORT=your_port \
-e ADB_MYSQL_USER=your_username \
-e ADB_MYSQL_PASSWORD=your_password \
-e ADB_MYSQL_DATABASE=your_database \
uv --directory /path/to/alibabacloud-adb-mysql-mcp-server run adb-mysql-mcp-server 3. AnalyticDB for MySQL MCP Serverのコンポーネントの紹介
ツール
execute_sql: MySQL ClusterのAnalyticDBでSQLクエリを実行するget_query_plan: SQLクエリのクエリプランを取得するget_execution_plan: SQLクエリの実際の実行プランと実行時統計を取得します。
リソース
組み込みリソース
adbmysql:///databases: MySQLクラスタの分析内のすべてのデータベースを取得します。
リソーステンプレート
adbmysql:///{schema}/tables: 特定のデータベース内のすべてのテーブルを取得するadbmysql:///{database}/{table}/ddl: 特定のデータベース内のテーブルのDDLスクリプトを取得します。adbmysql:///{config}/{key}/value: クラスター内の設定キーの値を取得する
プロンプト
現時点では提供されていません。
Available Tools
3 toolsexecute_sqlC
Execute a SQL query in the Adb MySQL Cluster
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The SQL query to execute |
TDQS
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 but provides minimal information. It states what the tool does but doesn't disclose important behavioral traits like whether this is a read-only or write operation, what permissions are required, whether there are query size or complexity limits, what happens with malformed queries, or what the response format will be. The description adds almost no behavioral context 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise - a single sentence that directly states the tool's purpose without any wasted words. It's front-loaded with the essential information and appropriately sized for what it communicates.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that this is a SQL execution tool with no annotations and no output schema, the description is insufficiently complete. It doesn't explain what kind of SQL queries are supported, what database/schema context is used, whether transactions are supported, what the return format will be, or any error handling behavior. For a tool that could potentially execute destructive operations, this level of documentation is inadequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage with the 'query' parameter clearly documented. The description doesn't add any meaningful parameter semantics beyond what the schema already provides - it doesn't specify query syntax requirements, supported SQL dialects, parameter binding methods, or any constraints on the query content. With complete schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Execute') and target resource ('a SQL query in the Adb MySQL Cluster'), providing specific verb+resource pairing. However, it doesn't explicitly differentiate from sibling tools like get_execution_plan or get_query_plan, which appear to be related query analysis tools rather than execution tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 sibling tools, suggest appropriate query types, warn about limitations, or provide any context about when this execution tool should be preferred over the analysis-focused sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_execution_planC
Get the actual execution plan with runtime statistics for a SQL query
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The SQL query to analyze |
TDQS
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 the tool retrieves 'actual execution plan with runtime statistics', which implies a read-only, non-destructive operation, but doesn't clarify performance impact, permissions needed, or what 'runtime statistics' include (e.g., execution time, row counts). This leaves significant gaps for a tool that likely interacts with a database system.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part of the sentence contributes directly to understanding the tool's function, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of SQL execution plans and the lack of annotations or output schema, the description is incomplete. It doesn't explain what an 'execution plan' entails, how runtime statistics are presented, or potential limitations (e.g., only for certain databases). For a tool with no structured output documentation, this leaves the agent with insufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the single parameter 'query' fully documented in the schema as 'The SQL query to analyze'. The description adds no additional semantic context beyond this, such as query format requirements or supported SQL dialects, so it meets the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('execution plan with runtime statistics for a SQL query'), making the purpose immediately understandable. It distinguishes from 'execute_sql' (which runs queries) and 'get_query_plan' (which likely provides theoretical plans without runtime data), though the distinction from the latter could be more explicit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like 'execute_sql' or 'get_query_plan'. It doesn't mention prerequisites, such as needing a valid SQL query or when runtime statistics are available, leaving the agent to infer usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_query_planC
Get the query plan for a SQL query
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The SQL query to analyze |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden but only states what the tool does without behavioral details. It doesn't disclose if this is a read-only operation, has side effects, requires specific permissions, or involves rate limits, which are critical for a tool analyzing SQL queries.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, direct sentence with zero wasted words, making it highly concise and front-loaded. It efficiently communicates the core function without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a tool that likely returns complex query plan data, the description is insufficient. It doesn't explain the return format, potential errors, or usage context, leaving gaps in understanding for effective tool invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, clearly documenting the 'query' parameter. The description adds no additional meaning beyond this, such as SQL dialect support or query complexity limits, so it meets the baseline for high schema coverage without extra value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and target ('query plan for a SQL query'), making the purpose immediately understandable. It doesn't explicitly differentiate from sibling tools like 'get_execution_plan', which might be similar, so it misses the highest score for sibling distinction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
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 like 'execute_sql' or 'get_execution_plan'. It lacks context such as whether this is for debugging, optimization, or pre-execution analysis, leaving the agent with no usage criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
3 tool updates
- First observed
execute_sql - First observed
get_execution_plan - First observed
get_query_plan
TDQS
The tools have overlapping purposes focused on SQL query analysis, with execute_sql clearly distinct for running queries, but get_execution_plan and get_query_plan could be confused as both relate to query plans. Descriptions help differentiate them slightly (one includes runtime statistics), but the boundaries are somewhat unclear.
All tool names follow a consistent verb_noun pattern (execute_sql, get_execution_plan, get_query_plan) with clear, predictable naming. There are no deviations in style or convention across the set.
With only 3 tools, the server feels thin for a MySQL cluster management domain, as it lacks operations for database/table management, user permissions, or monitoring. However, the tools are focused on query execution and analysis, which is a reasonable but limited scope.
For a MySQL server, there are significant gaps in the tool surface: no CRUD operations for databases/tables, no user management, no backup/restore, and no monitoring tools. The set only covers query execution and plan analysis, leaving many core database management tasks unaddressed.
Maintenance
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
Safe, read-only Postgres and MySQL access for AI agents. Audit log + column-level controls.
- OleanderOAuthdev.oleander
The all-in-one data stack for agents. Upload files, run SQL, evolve tables, and render charts.
Database for your AI agent. Turn its output into data, docs, skills, and apps you can actually use.
PostgreSQL, MySQL, OpenAPI/Swagger, and shared Agent Memory with scoped access.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables AI models to perform MySQL database operations through a standardized interface, supporting secure connections, query execution, and comprehensive schema management.712133MIT

Hologres MCP Serverofficial
AlicenseAqualityCmaintenanceA universal interface that enables AI Agents to communicate with Hologres databases, allowing them to retrieve database metadata and execute SQL operations.1234Apache 2.0
AnalyticDB PostgreSQL MCPofficial
AlicenseNot gradedqualityCmaintenanceServes as a universal interface between AI Agents and AnalyticDB PostgreSQL databases, enabling metadata retrieval and SQL execution, with additional capabilities for knowledge graph and LLM memory management.16Apache 2.0- FlicenseNot gradedqualityDmaintenanceEnables AI agents to interact with a MySQL database using natural language, automating SQL tasks like querying, inserting, updating, and deleting data.1-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/aliyun/alibabacloud-adb-mysql-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server