内容
# 数据源-MCP
用于AI客户端(Cursor、Claude Desktop等)的MySQL数据源MCP服务器。
> **数据库支持:** 目前仅支持**MySQL**。计划在未来版本中支持PostgreSQL、SQLite和其他数据库。
## 安装
```bash
pip install datasource-mcp
```
如果您的PyPI镜像上尚未提供该软件包,请使用官方索引:
```bash
pip install datasource-mcp -i https://pypi.org/simple/
```
或者在不安装的情况下运行(需要[uv](https://docs.astral.sh/uv/)):
```bash
uvx datasource-mcp
```
> **注意:** `uvx datasource-mcp`下载软件包并立即启动MCP_stdio服务器。在等待客户端连接时,它将阻塞终端。请在MCP客户端中配置它,而不是手动运行。
## Cursor / MCP 客户端配置
### 选项1:pip安装(本地环境)
首先运行`pip install datasource-mcp`,然后将其添加到`mcp.json`:
```json
{
"mcpServers": {
"datasource-mcp": {
"command": "datasource-mcp",
"env": {
"DB_HOST": "127.0.0.1",
"DB_PORT": "3306",
"DB_USER": "root",
"DB_PASSWORD": "your_password",
"DB_NAME": "your_database"
}
}
}
}
```
### 选项2:使用uvx(推荐)
无需`pip install` — `uvx`从PyPI获取软件包并自动运行。需要安装[uv](https://docs.astral.sh/uv/getting-started/installation/)。
```json
{
"mcpServers": {
"datasource-mcp": {
"command": "uvx",
"args": ["datasource-mcp"],
"env": {
"DB_HOST": "127.0.0.1",
"DB_PORT": "3306",
"DB_USER": "root",
"DB_PASSWORD": "your_password",
"DB_NAME": "your_database"
}
}
}
}
```
更新配置后,在MCP面板中单击**刷新**以应用更改。
## 环境变量
| 变量 | 默认值 | 描述 |
|----------|---------|-------------|
| `DB_HOST` | `127.0.0.1` | MySQL主机 |
| `DB_PORT` | `3306` | MySQL端口 |
| `DB_USER` | `root` | MySQL用户 |
| `DB_PASSWORD` | `root` | MySQL密码 |
| `DB_NAME` | `aix` | 数据库名称 |
| `DB_CONNECT_TIMEOUT` | `5` | 连接超时(秒) |
## 工具
### `db_exe`
执行SQL并返回JSON字符串:
```json
{"success": true, "row_count": 1, "truncated": false, "rows": [...]}
```
错误响应:
```json
{"success": false, "error": "错误消息"}
```
## 本地开发
```bash
uv sync
uv run datasource-mcp
# 或
uv run python -m datasource_mcp
```
需要Python >= 3.11。