SQL自然语言查询工具

SQL MCP是一个通过GitHub Copilot实现自然语言与SQL Server数据库交互的工具,支持JSON格式响应和Azure SQL数据库。

  • by ustabar
  • C#
  • 本地部署
  • 9 星标
  • 更新于
在 GitHub 查看 ustabar/sql-mcp

使用说明

SQL MCP-用于模型上下文协议的SQL Server

SQL server查询的模型上下文协议(MCP)服务器实现,通过GitHub Copilot实现与数据库的自然语言交互。

概述

SQL MCP允许您通过GitHub Copilot使用自然语言查询SQL Server数据库。这种集成使数据库交互更容易访问,而不需要大量的SQL知识。

主要特点:

  • SQL Server数据库的自然语言查询
  • 与GitHub Copilot集成
  • JSON格式的响应
  • 适用于Azure SQL数据库

先决条件

  • .NET 9.0 SDK或更高版本
  • Visual Studio 2022或Visual Studio代码
  • 带有代理模式的GitHub副本
  • SQL Server或Azure SQL数据库访问

安装说明

  1. 克隆存储库

    git clone https://github.com/ustabar/sql-mcp.git
    cd sql-mcp
    
  2. 配置数据库连接

    编辑 appsettings.json 用于更新数据库连接字符串的文件:

    {
      "ConnectionStrings": {
        "AzureSqlConnection": "Server=yourserver.database.windows.net,1433;Database=yourdatabase;User Id=yourusername;Password=yourpassword;TrustServerCertificate=True;"
      }
    }
    
  3. 构建并运行应用程序

    dotnet build
    dotnet run
    
  4. 为MCP配置VS代码

    将MCP服务器添加到您的VS代码设置中:

    示例设置条目:

    "github.copilot.advanced": {
      "mcp": {
        "enabled": true,
        "mcp_server_command": "dotnet run --project C:\\path\\to\\sql-mcp"
      }
    }
    
  5. 验证MCP服务器是否正在运行

    您可以在VS Code中查看可用的MCP服务器:

用法

设置后,您可以通过GitHub Copilot Agent Mode以自然语言查询数据库:

MCP服务器处理您的自然语言查询,将其转换为SQL,并以结构化格式返回结果。

交互示例:

结构

  • 程序cs:应用程序入口点和MCP服务器配置
  • 服务/SqlConnectionService.cs:管理数据库连接
  • 工具/SqlServerTools.cs:实现用于SQL交互的MCP工具
  • 数据/提示-tr.txt:包含土耳其语支持的提示模板

贡献

欢迎投稿!请随时提交拉取请求。

许可证

此项目根据MIT许可证获得许可-有关详细信息,请参阅许可证文件。