Adb MySQL MCP Server
OfficialMySQL MCP 서버용 AnalyticDB
AnalyticDB for MySQL MCP 서버는 AI Agent와 AnalyticDB for MySQL 데이터베이스 간의 범용 인터페이스 역할을 합니다. AI Agent와 AnalyticDB for MySQL 간의 원활한 통신을 지원하여 AI Agent가 AnalyticDB for MySQL 데이터베이스 메타데이터를 검색하고 SQL 작업을 실행할 수 있도록 지원합니다.
1. MCP 클라이언트 구성
모드 1: 로컬 파일 사용
GitHub 저장소를 다운로드하세요
지엑스피1
MCP 통합
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. MySQL MCP 서버용 AnalyticDB를 직접 개발하세요
MySQL MCP 서버용 AnalyticDB를 직접 개발하려면 다음 명령을 사용하여 Python 종속성 패키지를 설치할 수 있습니다.
GitHub에서 소스 코드를 다운로드하세요.
uv 패키지 관리자를 설치합니다.
npx라는 이름의 노드 패키지 도구를 제공하는 Node.js를 설치합니다.다음 명령을 사용하여 프로젝트의 루트 디렉토리에 Python 종속성을 설치합니다.
uv pip install -r pyproject.toml 로컬에서 mcp 서버를 디버깅하려면 다음 명령을 사용하여 MCP Inspector를 시작할 수 있습니다.
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. MySQL MCP 서버용 AnalyticDB 구성 요소 소개
도구
execute_sql: MySQL 클러스터용 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