MS SQL MCP服务器
用于SQL server数据库操作的模型上下文协议(MCP)服务器。网8。
特性
此MCP服务器为SQL server数据库访问提供了以下工具:
| 工具 | 说明 |
|---|---|
| 列出所有表格 | 列出数据库中具有可选架构筛选的所有表 |
| 描述表结构 | 描述表的结构,包括列、数据类型、键和索引 |
| 创建新表 | 使用指定的列和约束创建新表 |
| DropTableFrom数据库 | 从数据库中删除表(具有可选的强制模式) |
| 插入行 | 在表中插入一行或多行 |
| 从表格中读取 | 通过过滤、排序和分页读取数据 |
| 执行查询 | 执行自定义SELECT查询 |
| 更新行 | 根据WHERE条件更新现有行 |
| 删除行 | 根据WHERE条件删除行 |
| GetServerInfo | 获取数据库服务器信息和属性 |
| 列表数据库 | 列出服务器上的所有数据库 |
| 列表存储程序 | 列出数据库中的所有存储过程 |
| 执行存储过程 | 执行带有参数的存储过程 |
| 测试连接 | 测试数据库连接 |
先决条件
- .NET 8.0 SDK
- SQL Server(任何版本:本地数据库、Express、标准版、企业版、Azure SQL)
建筑
dotnet restore
dotnet build用法
使用SQL server连接字符串作为第一个参数运行MCP服务器:
dotnet run -- "Server=localhost;Database=MyDatabase;Trusted_Connection=True;TrustServerCertificate=True;"或出版后:
MS_SQL_MCP.exe "Server=localhost;Database=MyDatabase;Trusted_Connection=True;TrustServerCertificate=True;"连接字符串示例
Windows身份验证:
Server=localhost;Database=MyDatabase;Trusted_Connection=True;TrustServerCertificate=True;SQL Server身份验证:
Server=localhost;Database=MyDatabase;User Id=sa;Password=YourPassword;TrustServerCertificate=True;Azure SQL:
Server=yourserver.database.windows.net;Database=MyDatabase;User Id=user;Password=password;Encrypt=True;本地数据库:
Server=(localdb)\MSSQLLocalDB;Database=MyDatabase;Integrated Security=True;MCP客户端配置
克劳德桌面(Claude_Desktop_config.json)
{
"mcpServers": {
"mssql": {
"command": "dotnet",
"args": [
"run",
"--project",
"D:\\EU3734\\source\\repos\\MS_SQL_MCP",
"--",
"Server=localhost;Database=MyDatabase;Trusted_Connection=True;TrustServerCertificate=True;"
]
}
}
}或者使用已发布的可执行文件:
{
"mcpServers": {
"mssql": {
"command": "D:\\EU3734\\source\\repos\\MS_SQL_MCP\\bin\\Release\\net8.0\\MS_SQL_MCP.exe",
"args": [
"Server=localhost;Database=MyDatabase;Trusted_Connection=True;TrustServerCertificate=True;"
]
}
}
}工具示例
创建表
{
"tableName": "Users",
"columnsJson": "[{\"name\":\"Id\",\"type\":\"INT\",\"isPrimaryKey\":true,\"isIdentity\":true},{\"name\":\"Username\",\"type\":\"NVARCHAR(50)\",\"isNullable\":false},{\"name\":\"Email\",\"type\":\"NVARCHAR(100)\"},{\"name\":\"CreatedAt\",\"type\":\"DATETIME2\",\"defaultValue\":\"GETUTCDATE()\"}]",
"schema": "dbo"
}插入数据
{
"tableName": "Users",
"dataJson": "[{\"Username\":\"john_doe\",\"Email\":\"john@example.com\"},{\"Username\":\"jane_doe\",\"Email\":\"jane@example.com\"}]"
}通过过滤读取数据
{
"tableName": "Users",
"columns": "Id, Username, Email",
"where": "Username LIKE 'john%'",
"orderBy": "CreatedAt DESC",
"top": 10
}更新数据
{
"tableName": "Users",
"setValuesJson": "{\"Email\":\"newemail@example.com\"}",
"where": "Id = 1"
}许可证
麻省理工学院
