使用说明
MCP SQL Server
PostgreSQL数据库的模型上下文协议(MCP)服务器实现,为AI助手提供对PostgreSQL数据库的安全和结构化访问。
INFO: Started server process [12345]
INFO: Waiting for application startup.
INFO: Application startup complete.
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
特性
- 数据库反思:列出表并探索数据库模式
- 表架构发现:获取有关表的详细信息,包括列、类型、约束、主键和外键
- 安全查询执行:执行带有内置安全检查的只读SELECT查询
- 完全查询支持:使用参数化查询支持执行INSERT、UPDATE、DELETE和SELECT查询
- 类型安全:使用Pydantic模型构建,用于强大的输入验证
- 综合录井:调试和监控的详细日志记录
可用工具
list_tables-列出指定数据库架构中的所有表。get_table_schema-检索特定表的详细架构信息。execute_safe_query-安全地执行只读SELECT查询。execute_query-使用可选参数执行任何SQL查询(SELECT、INSERT、UPDATE、DELETE)。
MCP客户端配置
将服务器添加到MCP客户端配置中(例如,Claude Desktop):
测试
看 测试/README_TESTING.md 获取详细的测试信息。
安全注意事项
- 环境变量:将数据库凭据存储在
.env文件或环境变量,从不在代码中 - 只读访问:考虑使用
execute_safe_query对于不受信任的查询 - 数据库权限:使用具有最低必要权限的数据库用户
- 参数化查询:始终使用
params用于防止SQL注入的用户提供值的参数 - 网络安全:限制数据库访问受信任的网络
贡献
欢迎投稿!请随时提交拉取请求。
许可证
此项目根据GNU Affero通用公共许可证v3.0(AGPL-3.0)获得许可-请参阅 许可证 文件以获取详细信息。
支持
有关问题、疑问或贡献,请访问 GitHub 仓库.
