Sql_mcp_server

Sql_mcp_server

🚀 快速MCP SQL Server

快速MCP SQL Server是一个强大的工具,它借助对话式AI界面,为用户提供与SQL数据库交互的便捷途径。用户能够通过自然语言与数据库进行交互,轻松执行各类操作。

🚀 快速开始

快速MCP SQL Server允许用户通过对话式AI界面与Microsoft SQL Server进行交互。它使用FastMCP框架,提供了查询和操作SQL数据的工具,让用户可以用自然语言与数据库进行交互。

✨ 主要特性

  • 执行SQL查询并查看结果
  • 列出数据库中的可用表
  • 描述表结构及其列信息
  • 执行非查询操作(INSERT, UPDATE, DELETE)
  • 列出系统上安装的ODBC驱动程序
  • 查看数据库信息和服务器详细信息

📦 安装指南

安装Python依赖项

pip install pyodbc asyncio fastmcp

安装数据库及驱动

确保安装了Microsoft SQL Server以及ODBC Driver 17 for SQL Server。

配置连接参数

在脚本中配置连接参数:

# 连接参数
SERVER = "server\\instance"  # 更改为您的SQL Server实例
DATABASE = "db_name"              # 更改为您的数据库名称

💻 使用示例

基础用法

运行服务器:

python mcp_sql_server.py

服务器将初始化并连接到指定的SQL Server数据库。

高级用法

执行SQL查询

# 执行SQL查询并返回结果
query_sql(query: str = None) -> str
  • 如果未提供查询,则默认为 SELECT * FROM [dbo].[Table_1]
  • 返回格式化字符串形式的结果

列出数据库中的所有表

# 列出数据库中的所有表
list_tables() -> str
  • 返回表格名称的列表作为字符串

获取特定表的结构

# 获取特定表的结构
describe_table(table_name: str) -> str
  • table_name: 要描述的表名
  • 返回包括列名和数据类型的信息

执行非查询操作

# 执行INSERT, UPDATE, DELETE或其他非查询SQL语句
execute_nonquery(sql: str) -> str
  • sql: 要执行的SQL语句
  • 返回操作结果,包括受影响行数
  • 自动处理事务(提交/回滚)

列出系统上安装的所有ODBC驱动程序

# 列出系统上安装的所有ODBC驱动程序
list_odbc_drivers() -> str
  • 返回逗号分隔的已安装ODBC驱动程序列表

获取所连接数据库的基本信息

# 获取所连接数据库的基本信息
database_info() -> str
  • 返回数据库版本和配置信息

🔧 技术细节

服务器使用异步编程库asyncio,结合FastMCP框架实现高效通信。数据查询通过pyodbc执行,并与数据库建立连接池以优化性能。所有数据库操作都封装在try-except块中,捕获异常并返回用户友好的错误消息。

📚 详细文档

自定义

要扩展功能,可以添加新的工具到tools.py文件,并注册到main.py的命令字典中。

安全注意事项

  • 数据库连接使用SSL加密
  • 默认禁用远程访问
  • 支持身份验证插件扩展

常见问题排查

无法连接数据库

检查以下几点:

  1. 确保数据库服务已运行
  2. 检查防火墙设置是否允许连接
  3. 验证提供的凭据是否正确

安装依赖失败

确保使用Python 3.7或更高版本,并在安装过程中保持网络连接。

📄 许可证

项目遵循MIT许可证,详细信息请参阅LICENSE文件。

📞 联系方式

如需反馈或技术支持,请访问项目GitHub仓库或联系维护人员。

  • 0 关注
  • 0 收藏,16 浏览
  • system 提出于 2025-09-24 03:09

相似服务问题

相关AI产品