数据库连接服务器

一个为AI助手提供多种数据库连接和查询能力的服务器,支持PostgreSQL、MySQL和SQLite等数据库,具备安全查询和性能分析功能。

  • by AbdelilahOu
  • Go
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 AbdelilahOu/DBMcp

使用说明

数据库MCP服务器

模型上下文协议(MCP)服务器,为Claude和其他AI助手提供全面的数据库连接和查询功能。该服务器通过标准化的接口实现与数据库的无缝交互,支持多种数据库类型和连接管理。

这个项目是什么?

此MCP服务器弥合了AI助手和数据库系统之间的差距,使Claude能够:

  • 连接到多个数据库 -PostgreSQL、MySQL和SQLite
  • 安全执行查询 -具有内置验证和可选只读模式
  • 探索数据库模式 -检查表、列、索引和关系
  • 分析数据 -获取表统计数据和查询性能见解
  • 管理连接 -在不同的数据库环境之间无缝切换

主要特点

  • 多数据库支持 -PostgreSQL、MySQL和SQLite
  • 安全第一 -只读模式、查询验证和安全凭据处理
  • 富模式检查 -详细的表描述、列元数据和索引信息
  • 性能分析 -查询执行计划和表统计
  • 灵活的连接管理 -命名连接,易于切换
  • AI优化 -专为AI助手工作流程设计

工具加载模式

使用 settings.advanced 在 connections.json 控制注册的工具数量:

  • true (默认):加载下面列出的每个工具。
  • false:仅加载核心组-- list_connections, switch_connection, test_connection, get_db_info, list_schemas, list_tables, describe_table, select_query, execute_query,以及 generate_id.

示例设置块:

"settings": {
  "advanced": false
}

可用工具

连接管理

  • list_connections -查看所有已配置的数据库连接
  • switch_connection -在会话期间更改活动数据库连接
  • test_connection -操作前验证数据库连接

数据库发现和元数据

  • get_db_info -访问一般数据库信息和统计数据
  • list_schemas -列出数据库中的所有架构
  • list_tables -使用元数据浏览所有可用表
  • describe_table -获取详细的表结构、列和索引
  • analyze_table -检索表统计信息和性能指标 (高级)

查询执行

  • select_query -执行SELECT查询并检索数据
  • execute_query -执行数据修改(INSERT、UPDATE、DELETE)和DDL语句
  • show_query -执行数据库设置的SHOW命令 (高级)

外键和关系

  • list_foreign_keys -列出所有带引用表和操作的外键约束 (高级)
  • get_table_relationships -获取表的传入和传出关系 (高级)

视图

  • list_views -列出所有视图 (高级)
  • get_view_definition -获取特定视图的SQL定义 (高级)
  • list_materialized_views -列出物化视图——仅限PostgreSQL (高级)

序列

  • list_sequences -列出所有序列——仅限PostgreSQL (高级)
  • get_sequence_info -获取详细的序列信息(当前值、增量等)——仅限PostgreSQL (高级)

触发器

  • list_triggers -列出所有带有事件和时间信息的触发器 (高级)
  • get_trigger_definition -获取完整的触发器SQL定义 (高级)

函数和存储过程

  • list_functions -列出所有用户定义的函数和存储过程 (高级)
  • get_function_definition -获取完整的函数源代码 (高级)

枚举

  • list_enums -列出所有枚举类型——仅限PostgreSQL
  • get_enum_values -获取特定枚举类型的所有可能值——仅限PostgreSQL

列搜索

  • find_column -在所有表中按名称搜索列(支持部分匹配) (高级)

约束

  • list_constraints -列出所有约束(主键、外键、唯一性、检查) (高级)

公用事业

  • generate_id -生成唯一标识符(UUID v1-v7、CUID、CUID2)

用例

此MCP服务器非常适合:

  • 数据库管理 -模式探索和维护任务
  • 数据分析 -借助人工智能查询和分析数据
  • 开发支持 -了解数据库结构和关系
  • 性能调整 -分析查询计划并优化数据库性能
  • 文档 -生成数据库文档和模式
  • 迁移规划 -了解现有数据库结构