Mcpql
MCPQL是一个基于Model Context Protocol的SQL Server数据库操作服务器,提供10种强大的数据库分析、对象发现和数据操作工具,支持多种认证方式和连接配置,适用于数据库管理员和开发人员。
2分
6.6K

什么是MCPQL?

MCPQL是一个基于Model Context Protocol (MCP) 的SQL Server数据库操作服务器。它提供了10种强大的工具,用于数据库分析、对象发现和数据操作。该服务器支持多种连接方式,包括SQL Server认证、Windows认证和Azure AD认证。

如何使用MCPQL?

MCPQL可以通过多种方式使用,包括通过命令行运行、在开发环境中集成或与MCP客户端(如Claude Desktop或Cursor IDE)结合使用。用户只需配置数据库连接参数,即可访问所有功能。

适用场景

MCPQL适用于数据库管理员、开发人员和任何需要与SQL Server数据库交互的用户。它可以用于数据库分析、数据预览、存储过程分析、查询执行等任务。

主要功能

表结构分析
分析表的结构,包括列、键、索引和约束。
存储过程分析
分析存储过程的结构,包括参数、依赖关系和源代码。
数据预览
预览表的数据,支持过滤和行数限制。
列统计信息
获取特定列的统计信息。
执行存储过程
执行存储过程并返回结果。
执行SQL查询
执行自定义SQL查询并处理错误。
快速数据分析
快速统计分析,包括行数、列分布和顶级值。
全面搜索
按名称和定义搜索数据库对象。
对象依赖关系
获取数据库对象的依赖关系。
样本值
从特定列中获取样本值。
优势
提供10种强大的数据库操作工具
支持多种连接方式(SQL Server认证、Windows认证、Azure AD认证)
易于集成到MCP客户端(如Claude Desktop或Cursor IDE)
具有完善的错误处理和验证机制
支持连接池以提高性能
局限性
需要一定的技术背景来配置和使用
对于非常复杂的数据库可能需要优化查询
部分高级功能可能需要更复杂的设置

如何使用

安装和配置
确保已安装Node.js 18+和npm,并克隆MCPQL仓库。创建.env文件并配置数据库连接参数。
配置MCP客户端
在MCP客户端中配置MCPQL服务器,指定命令和环境变量。
使用工具
使用MCPQL提供的工具执行数据库分析和操作任务。

使用案例

分析用户表结构
分析用户表的结构,了解其列、键和索引。
预览活跃用户数据
预览状态为“活跃”的用户数据,最多显示25条记录。
执行存储过程
执行一个存储过程来获取用户数据。

常见问题

MCPQL支持哪些数据库连接方式?
如何解决连接失败的问题?
MCPQL是否支持SQL Server Express?
MCPQL的性能如何?
如何测试MCPQL的功能?

相关资源

GitHub仓库
MCPQL的GitHub仓库,包含源代码、文档和示例。
Model Context Protocol SDK
Model Context Protocol的官方SDK,用于构建MCP客户端。
mssql库文档
node-mssql库的文档,用于SQL Server连接。
Jest测试框架
Jest是MCPQL使用的测试框架,用于编写和运行测试用例。

安装

复制以下命令到你的Client进行配置
{
  "mcpServers": {
    "mcpql": {
      "command": "npx",
      "args": ["-y", "hendrickcastro/mcpql"],
      "env": {
        "DB_AUTHENTICATION_TYPE": "sql",
        "DB_SERVER": "your_server",
        "DB_NAME": "your_database",
        "DB_USER": "your_username",
        "DB_PASSWORD": "your_password",
        "DB_PORT": "1433",
        "DB_ENCRYPT": "false",
        "DB_TRUST_SERVER_CERTIFICATE": "true"
      }
    }
  }
}

{
  "mcpServers": {
    "mcpql": {
      "command": "node",
      "args": ["path/to/MCPQL/dist/server.js"]
    }
  }
}

{
  "mcpServers": {
    "mcpql": {
      "command": "npx",
      "args": ["-y", "hendrickcastro/mcpql"],
      "env": {
        "DB_AUTHENTICATION_TYPE": "sql",
        "DB_SERVER": "localhost",
        "DB_NAME": "MyDatabase",
        "DB_USER": "sa",
        "DB_PASSWORD": "YourPassword123!",
        "DB_PORT": "1433",
        "DB_ENCRYPT": "false",
        "DB_TRUST_SERVER_CERTIFICATE": "true"
      }
    }
  }
}

{
  "mcpServers": {
    "mcpql": {
      "command": "npx",
      "args": ["-y", "hendrickcastro/mcpql"],
      "env": {
        "DB_AUTHENTICATION_TYPE": "sql",
        "DB_SERVER": "localhost",
        "DB_INSTANCE_NAME": "SQLEXPRESS",
        "DB_NAME": "MyDatabase",
        "DB_USER": "sa",
        "DB_PASSWORD": "YourPassword123!",
        "DB_ENCRYPT": "false",
        "DB_TRUST_SERVER_CERTIFICATE": "true"
      }
    }
  }
}

{
  "mcpServers": {
    "mcpql": {
      "command": "npx",
      "args": ["-y", "hendrickcastro/mcpql"],
      "env": {
        "DB_AUTHENTICATION_TYPE": "windows",
        "DB_SERVER": "MYSERVER",
        "DB_NAME": "MyDatabase",
        "DB_DOMAIN": "MYDOMAIN",
        "DB_USER": "myuser",
        "DB_PASSWORD": "mypassword",
        "DB_ENCRYPT": "false",
        "DB_TRUST_SERVER_CERTIFICATE": "true"
      }
    }
  }
}

{
  "mcpServers": {
    "mcpql": {
      "command": "npx",
      "args": ["-y", "hendrickcastro/mcpql"],
      "env": {
        "DB_AUTHENTICATION_TYPE": "azure-ad",
        "DB_SERVER": "myserver.database.windows.net",
        "DB_NAME": "MyDatabase",
        "DB_USER": "user@domain.com",
        "DB_PASSWORD": "userpassword",
        "DB_PORT": "1433",
        "DB_ENCRYPT": "true",
        "DB_TRUST_SERVER_CERTIFICATE": "false"
      }
    }
  }
}

{
  "mcpServers": {
    "mcpql": {
      "command": "npx",
      "args": ["-y", "hendrickcastro/mcpql"],
      "env": {
        "DB_AUTHENTICATION_TYPE": "azure-ad",
        "DB_SERVER": "myserver.database.windows.net",
        "DB_NAME": "MyDatabase",
        "DB_AZURE_CLIENT_ID": "your-client-id",
        "DB_AZURE_CLIENT_SECRET": "your-client-secret",
        "DB_AZURE_TENANT_ID": "your-tenant-id",
        "DB_PORT": "1433",
        "DB_ENCRYPT": "true",
        "DB_TRUST_SERVER_CERTIFICATE": "false"
      }
    }
  }
}

{
  "mcpServers": {
    "mcpql": {
      "command": "npx",
      "args": ["-y", "hendrickcastro/mcpql"],
      "env": {
        "DB_CONNECTION_STRING": "Server=localhost;Database=MyDatabase;User Id=sa;Password=YourPassword123!;Encrypt=false;TrustServerCertificate=true;"
      }
    }
  }
}
注意:您的密钥属于敏感信息,请勿与任何人分享。

替代品

R
Rsdoctor
Rsdoctor 是一款专为 Rspack 生态系统打造的构建分析工具,全面兼容 webpack,提供可视化构建分析、多维度性能诊断及智能优化建议,帮助开发者提升构建效率与工程质量。
TypeScript
8.9K
5分
N
Next Devtools MCP
Next.js开发工具MCP服务器,为Claude、Cursor等AI编程助手提供Next.js开发工具和实用程序,包括运行时诊断、开发自动化和文档访问功能。
TypeScript
8.4K
5分
T
Testkube
Testkube是一个面向云原生应用的测试编排与执行框架,提供统一平台来定义、运行和分析测试,支持现有测试工具和Kubernetes基础设施。
Go
6.2K
5分
M
MCP Windbg
一个MCP服务器,将AI模型与WinDbg/CDB集成,用于分析Windows崩溃转储文件和进行远程调试,支持自然语言交互执行调试命令。
Python
8.7K
5分
R
Runno
Runno是一个JavaScript工具包集合,用于在浏览器和Node.js等环境中安全地运行多种编程语言的代码,通过WebAssembly和WASI实现沙盒化执行,支持Python、Ruby、JavaScript、SQLite、C/C++等语言,并提供Web组件、MCP服务器等集成方式。
TypeScript
6.6K
5分
N
Netdata
Netdata是一个开源实时基础设施监控平台,提供每秒级指标收集、可视化、机器学习驱动的异常检测和自动化告警,无需复杂配置即可实现全栈监控。
Go
9.7K
5分
M
MCP Server
Mapbox MCP服务器是一个Node.js实现的模型上下文协议服务器,为AI应用提供Mapbox地理空间API的访问能力,包括地理编码、兴趣点搜索、路线规划、等时线分析和静态地图生成等功能。
TypeScript
8.8K
4分
U
Uniprof
uniprof是一个简化CPU性能分析的工具,支持多种编程语言和运行时,无需修改代码或添加依赖,可通过Docker容器或主机模式进行一键式性能剖析和热点分析。
TypeScript
7.3K
4.5分
F
Figma Context MCP
Framelink Figma MCP Server是一个为AI编程工具(如Cursor)提供Figma设计数据访问的服务器,通过简化Figma API响应,帮助AI更准确地实现设计到代码的一键转换。
TypeScript
68.5K
4.5分
D
Duckduckgo MCP Server
已认证
DuckDuckGo搜索MCP服务器,为Claude等LLM提供网页搜索和内容抓取服务
Python
76.0K
4.3分
F
Firecrawl MCP Server
Firecrawl MCP Server是一个集成Firecrawl网页抓取能力的模型上下文协议服务器,提供丰富的网页抓取、搜索和内容提取功能。
TypeScript
132.8K
5分
E
Edgeone Pages MCP Server
EdgeOne Pages MCP是一个通过MCP协议快速部署HTML内容到EdgeOne Pages并获取公开URL的服务
TypeScript
30.5K
4.8分
E
Exa Web Search
已认证
Exa MCP Server是一个为AI助手(如Claude)提供网络搜索功能的服务器,通过Exa AI搜索API实现实时、安全的网络信息获取。
TypeScript
51.8K
5分
C
Context7
Context7 MCP是一个为AI编程助手提供实时、版本特定文档和代码示例的服务,通过Model Context Protocol直接集成到提示中,解决LLM使用过时信息的问题。
TypeScript
95.2K
4.7分
B
Baidu Map
已认证
百度地图MCP Server是国内首个兼容MCP协议的地图服务,提供地理编码、路线规划等10个标准化API接口,支持Python和Typescript快速接入,赋能智能体实现地图相关功能。
Python
46.6K
4.5分
M
Minimax MCP Server
MiniMax Model Context Protocol (MCP) 是一个官方服务器,支持与强大的文本转语音、视频/图像生成API交互,适用于多种客户端工具如Claude Desktop、Cursor等。
Python
58.9K
4.8分
AIBase
智启未来,您的人工智能解决方案智库