自然语言SQL客户端

一款通过自然语言查询Microsoft SQL Server数据库的客户端工具,集成了Claude AI和Model Context Protocol (MCP)技术。

  • by vyente-ruffin
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 david-ruffin/MCP-MSSQL-SERVER-WEBAPP

使用说明

自然语言MCP-MSSQL客户端

使用模型上下文协议(MCP)的SQL数据库的自然语言接口。此客户端允许用户通过Claude AI使用简单的英语问题查询Microsoft SQL Server数据库。

特性

  • 自然语言查询:用简单的英语询问有关数据库的问题
  • MCP集成:使用FastMCP连接到MCP-MSSQL服务器
  • 克劳德·艾:使用Anthropic的Claude API将自然语言翻译成SQL
  • 交互模式:直接键入问题并获取数据库结果
  • 示范模式:运行预定义的问题以展示功能

组件

  1. MCP-MSSQL服务器:通过MCP提供对MS SQL Server数据库的访问
  2. 自然语言客户端:使用Claude API将纯英文转换为SQL
  3. FastMCP框架:处理客户端和服务器之间的通信

先决条件

  • Python 3.8+
  • 系统上已安装SQL Server的ODBC驱动程序
  • 无烟煤API键
  • 必需的Python包(fastmcp、anthropic、Python-dotenv等)

项目结构

MCP-MSSQL-SERVER-WEBAPP/
├── src/
│   └── mssql/           # MSSQL MCP server implementation
│       ├── __init__.py
│       └── server.py    # Main MCP server
├── interactive_client.py   # Interactive natural language client
├── demo_nl_client.py       # Demo client with predefined questions
├── .env                    # Environment configuration (not in git)
├── .env.example            # Example environment configuration
└── requirements.txt        # Project dependencies

安装说明

  1. 克隆存储库:

    git clone https://github.com/david-ruffin/MCP-MSSQL-SERVER-WEBAPP.git
    cd MCP-MSSQL-SERVER-WEBAPP
    
  2. 设置虚拟环境:

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    pip install -r requirements.txt
    
  3. 配置环境: 复制 .env.example 向 .env 并填写您的数据库和API凭据:

    MSSQL_SERVER=your_server
    MSSQL_DATABASE=your_database
    MSSQL_USER=your_username
    MSSQL_PASSWORD=your_password
    MSSQL_DRIVER={ODBC Driver 17 for SQL Server}
    ANTHROPIC_API_KEY=your_api_key
    

运行客户端

交互模式

运行交互式客户端以提出自己的问题:

source venv/bin/activate
export ANTHROPIC_API_KEY=$(grep ANTHROPIC_API_KEY .env | cut -d= -f2)
python interactive_client.py

在提示符处键入自然语言问题,客户端将把它们转换为SQL,执行它们并显示结果。

示范模式

运行演示以查看预定义的问题:

source venv/bin/activate
export ANTHROPIC_API_KEY=$(grep ANTHROPIC_API_KEY .env | cut -d= -f2)
python demo_nl_client.py

演示将自动运行几个示例问题,显示自然语言到SQL的转换和结果。

示例问题

  • “有多少种产品?”
  • “列出来自加利福尼亚州的所有客户”
  • “给我看看最贵的产品”
  • “不同的产品类别是什么?”
  • “2004年下了多少订单?”

ODBC驱动程序设置

此客户端需要用于SQL Server的Microsoft ODBC驱动程序。按照Microsoft官方指南进行安装:

许可证

MIT许可证