使用说明
SQL Server MCP PoC
这是使用模型上下文协议(MCP)的SQL Server后端的概念验证(PoC)。
先决条件
- 包子 安装
- 码头工人 安装
- VS Code 随着 模型上下文协议客户端扩展 安装
安装
-
克隆存储库:
git clone https://github.com/DiegoIpaez/sql-server-mcp cd sql-server-mcp -
安装依赖项:
bun install -
复制并配置环境变量:
cp .env.example .env # Edit .env with your SQL Server credentials if needed -
使用Docker启动SQL Server:
docker-compose up -d -
生成Prisma客户端:
bun run prisma generate
运行MCP服务器
在开发模式下启动服务器:
bun run dev
或者,构建并运行:
bun run build
bun run start
脚本
这 package.json 文件定义了以下脚本来自动化常见的项目任务:
| 脚本 | 命令 | 描述 |
|---|---|---|
| dev | bun run--watch。/src/index.ts | 在开发模式下启动MCP服务器,并在文件更改时自动重新加载。 |
| build | bun build。/src/index.ts--outdir。/build-minify-target节点 | 将TypeScript源代码编译并压缩为生产就绪的JavaScript。 |
| 开始 | 包子跑。/build/index.js | 在生产模式下运行编译后的MCP服务器。 |
| format | 生物组格式--写入。 | 使用Biome格式化所有项目源代码。 |
| lint | 生物群落lint——写。 | 应用并自动修复Biome检测到的起毛问题。 |
| 检查 | 生物群落检查。 | 使用Biome执行静态代码分析。 |
| postinstall | prisma-generate | 安装依赖项后自动生成prisma客户端。 |
| 测试:mcp | npx@modelcontextprotocol/inspector节点。/build/index.js | 运行MCP检查器以测试编译的MCP服务器。 |
您可以使用以下命令运行这些脚本 bun run <script> (例如, bun run dev).
工具架构
这 tools 该文件夹专为SQL Server操作的MCP工具的模块化和可扩展集成而设计。每个工具都按照以下模式组织在自己的子目录中:
<tool-name>.service.ts:业务逻辑和数据库访问。<tool-name>.tool.ts:MCP工具定义、注册和输入/输出模式。
这 tools/index.ts 集中所有可用工具的注册。
结构
tools/
index.ts
create-table/
create-table.service.ts
create-table.tool.ts
execute-raw-queries/
execute-raw-queries.service.ts
execute-raw-queries.tool.ts
get-table-schema/
get-table-schema.service.ts
get-table-schema.tool.ts
insert-data/
insert-data.service.ts
insert-data.tool.ts
建筑原则
- 模块化: 每个工具都隔离在自己的子目录中,便于维护和扩展。
- 关注点分离:
.service.ts处理数据访问逻辑,.tool.ts定义了MCP合同和集成。 - 可扩展性: 可以按照相同的文件夹和文件模式添加新工具。
- 集中化:
tools/index.ts注册并向MCP服务器公开所有工具。
整合
工具通过MCP服务器注册和公开,允许客户端(如VS Code扩展)通过创建表、执行查询、获取模式和插入数据等操作与SQL server交互。