MySQL MCP服务器v2
该MCP服务器(消息控制协议)提供了一个接口,可以通过MySQL数据库管理和查询部门预算信息。
特征
- 到 MySQL 数据库的安全连接
- 部门预算管理
- 按部门代码划分的查询
- 按部门名称搜索
- 预售登记处
- 稳健的错误处理和连接
要求
- Python 3.6以上
- MySQL服务器(XAMPP或类似)
- 需要的 Python 软件包:
- 主控程序 - mysql连接器python
安装
- 克隆存储库
- 安装依赖项:
pip install mcp mysql-connector-python配置
服务器配置为使用以下默认参数连接到MySQL数据库:
db_config = {
'host': 'localhost',
'port': 3306,
'user': 'reporte',
'password': 'reporte',
'database': '_REPORTE',
'raise_on_warnings': True
}根据您的数据库设置调整这些参数。
功能
1.完整状态查询
get_estado_completo(codigo: int)按其代码返回部门的完整信息,包括:
- 代码
- 姓名
- 初步预算
- 征求意见书
- 可用余额
- 付款期限\[T\]
2.律师注册处
registrar_solicitud(codigo: int, monto: float)记录一个部门的新预算请求:
- 更新请求的金额
- 重新计算可用余额
- 安全处理事务
3.按名称搜索
buscar_por_nombre(nombre: str)按名称搜索部门:
- 部分搜索(使用LIKE)
- 返回多个结果
- 包括发现的每个部门的完整信息
证据
该项目包括验证功能的测试脚本:
test_buscar_nombre.py:测试按名称搜索功能- 执行测试:
python test_buscar_nombre.py错误处理
服务器实现了健壮的错误处理:
- 数据库连接错误
- 查询错误
- 数据有效期
- 事务错误时自动回滚
数据库结构
主表 departamentos 包含以下字段:
codigo(int):部门的唯一标识符nombre(瓦尔查尔):部门名称inicial(小数):初步预算solicitado(小数):申请金额saldo(小数):可用余额pagado(十进制):蒙托帕加多
执行
要启动服务器:
python mysql_mcp_server_v2.py安全注意事项
- 数据库凭据在代码中硬编码。在生产环境中,建议使用环境变量或安全配置文件。
- 使用上下文管理器模式实现安全连接处理。
- 事务通过适当的提交/回滚处理。
孔特里布西翁
- 叉库
- 为您的功能创建分支(
git checkout -b feature/AmazingFeature) - 提交您的更改(
git commit -m 'Add some AmazingFeature') - 推拉拉马(
git push origin feature/AmazingFeature) - 取消拉取请求
许可证
这个项目是在麻省理工学院的许可下进行的。查看文件 LICENSE 更多细节。

