使用说明
SQL Server代理-流式接口
一个具有Streamlit web界面的现代SQL Server代理,允许您使用自然语言与SQL Server数据库交互,由Claude AI提供支持。
主要特点
- 自然语言到SQL:使用Claude AI将纯英语查询转换为SQL
- 基于Web的界面:现代Streamlit仪表板,便于数据库交互
- 实时查询执行:执行SQL查询并立即查看结果
- 可视化数据浏览器:使用交互式界面浏览表、模式和数据
- 导出功能:将查询结果下载为CSV文件
- 查询示例:预构建查询,助您快速入门
什么是SQL Server代理?
这 SQL Server代理 是一个基于网络的对话式人工智能界面,使您能够 使用自然语言与SQL Server数据库交互.技术支持: 克劳德 AI,它提供:
- 无需编写SQL即可查询数据库
- 可视化表探索和模式浏览
- 带格式化结果的实时查询执行
- 无缝的数据导出和分析功能
无论您是开发人员、分析师还是非技术用户,此代理都可以通过直观的web界面访问您的数据。
🎥 演示视频
观察SQL Server代理的运行情况:
看看使用自然语言查询数据库有多容易!
先决条件
在开始之前,请确保您具备以下条件:
- Python 3.12+ 安装在您的计算机上
- 紫外线 已安装包管理器(安装uv)
- A有效 无烟煤API密钥 (克劳德·艾)
- PowerShell (Windows)
入门指南
按照以下步骤启动并运行项目:
1.克隆存储库
git clone https://github.com/Amanp17/mcp-sql-server-natural-lang.git
cd mcp-sql-server-natural-lang
2.环境设置(PowerShell)
# Create and activate uv environment
uv venv --python 3.12
.\.venv\Scripts\Activate.ps1
# Install dependencies
uv pip install streamlit anthropic pandas sqlite3-utils
3.设置环境变量
创建一个 .streamlit/secrets.toml 项目根目录中的文件:
ANTHROPIC_API_KEY = "your_anthropic_api_key_here"
[connections.sql_server]
server = "localhost"
database = "your_database_name"
username = "your_username"
password = "your_password"
driver = "ODBC Driver 17 for SQL Server"
或者设置一个 .env 文件:
ANTHROPIC_API_KEY=your_anthropic_api_key
MSSQL_SERVER=localhost
MSSQL_DATABASE=your_database_name
MSSQL_USERNAME=your_username
MSSQL_PASSWORD=your_password
MSSQL_DRIVER={ODBC Driver 17 for SQL Server}
运行SQL Server代理
设置好环境和依赖关系后,就可以启动web界面了。
启动Streamlit应用程序
# Ensure uv environment is activated
.\.venv\Scripts\Activate.ps1
# Launch the Streamlit web interface
streamlit run integrated_sql_agent.py
该应用程序将在您的默认web浏览器中自动打开,网址为 http://localhost:8501.
使用界面
-
自然语言查询:键入问题,如“向我展示所有客户”或“按价格排名前10的产品是什么?”
-
SQL直接输入:您也可以直接编写SQL查询
-
架构资源管理器:在侧栏中浏览数据库表和列
-
查询示例:点击预构建示例快速开始
-
导出结果:将查询结果下载为CSV文件
查询示例
以下是一些您可以尝试的自然语言查询示例:
Show me all customers
What are the top 10 products by price?
Find customers who spent more than $2000
What's the average order value?
Show me monthly sales for this year
Which products are low in stock?
Find orders from the last 30 days
项目结构
mcp-sql-server-natural-lang/
├── integrated_sql_agent.py # Main Streamlit application
├── requirements.txt # Dependencies
├── .streamlit/
│ └── secrets.toml # Streamlit secrets
├── .env # Environment variables (optional)
├── .venv/ # Virtual environment
└── README.md # This file
故障排除
常见问题
-
未找到紫外线:确保uv已安装并位于PATH中
# Install uv if needed powershell -c "irm https://astral.sh/uv/install.ps1 | iex" -
权限不足:如果需要,以管理员身份运行PowerShell
-
API关键问题:确保您的Anthropic API密钥在secrets.toml中设置正确
-
数据库连接:验证您的SQL Server连接详细信息
环境管理
- 激活环境:
.\.venv\Scripts\Activate.ps1 - 停用环境:
deactivate - 检查相关性:
uv pip list - 更新依赖关系:
uv pip install --upgrade package_name
功能概述
🔍 自然语言处理
- 将英语问题转换为SQL查询
- 上下文感知查询生成
- 支持复杂的连接和聚合
🎯 web界面
- 干净、现代的Streamlit仪表板
- 实时查询执行
- 交互式数据表
- 带有表详细信息的架构浏览器
📊 数据可视化
- 格式化查询结果
- 可排序和可过滤的表
- CSV导出功能
- 查询历史和示例
🔒 安全
- 安全的API密钥管理
- 基于环境的配置
- 安全执行SQL查询
依赖项
streamlit>=1.28.0
anthropic>=0.25.0
pandas>=2.0.0
sqlite3-utils>=3.35.0
python-dotenv>=1.0.0
获取API密钥
- 访问 拟人控制台
- 注册或登录您的帐户
- 导航到API密钥部分
- 创建新的API密钥
- 复制并粘贴到您的
secrets.toml文件
结论
这 SQL Server代理 Streamlit界面通过现代web界面将对话式AI的力量带入您的数据库操作。通过将Claude AI的自然语言处理与Streamlit的交互功能相结合,它提供了一种直观的方式来探索和分析您的数据。
无论您是执行即席查询、探索数据关系还是构建报告,此代理都可以作为您与SQL Server的基于web的智能界面。
快速启动命令:
# Clone, setup, and run in one go
git clone https://github.com/Amanp17/mcp-sql-server-natural-lang.git
cd mcp-sql-server-natural-lang
uv venv --python 3.12
.\.venv\Scripts\Activate.ps1
uv pip install streamlit anthropic pandas
streamlit run integrated_sql_agent.py